リニューアルされた GitHub Projects のオートメーションを使ってみる

| 2 min read
Author: masahiro-kondo masahiro-kondoの画像

7月にGitHub Projects のオートメーションについて紹介しました。

その後、リニューアルされた Projects について紹介しました。

このリニューアルにより7月の記事のオートメーションは、Classic Projects のオートメーションということになりました。

Classic Projects では、プロジェクト作成時に Automated のテンプレートを選択するぐらいでしたが、リニューアル版では、issue や PR の状態遷移をワークフローとして UI で設定できるようになりました。

Using the built-in automations | GitHub Docs

Projects の右上のメニューから Workflows を選択します。

projectsのメニュー

設定可能なビルトインのワークフローのリストが表示され、デフォルトでは、Item ClosedPull Request merged が有効化されています。

Workflows画面

ワークフローによっては、対象のアイテム (issue, Pull Request) を指定できます。

アイテムの指定

遷移先もカスタマイズできます。

遷移先の指定

現在ベータですが、クローズされた issue をアーカイブするワークフローもビルトインで追加されました[1]

The new GitHub Issues - October 18th update | GitHub Changelog

クローズして30日経過したものをアーカイブする設定を作成してみました。

自動アーカイブ設定

last-updated オペレータで日数を指定します。このオペレータを使用すると、経過日数のチェックで12時間ごとにワークフローが実行されます。

有効化する際、即時にアーカイブされる項目の数とともに確認ダイアログが出ます。

有効化確認

有効化すると Done になっていた issue がごっそりとアーカイブされました。アーカイブされた issue は、メニューの Archived Items から閲覧できます。

Archived Items

Information

上記の例では、islast-updated で設定しましたが、reason オペレータも使えます。

reason 演算子

これは issue をクローズするときの理由に相当します。

Close as

さらに、Graph QL API と GitHub Actions ワークフローを組み合わせて高度なオートメーションを実現することも可能です。

Automating Projects using Actions | GitHub Docs


  1. issue そのものがアーカイブされるわけではなく、プロジェクトのビュー上からアーカイブされます。 ↩︎

豆蔵デベロッパーサイト - 先週のアクセスランキング
  1. 基本から理解するJWTとJWT認証の仕組み (2022-12-08)
  2. AWS認定資格を12個すべて取得したので勉強したことなどをまとめます (2022-12-12)
  3. Nuxt3入門(第4回) - Nuxtのルーティングを理解する (2022-10-09)
  4. Viteベースの高速テスティングフレームワークVitestを使ってみる (2022-12-28)
  5. Nuxt3入門(第8回) - Nuxt3のuseStateでコンポーネント間で状態を共有する (2022-10-28)
  6. ORマッパーのTypeORMをTypeScriptで使う (2022-07-27)
  7. Nuxt3入門(第1回) - Nuxtがサポートするレンダリングモードを理解する (2022-09-25)
  8. Jest再入門 - 関数・モジュールモック編 (2022-07-03)
  9. GitHub Actions - 構成変数(環境変数)が外部設定できるようになったので用途を整理する (2023-01-16)
  10. Nuxt3入門(第7回) - Nuxt3のプラグイン・ミドルウェアを使う (2022-10-23)