GitHub Actionsでrunの実行タイトルを動的に書き換える
run-nameの機能追加
GitHub Actionsで実行履歴一覧に表示されるrunのタイトル部分を動的に書き換えることについて、本記事で紹介します。
2022年9月26日にGitHubから機能追加の発表がありました。
GitHub Actions customers can now dynamically name their workflow runs. The new run-name feature will accept expressions and be displayed on the list of workflow runs.
run-name
属性が新たに追加になり、ワークフロー実行タイトル部分の値を動的に書き換えることができるようになりました。
run-name
公式の使い方はこちら
これまで
以下のhello!
を出力するだけの簡単なワークフローで説明します。
name: echo hello
on:
push:
jobs:
echo-branch:
runs-on: ubuntu-latest
steps:
- run: echo hello!
この場合、pushした後のActions実行後はActionsの一覧画面では下記のような表示になっており、pushイベントではcommitメッセージがActionsの実行履歴のタイトルに表示されるようになっています。また、nameの値は、タイトルの下に(この場合だと)echo hello
と出ています。
run-nameを使用した場合
name: echo hello
run-name: echo by @${{ github.actor }}
on:
push:
jobs:
echo-branch:
runs-on: ubuntu-latest
steps:
- run: echo hello!
下の一行を追加しました。
name: echo hello
+ run-name: echo by @${{ github.actor }}
こちらをpushしてActionsの実行履歴を確認すると、下記のようになっています。
タイトル部分にrun-name
に指定した文字列と、 @${{ github.actor }}
で動的に書き換わるように指定した部分にユーザー名が入っています。
このように、run-nameを指定してあげることで、動的にタイトルの表示を書き換えることができるようになりました。
(番外)GitHub Environmentsとの組み合わせ
以前執筆したGitHub Environmentsと組み合わせると、便利そうな印象がありました。
environmentsを設定済みの状態で、下記のようなワークフロー(一部省略)を組みます。
手動実行のワークフローです。
name: Deploy-Staging-Production
on:
workflow_dispatch:
inputs:
environment:
type: environment
.
.
.
job:
(略)
手動実行時に、nameに設定した文字列がタイトル部分に表示されていました。
run-name
を使用した場合、下記のようになります。
name: Deploy-Staging-Production
on:
workflow_dispatch:
inputs:
environment:
type: environment
run-name: ${{ github.event.inputs.environment }}
.
.
.
job:
(略)
このrun-name
の設定ありでstaging
環境を指定し手動実行してみると、下記のように、environmentで指定されたstaging
の環境名がタイトルに出力されるようになりました。
run-name
を使用すると、どの環境へのワークフローが実行されたのか、一覧画面で瞬時に分かるようになり、とても便利になりますね🎉
以上、GitHub Actionsで機能追加されたrun-name
について紹介しました。GitHub Actionsは機能追加が頻繁に行われているので、引き続きチェックしていきたいです!
Discussion