前提条件
NexusArchitectを使う前に必要な準備(Gitリポジトリ、Issueトラッカーの認証、GitLab Epic機能に関する条件)をまとめます
実際にセッションを通して必要だった前提条件は、次のとおりです。
Gitリポジトリ
- 対象プロジェクトはGitリポジトリである必要があります(まだなければ
git initから始めてください)。 - リモート(GitLabまたはGitHub)にプッシュできる状態であることが必要です。
mainブランチを、最初に一度リモートへpushしておくことが非常に重要です。
Issueトラッカーの認証
glab CLIをインストールし、認証済みにしておいてください(glab auth statusで確認できます)。
gh CLIをインストールし、認証済みにしておいてください(gh auth statusで確認できます)。
NexusArchitectは、内部でこれらのCLIを実行します。Issueの作成・コメント・ラベル操作・MR/PRの作成・マージは、すべてこのCLI経由で行われます。
GitLab Epicのグループ/Premium要件
GitLabには、複数のIssueをまとめて管理するEpic機能(GitLabが標準で用意している機能)があります。ただし、この機能を使うには2つの条件があります。
- プロジェクトが、個人アカウントではなくグループ(複数人・複数プロジェクトをまとめる単位)に所属していること
- そのグループがPremium/Ultimateプラン(GitLabの有料プラン)に加入していること
つまり、個人アカウント(個人ネームスペース)配下のプロジェクトでは、このEpic機能をそのまま使えません。その場合、NexusArchitectは自動的に代わりの方法に切り替えます(この切り替えをフォールバックと呼びます)。具体的には、Epic・Sub-Epic・Issueをすべて通常のIssueとして作成し、type::epic/type::sub-epic/type::issueというラベルで区別します。さらに、親のdescriptionに、子のIssueへのタスクリスト(- [ ] #<iid>)を埋め込みます。
個人アカウントを使う場合は、このラベル+タスクリスト方式で運用されることを前提に計画してください。