`GITHUB_TOKEN` について
各ワークフロー ジョブの開始時に、GitHub によって、ワークフローで使用する一意の GITHUB_TOKEN シークレットが自動的に作成されます。
GITHUB_TOKEN はワークフロー ジョブでの認証に使用できます。
GitHub Actionsを有効化すると、GitHubはリポジトリにGitHub Appをインストールします。
GITHUB_TOKEN シークレットとは、GitHub App インストール アクセストークンです。 このインストールアクセストークンは、リポジトリにインストールされたGitHub Appの代わりに認証を受けるために利用できます。 このトークンの権限は、ワークフローを含むリポジトリに限定されます。 詳細については、「GitHub Actions のワークフロー構文」を参照してください。
各ジョブが開始される前に、GitHub はジョブのインストール access トークンをフェッチします。
GITHUB_TOKENは、ジョブが終了するか、最大有効期間が経過すると期限切れになります。
トークンの有効な最大有効期間は、ランナーの種類によって異なります。
- GitHub-ホステッド ランナー ジョブの最大実行時間は 6 時間であるため、
GITHUB_TOKENは最大で 6 時間稼働できます。 - セルフホステッド ランナー ジョブの最大実行時間は 5 日です。 ただし、
GITHUB_TOKENはインストール access トークンであるため、更新できるのは最大 24 時間です。 ジョブの実行時間が 24 時間を超える場合は、personal access token または他の認証方法を代わりに使用します。
トークンは、github.token コンテキストでも使用できます。 詳細については、「コンテキスト リファレンス」を参照してください。
`GITHUB_TOKEN` がワークフローの実行をトリガーしたとき
リポジトリの GITHUB_TOKEN を使用してタスクを実行する場合、 GITHUB_TOKEN によってトリガーされるイベントは新しいワークフロー実行を作成しません。ただし、次の例外があります。
workflow_dispatchイベントとrepository_dispatchイベントは常にワークフロー実行を作成します。
その他のすべてのイベントでは、この動作により、再帰的なワークフロー実行が誤って作成されるのを防ぐことができます。 たとえば、ワークフロー実行でリポジトリの GITHUB_TOKEN を使用してコードがプッシュされた場合、push イベントの発生時に実行するように構成されたワークフローがリポジトリに含まれている場合でも、新しいワークフローは実行されません。
GITHUB_TOKEN を使う GitHub Actions ワークフローによってプッシュされたコミットでは、GitHub Pages ビルドがトリガーされません。