親: #206(Sub-issues 参照)
概要
tasks stack に tasks-webapi の ECS Service(Fargate)+ ALB Listener Rule + Task Role を Terraform で構築する(S2Infra-2)。
やること
- ECS Service / Task Definition(platform 共有 ALB への Host-based Listener Rule、ADR-0004 の 2 stack 構成・SSM 疎結合に準拠)
- Task Role: RDS IAM 認証(
rds-db:connect)+ Parameter Store 読取、least privilege・ARN スコープ(Terraform 規約)
- env vars 注入(Spring プロファイル不使用の確定前提)
- ADR-0028 巻き戻し防止 (i)(ii) を実装: Task Definition は
data "aws_ecs_task_definition" / data "aws_ecs_container_definition" で現行稼働 image を注入(初回 apply は var.bootstrap_image placeholder に fallback)。ECS Service の向き先は max(Terraform が作った revision, 稼働中最新 revision)(巻き戻し方向への repoint を構造的に排除)
- IAM 権限は同 PR で追加(Terraform 規約)
受入基準
terraform plan がクリーン、dev に apply 後 ECS Service が起動し ALB 経由で /actuator/health 応答
- RDS 接続が IAM 認証で成功(パスワード未使用)
- env vars のみ変更して再 apply しても稼働イメージが巻き戻らない(ADR-0028)
関連
- infrastructure-plan §6 / ADR-0002(Terraform 構造)/ ADR-0003 / ADR-0004 / ADR-0028 / Terraform 規約
親: #206(Sub-issues 参照)
概要
tasks stack に tasks-webapi の ECS Service(Fargate)+ ALB Listener Rule + Task Role を Terraform で構築する(S2Infra-2)。
やること
rds-db:connect)+ Parameter Store 読取、least privilege・ARN スコープ(Terraform 規約)data "aws_ecs_task_definition"/data "aws_ecs_container_definition"で現行稼働 image を注入(初回 apply はvar.bootstrap_imageplaceholder に fallback)。ECS Service の向き先はmax(Terraform が作った revision, 稼働中最新 revision)(巻き戻し方向への repoint を構造的に排除)受入基準
terraform planがクリーン、dev に apply 後 ECS Service が起動し ALB 経由で/actuator/health応答関連