Phase 1 Sprint 0 Infra-1: Terraform プロジェクト構造 ADR
概要
AWS IaC を Terraform で構築するにあたり、リポジトリ構造・モジュール分割・環境分離方式を ADR として確定する。infra/docs/adr/0002-terraform-project-structure.md 新規作成。
詳細仕様: docs/architecture/infrastructure-plan.md v5 §3.1(環境別構成図)/ §3.3(リポジトリ構成)/ §6.1 Phase 1 Sprint 0 Infra(Terraform 基盤)。
背景
Phase 1 Sprint 0 〜 Sprint 5 で AWS リソース(VPC / RDS / ECS / ALB / Keycloak Custom / S3+CloudFront / Route53 + ACM 等)を段階的に Terraform で構築する。最初に構造を確定しないと、Sprint 1 以降の Issue が module 分割や環境差異で迷走する。
なお MVP リリース時の対象環境は local + gha + dev のみ(stg / prd は構築せず、Terraform 設計も Post-Sprint-0 に延期。infrastructure-plan v5 §1.3 / §3.1)。
議論ポイント(ADR で記録)
- ディレクトリ構造:
infra/modules/<resource>/ + infra/environments/<env>/ の二層構成
- 環境分離: MVP リリース対象は dev のみ(local + gha + dev、stg / prd は構築せず Post-Sprint-0 に延期 — infrastructure-plan v5 §1.3 / §3.1)。ただし
infra/environments/<env>/ の二層構造は将来の stg / prd 追加を見越して設計する。共通定義は modules で共有
- state ファイル分離: env 毎に独立した state(S0Infra-2 と整合)
- モジュール粒度: VPC / RDS / ECS / ALB / Route53 等を module 単位に。共通 module(network 等)はネスト可
- provider バージョン管理:
versions.tf で AWS provider / Terraform 本体の制約明示
- 命名規約: リソース名・タグ・モジュール名のルール
受入条件
関連
備考
- task-type:
task-type:design
- 優先度:
priority/p0
- area:
area/infra
- claude-automation 推奨: 議論先行
Phase 1 Sprint 0 Infra-1: Terraform プロジェクト構造 ADR
概要
AWS IaC を Terraform で構築するにあたり、リポジトリ構造・モジュール分割・環境分離方式を ADR として確定する。
infra/docs/adr/0002-terraform-project-structure.md新規作成。詳細仕様:
docs/architecture/infrastructure-plan.mdv5 §3.1(環境別構成図)/ §3.3(リポジトリ構成)/ §6.1 Phase 1 Sprint 0 Infra(Terraform 基盤)。背景
Phase 1 Sprint 0 〜 Sprint 5 で AWS リソース(VPC / RDS / ECS / ALB / Keycloak Custom / S3+CloudFront / Route53 + ACM 等)を段階的に Terraform で構築する。最初に構造を確定しないと、Sprint 1 以降の Issue が module 分割や環境差異で迷走する。
なお MVP リリース時の対象環境は local + gha + dev のみ(stg / prd は構築せず、Terraform 設計も Post-Sprint-0 に延期。infrastructure-plan v5 §1.3 / §3.1)。
議論ポイント(ADR で記録)
infra/modules/<resource>/+infra/environments/<env>/の二層構成infra/environments/<env>/の二層構造は将来の stg / prd 追加を見越して設計する。共通定義は modules で共有versions.tfで AWS provider / Terraform 本体の制約明示受入条件
infra/docs/adr/0002-terraform-project-structure.mdが Accepted ステータスで存在infra/environments/<env>/+infra/modules/の二層、Sprint 0 は dev のみ・per-concern 5 module 限定)が ADR §3 / §6 に明記されている。※空 module ディレクトリは先に作らない決定(ADR §3 D)のため、実ディレクトリの生成は S0Infra-2 / S0Infra-4〜8 の各実装 Issue が担当(本 Issue のスコープ外)関連
Phase 1(due 2026-10-30)infra/docs/adr/0001-private-dns-for-rds.md)備考
task-type:designpriority/p0area/infra