これはGithub Web UIに表示されます。
しかし、無効にされた再実行が.github/main.workflow
構成の結果なのか、Githubアクションサービスから継承されたのかははっきりしません。
以下のサンプルワークフロー-再実行を無効にするような明らかなものはありません。
workflow "Test, Lint" {
on = "Push"
resolves = [
"Test",
"Lint",
"Lint Format"
]
}
action "Install" {
uses = "actions/npm@master"
args = "install"
secrets = ["SECRET_TOKEN"]
}
action "Test" {
needs = "Install"
uses = "actions/npm@master"
args = "test"
secrets = ["SECRET_TOKEN"]
}
action "Lint" {
needs = "Install"
uses = "actions/npm@master"
args = "run lint"
secrets = ["SECRET_TOKEN"]
}
action "Lint Format" {
needs = "Install"
uses = "actions/npm@master"
args = "run lint:format"
secrets = ["SECRET_TOKEN"]
}
2つの状況があります。
1)失敗したビルドの場合 docs
必要に応じて、実行が失敗した場合、ワークフローを再実行するには、ワークフローの右上隅で、再実行チェックドロップダウンを使用しますダウンメニューからを選択し、すべてのチェックを再実行します。
2)実行が失敗しなかった場合、ワークフローが実行するイベントをトリガーする必要がありますon:
。
on: Push
の最も一般的なケースでは、空のコミットを追加してGitHubアクションをポークできます。
git commit --allow-empty -m "trigger GitHub actions"
git Push
これにより空のコミットが追加され(ファイルは変更されません)、GitHubで別のPush
イベントがトリガーされるため、別のワークフローの実行がトリガーされます。
ただし、これはコミット履歴を汚してしまいます。必要に応じて、後でこれらをスカッシュ/削除できますが、おそらく理想的ではありません。
これは、2019年8月のYAMLベースの再リリースに先立って、GitHub Actions HCLベースのv1に言及していた私の元の回答に対する更新です。 @tuffが最初にこれを正しく行い、@ instantepiphanyの警告がありました。
また、(2020年1月)新しいGitHub Actions API(!、まだベータ版です)を-として使用することもできます。 こちらで発表 。
そして GitHub Actions Secrets API が含まれています:
ワークフローを再実行する
IDを使用してワークフロー実行を再実行します。
リポジトリへの書き込みアクセス権を持つ誰もがこのエンドポイントを使用できます。
GitHubアプリには、このエンドポイントを使用するためのアクション権限が必要です。POST /repos/:owner/:repo/actions/runs/:run_id/rerun
したがって、スクリプトを作成して、この新しいAPIを通じてアクションワークフローを再実行できます。
以下のセルフプラグ。
私の相棒と私は非常にシンプルなGitHubアプリを一緒に投げて、UIからリポジトリディスパッチをトリガーできるようにしました。再実行ほど対象範囲は広くありませんが、ワークフローをトリガーする方法を提供します。
これにより、空のコミットなどを行う必要がなくなります。