はじめに
Laravel開発では、コードの可読性を保つために Laravel Pint を利用することが一般的です。しかし、開発メンバーが増えると、コードスタイルが統一されていないことが問題になることがあります。
そこで、GitHub Actionを使ってコードフォーマットを自動化する方法 を紹介します。
1. GitHub Actionの設定
GitHubリポジトリの .github/workflows/linter.yml
に、以下の内容を記述します。
linter.yml
の内容
name: Fix Code Style
on: [push]
jobs:
format:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
php: [8.4]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: json, dom, curl, libxml, mbstring
coverage: none
- name: Install Pint
run: composer global require laravel/pint
- name: Run Pint
run: pint
- name: Commit linted files
uses: stefanzweifel/git-auto-commit-action@v5
2. 設定内容の説明
上記のワークフローでは、以下のステップを実行します。
- リポジトリをチェックアウト
actions/checkout@v4
を使ってリポジトリを取得。
- PHP環境のセットアップ
shivammathur/setup-php@v2
を使い、PHP 8.4 をセットアップ。- Laravelでよく使う拡張機能(
json, dom, curl, libxml, mbstring
)を追加。
- Laravel Pintの実行
composer global require laravel/pint
で Pint をインストール。pint
を実行し、コードをフォーマット。
- フォーマット後の変更を自動コミット
stefanzweifel/git-auto-commit-action@v5
を使い、変更されたファイルを自動コミット。
3. 実際の動作
このGitHub Actionをリポジトリに追加すると、コードをプッシュするたびに以下の処理が自動で実行されます。
- LaravelのPHPコードは
Pint
でフォーマット。 - フォーマット後の変更は自動でコミット。
これにより、開発者が手動でフォーマットする手間を削減し、チーム全体で統一されたコードスタイルを維持 できます。
4. まとめ
GitHub Actionsを活用することで、Laravelとフロントエンドのコードフォーマットを自動化できます。特に、チーム開発では コードスタイルの統一 が重要になりますので、ぜひ導入してみてください!