您如何使用此 GitHub Actions 工作流程设置 PHP 版本?

The*_*ebs 4 laravel github-actions

我使用 GitHub Actions 工作流已经有一段时间了:

name: Laravel

on: [push]

jobs:
  laravel-tests:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Copy .env
      run: php -r "file_exists('.env') || copy('.env.example', '.env');"
    - name: Install Dependencies
      run: |
        rm -rf vendor
        composer install
    - name: Generate key
      run: php artisan key:generate
    - name: Link Storage
      run: php artisan storage:link
    - name: Create Database
      run: |
        mkdir -p database
        touch database/database.sqlite
    - name: Execute tests (Unit and Feature tests) via PHPUnit
      env:
        DB_CONNECTION: sqlite
        DB_DATABASE: database/database.sqlite
      run: vendor/bin/phpunit --stop-on-failure
Run Code Online (Sandbox Code Playgroud)

它一直工作到 8.0 出来,然后 composer 爆发了一堆错误,我定期更新的这个和那个包与 8.0 不兼容。

Anywho,我现在需要将其设置为使用 7.4。

我的理解是:

with:
  php-version: '7.4'
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用矩阵,但是我在哪里调用整个“使用这个 php 版本”在这个脚本中使测试针对 7.4 运行?

riQ*_*iQQ 5

使用setup-php操作:

name: Laravel

on: [push]

jobs:
  laravel-tests:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1    
    - name: Setup PHP
      uses: shivammathur/setup-php@v2
      with:
        php-version: 7.4
    - name: Copy .env
      run: php -r "file_exists('.env') || copy('.env.example', '.env');"
    [...]
Run Code Online (Sandbox Code Playgroud)