Note
- 新しいプロジェクト エクスペリエンスである Projects が利用できるようになりました。 Projects の詳細については、「Projects について」を参照してください。
- 新しいプロジェクト (クラシック)は、既に 1 つ以上のプロジェクト (クラシック)を持つ organization、リポジトリ、またはユーザーに対してのみ作成できます。 プロジェクト (クラシック)を作成できない場合は、代わりにプロジェクトを作成します。
Note
GitHub ホステッド ランナーは、現在 GitHub Enterprise Server ではサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。
はじめに
このチュートリアルでは、alex-page/github-project-automation-plus
アクションを使用し、Issue が割り当てられているとき、プロジェクト (クラシック) で特定の列に Issue を自動的に移動する方法について説明します。 たとえば、Issue が割り当てられたら、それを プロジェクト (クラシック) の In Progress
列に移動できます。
チュートリアルでは、alex-page/github-project-automation-plus
アクションを使用するワークフロー ファイルをまず作成します。 次に、ニーズに合わせてワークフローをカスタマイズします。
ワークフローの作成
-
このプロジェクト管理ワークフローを適用したいリポジトリを選択してください。 書き込みアクセス権を持つ既存のリポジトリを利用することも、新しいリポジトリを作成することもできます。 リポジトリの作成について詳しくは、「新しいリポジトリの作成」をご覧ください。
-
リポジトリの プロジェクト (クラシック) を選択します。 既存のプロジェクトを使用することも、新しいプロジェクトを作成することもできます。 プロジェクトの作成に関する詳細については、「project (classic) の作成」を参照してください。
-
リポジトリに
.github/workflows/YOUR_WORKFLOW.yml
というファイルを作成します (YOUR_WORKFLOW
は任意の名前に置き換えます)。 これがワークフローファイルです。 GitHub で新しいファイルを作成する方法について詳しくは、「新しいファイルの作成」を参照してください。 -
次の YAML コンテンツをワークフローファイルにコピーします。
YAML # このワークフローはGitHubによって認定されていないアクションを使用します。 # それらはサードパーティによって提供され、 # 別個の利用規約、プライバシーポリシー、 # ドキュメントを参照してください。 # GitHub では、コミット SHA にアクションをピン留めすることが推奨されます。 # 新しいバージョンを取得するには、SHA を更新する必要があります。 # タグまたはブランチを参照することもできますが、アクションは警告なしに変更される可能性があります。 name: Move assigned card on: issues: types: - assigned jobs: move-assigned-card: runs-on: ubuntu-latest steps: - uses: alex-page/github-project-automation-plus@7ffb872c64bd809d23563a130a0a97d01dfa8f43 with: project: Docs Work column: In Progress repo-token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
# このワークフローはGitHubによって認定されていないアクションを使用します。 # それらはサードパーティによって提供され、 # 別個の利用規約、プライバシーポリシー、 # ドキュメントを参照してください。 # GitHub では、コミット SHA にアクションをピン留めすることが推奨されます。 # 新しいバージョンを取得するには、SHA を更新する必要があります。 # タグまたはブランチを参照することもできますが、アクションは警告なしに変更される可能性があります。 name: Move assigned card on: issues: types: - assigned jobs: move-assigned-card: runs-on: ubuntu-latest steps: - uses: alex-page/github-project-automation-plus@7ffb872c64bd809d23563a130a0a97d01dfa8f43 with: project: Docs Work column: In Progress repo-token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
-
ワークフローファイルのパラメータをカスタマイズします。
project
の値を プロジェクト (クラシック) の名前に変更します。 名前が同じ プロジェクト (クラシック) が複数ある場合、alex-page/github-project-automation-plus
アクションは指定の名前のすべてのプロジェクトで動作します。column
の値を、Issue が割り当てられたときに移動する列の名前に変更します。- 値の
repo-token
を変更します。repo
スコープで personal access token (classic) を作成します。 詳しくは、「個人用アクセス トークンを管理する」を参照してください。- この personal access token を自分のリポジトリにシークレットとして格納します。 シークレットの保管の詳細については、「GitHub Actions でのシークレットの使用」を参照してください。
- ワークフロー ファイルで、
PERSONAL_ACCESS_TOKEN
をシークレットの名前に置き換えます。
-
ワークフローファイルを、リポジトリのデフォルトブランチにコミットしてください。 詳しくは、「新しいファイルの作成」を参照してください。
ワークフローのテスト
リポジトリで Issue が割り当てられるたびに、その Issue は指定された プロジェクト (クラシック) 列に移動されます。 問題が プロジェクト (クラシック) にまだ存在しない場合は、プロジェクト (クラシック) に追加されます。
リポジトリがユーザー所有の場合、alex-page/github-project-automation-plus
アクションは、指定されたプロジェクト名と列を持つリポジトリまたは個人アカウント内のすべてのプロジェクトに対して動作します。 同様に、リポジトリが Organization 所有の場合、アクションは、指定されたプロジェクト名と列を持つリポジトリまたは Organization 内のすべてのプロジェクトに対して動作します。
リポジトリに Issue を割り当てて、ワークフローをテストします。
- リポジトリで Issue をオープンします。 詳しくは、「Issue の作成」を参照してください。
- Issue を割り当てます。 詳しくは、「GitHub の他のユーザに Issue およびプルリクエストをアサインする」を参照してください。
- トリガーされた Issue を割り当てるワークフローの実行を確認するには、ワークフローの実行履歴を表示します。 詳しくは、「ワークフロー実行の履歴を表示する」を参照してください。
- ワークフローが完了したら、割り当てた Issue を指定された プロジェクト (クラシック) 列に追加する必要があります。
次のステップ
- プロジェクト カードの削除やアーカイブなど、
alex-page/github-project-automation-plus
アクションでできる他のことについては、alex-page/github-project-automation-plus
アクション ドキュメントを参照してください。