① GitHub Project 新規作成
新しい Project を作成し、 Field ・ Status ・ View を一括でセットアップします。
✅ 前提
この Workflow を実行する前に、クイックスタートを完了してください。
📖 使い方
Actionsタブを開く① GitHub Project 新規作成を選択Run workflowをクリック- パラメータを入力して実行
⚙️ パラメータ
| パラメータ | 説明 | 必須 | タイプ | 例 |
|---|---|---|---|---|
project_title |
Project のタイトル | ✅ | string |
My Project Board |
visibility |
Project の公開範囲 | ✅ | choice |
PRIVATE(デフォルト) |
公開範囲
| 選択肢 | 説明 |
|---|---|
PRIVATE |
自分のみ閲覧可能 |
PUBLIC |
誰でも閲覧可能 |
📊 処理フロー
flowchart TD
A["workflow_dispatch\n(タイトル・公開範囲)"] --> B{"PAT 形式検証"}
B -- "有効" --> C["create-project Job\nProject を新規作成し project_number を出力"]
B -- "無効/未設定" --> D["ステップスキップ\n(project_number 空)"]
C -- "成功" --> E["extend-project Job\nField・Status・View を一括セットアップ"]
C -- "失敗" --> F["extend-project スキップ"]
D --> F
E --> G{"全体結果判定"}
F --> G
G -- "成功" --> H["workflow-summary-success Job\n成功サマリーを出力"]
G -- "失敗" --> I["workflow-summary-failure Job\n失敗サマリーを出力"]
🔧 Workflow 仕様
ファイル
.github/workflows/01-create-project.yml
トリガー
workflow_dispatch(手動実行)
環境変数
| 環境変数 | ソース | 説明 |
|---|---|---|
GH_TOKEN |
secrets.PROJECT_PAT |
GitHub PAT(Projects 操作権限) |
PROJECT_OWNER |
github.repository_owner |
Project オーナー |
PROJECT_PAT |
secrets.PROJECT_PAT |
PAT 形式検証用(ghp_ または github_pat_ で始まるか検証) |
PROJECT_TITLE |
inputs.project_title |
Project タイトル |
PROJECT_VISIBILITY |
inputs.visibility |
Project 公開範囲 |
Note:
PROJECT_PATが未設定または無効な形式の場合、 PAT を使用するステップはスキップされます。また、project_numberが空の場合は後続のextend-projectJob もスキップされます。
Job 構成
.github/workflows/01-create-project.yml
├── create-project Job
│ └── scripts/setup-github-project.sh # Project 新規作成
├── extend-project Job(成功時)
│ └── _reusable-extend-project.yml # Field・Status・View セットアップ
│ ├── scripts/setup-project-status.sh # カスタム Status 作成
│ ├── scripts/setup-project-fields.sh # カスタム Field 作成
│ └── scripts/setup-project-views.sh # View 作成
├── workflow-summary-failure Job(失敗時)
│ └── .github/actions/workflow-summary # 失敗サマリー出力
└── workflow-summary-success Job(成功時)
└── .github/actions/workflow-summary # 成功サマリー出力
📜 関連スクリプト
- setup-github-project.sh — Project 新規作成スクリプト
- setup-project-status.sh — カスタム Status 作成スクリプト
- setup-project-fields.sh — カスタム Field 作成スクリプト
- setup-project-views.sh — View 作成スクリプト