silpion/composer-checker

检查composer配置的工具。

v0.3.0 2014-10-01 11:43 UTC

This package is not auto-updated.

Last update: 2024-09-10 00:23:14 UTC


README

Build Status

Composer Checker

一个简单的工具,用于执行各种与composer相关的检查和验证。

用法

$ php bin/composer-checker

Available commands:
  help         Displays help for a command
  list         Lists commands
check
  check:dist   Matching the dist urls in a composer.lock file against some patterns.
  check:src    Matching the src urls in a composer.lock file against some patterns.
remove
  remove:dist   Removing dist urls from a composer.lock file.
  remove:src    Removing src urls from a composer.lock file.

检查:Dist-Urls

此检查旨在验证composer.lock文件中的dist-urls。当使用Satis镜像作为你的包时,如果在composer.lock文件中使用外部dist-urls,可能会破坏你的ci/deployment。

简单地运行以下命令以检查url "satis.example.com":

$ php bin/composer-checker check:dist -p "satis.example.com" composer.lock
 --- Invalid urls found ---
+-----------------+-----------------------------------------------------------------------------------------------+
| Package         | Dist-URL                                                                                      |
+-----------------+-----------------------------------------------------------------------------------------------+
| symfony/console | https://api.github.com/repos/symfony/Console/zipball/00848d3e13cf512e77c7498c2b3b0192f61f4b18 |
+-----------------+-----------------------------------------------------------------------------------------------+

输出将给出提示,哪些包不符合给定的url模式,这基本上就是一个正则表达式。一个使用更复杂正则表达式的正例

$ php bin/composer-checker check:dist -p "^https://api.github.com/repos/(.+)/(.+)/zipball/([a-f0-9]+)$" composer.lock
All urls valid.

也可以通过以下模式强制使用仅"https"的dist-urls

$ php bin/composer-checker check:dist -p "^https://" composer.lock

可以使用--allow-empty开关允许为空或缺失dist urls。

检查:Source-Urls

与dist urls类似,也可以检查source urls。

$ php bin/composer-checker check:src -p "git@git.example.com/foo.git" composer.lock

可以使用--allow-empty开关允许为空或缺失source urls。

删除:Dist-Urls

此命令将从给定的composer.lock文件中删除分发url。强制composer安装所有包的源代码。

可以使用--except指定特定的模式,如"jquery.com"。这些url将不会被删除。

php bin/composer-checker remove:dist -e jquery.com composer.lock

删除:Source-Urls

remove:dist类似的工作方式。从给定的composer.lock文件中删除"source"条目。

php bin/composer-checker remove:src -e jquery.com composer.lock

此命令在自动化部署中非常有用。因为如果像Satis这样的包镜像,持有"dist"副本,不可用,composer将静默失败回使用"source"包,从而在生产和VCS之间创建一个未注意的依赖关系。从composer.lock文件中删除所有"source"条目,将强制composer仅使用"dist" url或因失败而停止。

LICENSE

许可证可以在以下位置找到:LICENSE