Skip to content

AWS production infra: CDK, per-app Dockerfiles, OIDC CD, learn curriculum - #51

Merged
xirothedev merged 3 commits into
mainfrom
feat/aws-production-infra
Sep 1, 2026
Merged

AWS production infra: CDK, per-app Dockerfiles, OIDC CD, learn curriculum#51
xirothedev merged 3 commits into
mainfrom
feat/aws-production-infra

Conversation

@xirothedev

Copy link
Copy Markdown
Owner

What

  • infra/ — AWS CDK v2 (TS): network (VPC/zone/wildcard cert), OIDC deploy roles, CloudFront WAF (us-east-1), prod (Multi-AZ RDS PITR, Redis failover, ECS blue/green via CodeDeploy, $100 budget alarm), lab (api-go/api-axum/api-elysia scale-to-zero 23:00–08:00 ICT, web-vue static on S3+CloudFront)
  • Dockerfiles: api-elysia, api-go, api-axum, web-vue (+ nginx.conf)
  • cd.yml: GHCR/VPS deploy → ECR push (OIDC env build) + cdk deploy --all behind production approval gate
  • learn/aws/ — 6 lessons + LocalStack on xiroserver-lan (scripts/localstack/)
  • api mail: Resend over SMTP via MAIL_HOST/MAIL_PORT
  • CONTEXT-MAP: 6 contexts, glossary (Service/Mirror/Prod stack/Lab stack), ADRs 0005–0007

Checks

  • infra: tsc --noEmit + 9 cdk-assertion tests pass
  • full suite 6/6 packages pass (pre-commit, incl. api 214, api-axum 45, api-elysia 39, web-vue 19)
  • two-axis code review run; blockers fixed (ECS portMappings, OIDC environment claims, cert validation, ADR wording)

Human-only steps after merge

checklist in learn/aws/README.md (AWS account, GitHub envs build/production, NS delegation, cdk bootstrap, fill secrets, Resend, PayOS/OAuth callbacks).

… curriculum

- infra/: CDK v2 app — network (VPC/zone/wildcard cert), OIDC deploy roles,
  CloudFront WAF (us-east-1), prod (Multi-AZ RDS, Redis failover, ECS blue/green,
  budget), lab (mirrors with nightly scale-to-zero, web-vue on S3)
- Dockerfiles for api-elysia, api-go, api-axum, web-vue
- cd.yml: GHCR/VPS replaced by ECR push + OIDC cdk deploy behind production gate
- learn/aws/: 7-lesson curriculum + LocalStack on xiroserver-lan (ADR-0005..0007)
- api mail: Resend over SMTP via MAIL_HOST/MAIL_PORT
…ss-region cert validation

Spec review blockers:
- prod containers now declare portMappings (ECS rejects the service otherwise)
- cd.yml build-push job gets environment: build so the OIDC sub claim matches
  the deploy role condition; roles are now webdev-deploy-build / -production
- CloudFront cert validates via CFN-native DomainValidationOptions
  (DnsValidatedCertificate-free, no pending-manual step)
- lab wake cron comment 07:00 -> 08:00 ICT

Standards cleanup: ADR-0006/0007 reworded to match reality (ECR push, web-vue
Dockerfile LAN-only), edge() returns the listener instead of casting, loop
index for rule priority, no removalPolicy:undefined, prettier+typecheck wired
for infra/** (tests included).
@xirothedev
xirothedev merged commit a1f268b into main Sep 1, 2026
5 checks passed
@xirothedev
xirothedev deleted the feat/aws-production-infra branch September 1, 2026 12:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant