🦐
GitHub Actionsでテストに使用するPHPのバージョンを指定する
概要
GitHub ActionsでPHPプロジェクトのテストを実行をしようとしたら、
いつの間にかデフォルトバージョンが8.0になってしまっていたので変更方法を調査した。
変更方法
workflowsファイルのstepsで専用のリポジトリに切り替える
# .github/workflows/laravel.yml
jobs:
laravel-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
# これを追記してあげる(extensionの追加もできる)
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '7.3'
extensions: mbstring, gd
- name: Copy .env
run: php -r "file_exists('.env') || copy('.env.github', '.env');"
- name: Install Dependencies
run: composer install -q --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist
- name: Generate key
run: php artisan key:generate
- name: Directory Permissions
run: chmod -R 777 storage bootstrap/cache
- name: Execute Migration & Seed
run: php artisan migrate:refresh --seed --force
- name: Execute tests (Unit and Feature tests) via PHPUnit
run: vendor/bin/phpunit
通常は最新バージョン(2020/12/30時点ではPHP8.0)を利用してしまいますが、こうすることでPHPのバージョン指定ができるようになります。
Discussion