🐱

GitHub Actionsでrunの実行タイトルを動的に書き換える

2022/09/27に公開

run-nameの機能追加

GitHub Actionsで実行履歴一覧に表示されるrunのタイトル部分を動的に書き換えることについて、本記事で紹介します。

2022年9月26日にGitHubから機能追加の発表がありました。
https://github.blog/changelog/2022-09-26-github-actions-dynamic-names-for-workflow-runs/

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!を出力するだけの簡単なワークフローで説明します。

sample.yaml
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を使用した場合

sample.yaml
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と組み合わせると、便利そうな印象がありました。
https://zenn.dev/kenpi/articles/af6fb5b4c2675e

environmentsを設定済みの状態で、下記のようなワークフロー(一部省略)を組みます。
手動実行のワークフローです。

deploy.yaml
name: Deploy-Staging-Production

on:
  workflow_dispatch:
    inputs:
      environment:
        type: environment
.
.
.
job:
(略)

手動実行時に、nameに設定した文字列がタイトル部分に表示されていました。

run-nameを使用した場合、下記のようになります。

deploy.yaml
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