リニューアルされた 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. ChatGPTのベースになった自然言語処理モデル「Transformer」を調べていたら「Hugging Face」に行き着いた (2023-03-20)
  2. ChatGPTに自然言語処理モデル「GPT2-Japanese」の使用方法を聞きながら実装したら想像以上に優秀だった件 (2023-03-22)
  3. 基本から理解するJWTとJWT認証の仕組み (2022-12-08)
  4. AWS認定資格を12個すべて取得したので勉強したことなどをまとめます (2022-12-12)
  5. 自然言語処理初心者が「GPT2-japanese」で遊んでみた (2022-07-08)
  6. Nuxt3入門(第8回) - Nuxt3のuseStateでコンポーネント間で状態を共有する (2022-10-28)
  7. Nuxt3入門(第4回) - Nuxtのルーティングを理解する (2022-10-09)
  8. 直感が理性に大反抗!「モンティ・ホール問題」 (2022-07-04)
  9. Nuxt3入門(第1回) - Nuxtがサポートするレンダリングモードを理解する (2022-09-25)
  10. ORマッパーのTypeORMをTypeScriptで使う (2022-07-27)