2024/02/20
GitHub Actionsのeslintでbunを使う
Next.jsのプロジェクトでeslintを自動で実行するために、GitHub Actionsでeslintをbunで動かす。
GitHub Actionsとは
公式サイト より引用
GitHub Actionsを使用すると、ワールドクラスのCI / CDですべてのソフトウェアワークフローを簡単に自動化できます。 GitHubから直接コードをビルド、テスト、デプロイでき、コードレビュー、ブランチ管理、問題のトリアージを希望どおりに機能させます。
ようは、自動でテストなりデプロイなりを自動で行えるツールってことです。
より詳しい情報はドキュメントに書いてあります。
どうやる
リポジトリに.github/workflowsというディレクトリを作成して、その中にymlを配置する形です。
GitHubのリポジトリのActionsタブからも設定できます。
今回はそのeslintのテンプレートとbunのドキュメントを参考にしました。
実際のyamlファイルは以下の通りです。
name: ESLint
on:
push:
branches: ['main']
pull_request:
branches: ['main']
jobs:
eslint:
name: Run eslint scanning
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
actions: read
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup Bun
uses: oven-sh/setup-bun@v1
with:
bun-version: latest
- name: Install Packages
run: bun install
- name: Run ESLint
run: bun run lintこれは、mainブランチのpushとmainブランチに対してのプルリクで実行されます。
jobsの中でインストールするのはeslintだけでもいいのですが、pluginを入れているかつ、
Next.jsを使っていてnext lintを使いたいということで、どうせなら全部インストールしちゃいました。
最後に
実際の導入していたプロジェクトはこのようになっています。
このようにすることで、プルリクが来ても自分でチェックする箇所が減っていいですね。
最終更新日:2026/01/20