Saltar a contenido

Setup AWS

Cuenta y región

Item Valor
Account ID 450972188274
Cuenta canónica ze-dev
Región principal us-east-2 (Ohio)
Región ACM/edge us-east-1 (CloudFront requiere certs aquí)
Prefijo de recursos zen-{env}-*
Tag obligatorio Project=zengine-v2

Tags obligatorios

Todo recurso provisionado por Terraform incluye:

tags = {
  Project           = "zengine-v2"
  Environment       = "dev"                  # dev | qa | prod
  Tenant            = "shared"               # o "control-plane" o <id>
  Service           = "flow-engine"          # bounded context
  CostCenter        = "platform"
  DataClassification = "internal"            # public | internal | confidential
  ManagedBy         = "terraform"
}

OIDC y rol de deploy

GitHub Actions asume vía OIDC (sin secrets de AWS):

arn:aws:iam::450972188274:role/zen-dev-github-deployer

Trust policy restringida a:

  • repo:zerviz/zengine-platform:ref:refs/heads/main (cd-dev).
  • repo:zerviz/zengine-platform:pull_request (CI con permisos read-only).

Provisión en infra/global/oidc.tf (no en envs/dev).

KMS CMK

  • Alias: alias/zen-dev-platform.
  • Uso: DDB, S3 (buckets de logs/state), Secrets Manager, CloudWatch Logs.
  • Rotación: anual automática.

Ver ADR-0010.

Backend Terraform

bucket:         zen-terraform-state-dev-450972188274
locks (DDB):    zen-terraform-locks-dev
state per env:  s3://.../envs/dev/terraform.tfstate

Bootstrap aplicado en Fase 2 (2026-05-13).

Recursos vivos clave (dev)

Recurso Nombre / ID
DDB tenants zen-dev-tenants
DDB flow-state zen-dev-flow-state
DDB dedup zen-dev-dedup
EventBridge bus zen-dev-domain-events
Cognito user pool us-east-2_iv0sPC5lo (zen-dev-app-users)
Cognito client SPA 4mr4vrvcvklm81m8gp2mb2eb72
Cognito domain zen-dev-auth.auth.us-east-2.amazoncognito.com
ECR repos zen-dev-{tenant-mgmt,auth-bff,...,event-publisher} (11)

Aplicar Terraform manual (sólo emergencias)

CI/CD aplica automáticamente. Sólo para casos puntuales:

aws sso login --profile zen-dev
export AWS_PROFILE=zen-dev

cd infra/envs/dev
terraform init
terraform plan
terraform apply

Si modificas state manual, avisar al equipo antes para evitar conflictos con CI.

Costos esperados (dev)

Snapshot mensual aproximado en dev (carga sintética):

Servicio USD/mes
Lambda < 10
API Gateway HTTP < 5
DynamoDB on-demand < 15
CloudFront + S3 < 5
Cognito gratuito (< 50k MAU)
CloudWatch Logs 10–20
Total dev < 60

qa y prod se dimensionarán al cruzar esos envs.