Dependabot で secrets を使用するワークフローを実行する方法
Dependabot によってプルリクエストが作成された際に secrets を使用したワークフローが失敗してしまうときの対処法についてまとめる。
❌ secrets を使用したワークフローが失敗する
先日、chromatic を GitHub Actions で実行するようなワークフローを追加しました。
自分で変更を加え、プッシュをした際やプルリクエストを作成した際に chromatic のワークフローが実行されることは確認していたのですが、Dependabot によってプルリクエストが作成された際にワークフローが失敗してしまいました。
実際に表示されたエラーメッセージを確認すると、chromatic にデプロイを実行する際に必要なトークンが取得できていないことが分かります。
✖ Missing project token
Sign in to https://www.chromatic.com/start and create a new project,
or find your project token on the Manage screen in an existing project.
Set your project token as the CHROMATIC_PROJECT_TOKEN environment variable
or pass the --project-token command line option.
しかし、GitHub の secrets に CHROMATIC_PROJECT_TOKEN というトークン保存しているため、トークンを読み込めないという事象に戸惑いました。
調査を進める中で Dependabot は actions に設定されている secrets を読み込むことができないということがわかりました。
✅ 解決策
Dependabot secrets を使用することで解決することができます。
次の画像を参考に Settings の Security から Secrets and variables へアクセスし、「New repository secret」というボタンを押下することで chromatic の実行時に必要なトークンを設定することができます。
設定することができたら、失敗した chromatic のワークフローを再実行し、無事に成功することを確認します。