GitHub 操作 - Composer 由于 PHP 版本限制而失败
GitHub Actions - Composer failing because of PHP Version constraint
我正在尝试通过 GitHub 对 pull_request 的操作将我的单元测试 运行。
当我更新我的 PR 时,我可以看到 运行ning 的操作,但是 PHP 版本在它尝试 composer install 我的项目时没有更新。
Command: composer install --no-interaction --no-suggest --no-progress
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- This package requires php ~7.3.0 but your PHP version (7.4.10) does not satisfy that requirement.
我已经尝试了多个不同的工作流文件,这是给了我最多控制权的文件,但它似乎仍然 运行ning 在 php 7.4 上。
name: Run Tests
on:
pull_request:
branches:
- master
jobs:
build:
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [ubuntu-latest]
php-versions: ['7.3']
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
- uses: php-actions/composer@v2
- uses: php-actions/phpunit@v8
最后,这是来自我的作曲家 json 的显示约束的片段:
"require": {
"php": "~7.3.0",
"guzzlehttp/guzzle": "^7.0"
},
"require-dev": {
"phpunit/phpunit": "^8"
}
您可以通过添加 .github/workflows/YOURACTION.yaml
来为作曲家操作强制使用 PHP 版本
- name: Build Composer
uses: php-actions/composer@v5
with:
ssh_key: ${{ secrets.ssh_key }}
ssh_key_pub: ${{ secrets.ssh_key_pub }}
php_version: 7.2
注意我是在 Composer 步骤而不是 shivammathur/setup-php@v2
尝试一起删除此步骤,您可能根本不需要它。
在此处查看更多信息:https://github.com/marketplace/actions/composer-php-actions
我正在尝试通过 GitHub 对 pull_request 的操作将我的单元测试 运行。
当我更新我的 PR 时,我可以看到 运行ning 的操作,但是 PHP 版本在它尝试 composer install 我的项目时没有更新。
Command: composer install --no-interaction --no-suggest --no-progress
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- This package requires php ~7.3.0 but your PHP version (7.4.10) does not satisfy that requirement.
我已经尝试了多个不同的工作流文件,这是给了我最多控制权的文件,但它似乎仍然 运行ning 在 php 7.4 上。
name: Run Tests
on:
pull_request:
branches:
- master
jobs:
build:
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [ubuntu-latest]
php-versions: ['7.3']
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
- uses: php-actions/composer@v2
- uses: php-actions/phpunit@v8
最后,这是来自我的作曲家 json 的显示约束的片段:
"require": {
"php": "~7.3.0",
"guzzlehttp/guzzle": "^7.0"
},
"require-dev": {
"phpunit/phpunit": "^8"
}
您可以通过添加 .github/workflows/YOURACTION.yaml
来为作曲家操作强制使用 PHP 版本 - name: Build Composer
uses: php-actions/composer@v5
with:
ssh_key: ${{ secrets.ssh_key }}
ssh_key_pub: ${{ secrets.ssh_key_pub }}
php_version: 7.2
注意我是在 Composer 步骤而不是 shivammathur/setup-php@v2 尝试一起删除此步骤,您可能根本不需要它。
在此处查看更多信息:https://github.com/marketplace/actions/composer-php-actions