zalas / toolbox
帮助发现和安装工具
v1.84.0
2024-08-05 20:43 UTC
Requires
- php: ~8.1.0 || ~8.2.0 || ~8.3.0
- psr/container: ^2.0
- symfony/console: ^5.4.31 || ^6.3
Requires (Dev)
- infection/infection: ^0.27
- phpunit/phpunit: ^10.4
- zalas/phpunit-globals: ^3.2
- dev-master / 1.x-dev
- v1.84.0
- v1.83.2
- v1.83.1
- v1.83.0
- v1.82.1
- v1.82.0
- v1.81.0
- v1.80.3
- v1.80.2
- v1.80.1
- v1.80.0
- v1.79.1
- v1.79.0
- v1.78.0
- v1.77.1
- v1.77.0
- v1.76.1
- v1.76.0
- v1.75.1
- v1.75.0
- v1.74.0
- v1.73.0
- v1.72.0
- v1.71.2
- v1.71.1
- v1.71.0
- v1.70.0
- v1.69.0
- v1.68.1
- v1.68.0
- v1.67.1
- v1.67.0
- v1.66.0
- v1.65.3
- v1.65.2
- v1.65.1
- v1.65.0
- v1.64.0
- v1.63.1
- v1.63.0
- v1.62.0
- v1.61.0
- v1.60.0
- v1.59.0
- v1.58.0
- v1.57.0
- v1.56.0
- v1.55.1
- v1.55.0
- v1.54.2
- v1.54.1
- v1.54.0
- v1.53.0
- v1.52.0
- v1.51.1
- v1.51.0
- v1.50.2
- v1.50.1
- v1.50.0
- v1.49.0
- v1.48.0
- v1.47.1
- v1.47.0
- v1.46.1
- v1.46.0
- v1.45.5
- v1.45.4
- v1.45.3
- v1.45.2
- v1.45.1
- v1.45.0
- v1.44.0
- v1.43.1
- v1.43.0
- v1.42.0
- v1.41.0
- v1.40.1
- v1.40.0
- v1.39.1
- v1.39.0
- v1.38.0
- v1.37.0
- v1.36.0
- v1.35.1
- v1.35.0
- v1.34.0
- V1.33.1
- v1.33.0
- v1.32.0
- v1.31.1
- v1.31.0
- v1.30.0
- v1.29.1
- v1.29.0
- v1.28.0
- v1.27.9
- v1.27.8
- v1.27.7
- v1.27.6
- v1.27.5
- v1.27.4
- v1.27.3
- v1.27.2
- v1.27.1
- v1.27.0
- v1.26.1
- v1.26.0
- v1.25.0
- v1.24.2
- v1.24.1
- v1.24.0
- v1.23.3
- v1.23.2
- v1.23.1
- v1.23.0
- v1.22.1
- v1.22.0
- v1.21.0
- v1.20.1
- v1.20.0
- v1.19.1
- v1.19.0
- v1.18.1
- v1.18.0
- v1.17.2
- v1.17.1
- v1.17.0
- v1.16.2
- v1.16.1
- v1.16.0
- v1.15.3
- v1.15.2
- v1.15.1
- v1.15.0
- v1.14.1
- v1.14.0
- v1.13.1
- v1.13.0
- v1.12.0
- v1.11.0
- v1.10.3
- v1.10.2
- v1.10.1
- v1.10.0
- v1.9.2
- v1.9.1
- v1.9.0
- v1.8.1
- v1.8.0
- v1.7.2
- v1.7.1
- v1.7.0
- v1.6.9
- v1.6.8
- v1.6.7
- v1.6.6
- v1.6.5
- v1.6.4
- v1.6.3
- v1.6.2
- v1.6.1
- v1.6.0
- v1.5.5
- v1.5.4
- v1.5.3
- v1.5.2
- v1.5.1
- v1.5.0
- v1.4.7
- v1.4.6
- v1.4.5
- v1.4.4
- v1.4.3
- v1.4.2
- v1.4.1
- v1.4.0
- v1.3.0
- v1.2.6
- v1.2.5
- v1.2.4
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.0
- v1.0.0
- v0.5.0
- v0.4.0
- v0.3.0
- v0.2.0
- v0.1.0
- v0.0.2
- v0.0.1
- dev-dependabot/github_actions/dot-github/workflows/actions/download-artifact-4.1.7
This package is auto-updated.
Last update: 2024-09-03 21:01:51 UTC
README
帮助发现和安装工具。
用例
Toolbox 始于一个简单的脚本,在phpqa docker镜像中。它的目的是在构建docker镜像时安装一系列工具,这仍然是它的主要目标。为了简化维护并启用新的用例,它已被提取为独立的项目。
可用工具
已移除工具
安装
从最新版本获取toolbox.phar
。以下命令应该可以完成任务
curl -Ls https://github.com/jakzal/toolbox/releases/latest/download/toolbox.phar -o toolbox && chmod +x toolbox
用法
列出可用工具
./toolbox list-tools
按标签筛选工具
要排除某些工具的列表,可以添加多个--exclude-tag
选项。可以使用--tag
选项按标签筛选工具。
./toolbox list-tools --exclude-tag exclude-php:8.2 --exclude-tag foo --tag bar
安装工具
./toolbox install
在自定义目录中安装工具
默认情况下,工具安装在/usr/local/bin
目录中。要在其他位置执行安装,请将--target-dir
选项传递给install
命令。另外,要更改composer包安装的位置,请导出COMPOSER_HOME
环境变量。
mkdir /tools
export COMPOSER_HOME=/tools/.composer
export PATH="/tools:$COMPOSER_HOME/vendor/bin:$PATH"
./toolbox install --target-dir /tools
目标目录也可以使用TOOLBOX_TARGET_DIR
环境变量配置。
试运行
要仅查看将要执行的命令,请使用试运行模式
./toolbox install --dry-run
按标签筛选工具
要排除某些工具的安装,可以添加多个--exclude-tag
选项。可以使用--tag
选项按标签筛选工具。
./toolbox install --exclude-tag exclude-php:8.2 --exclude-tag foo --tag bar
测试已安装的工具是否可用
./toolbox test
试运行
要仅查看将要执行的命令,请使用试运行模式
./toolbox test --dry-run
按标签筛选工具
要排除某些工具的测试命令,可以添加多个--exclude-tag
选项。可以使用--tag
选项按标签筛选工具。
./toolbox test --exclude-tag exclude-php:8.2 --exclude-tag foo --tag bar
工具定义
默认情况下,以下文件用于加载工具定义
resources/pre-installation.json
resources/architecture.json
resources/checkstyle.json
resources/compatibility.json
resources/composer.json
resources/deprecation.json
resources/documentation.json
resources/linting.json
resources/metrics.json
resources/phpstan.json
resources/psalm.json
resources/refactoring.json
resources/security.json
resources/test.json
resources/tools.json
可以通过传递--tools
选项(复数)从自定义文件加载定义
./toolbox list-tools --tools path/to/file1.json --tools path/to/file2.json
工具定义位置也可以通过TOOLBOX_JSON
环境变量指定
TOOLBOX_JSON='path/to/file1.json,path/to/file2.json' ./toolbox list-tools
工具标签
可以通过标签对工具进行分组和筛选。
以下标签具有特殊含义
pre-installation
- 这些工具将在安装其他任何工具之前安装。exclude-php:8.1
、exclude-php:8.2
等 - 用于排除在指定PHP版本上的安装。