Skip to content

Pulumi — def-exsport-pulumi

AWS infrastructure as code. Each stack is its own Pulumi project under stacks/.

How this page was verified

Read on 2026-09-15 from stacks/*/Pulumi.yaml, stacks/*/index.ts and stacks/*/src/*.ts. Local checkout: /Volumes/xpro/erisristemena/pulumi/def-exsport-pulumi. Single-branch: main only.

Stack

Pulumi, TypeScript, @pulumi/aws + @pulumi/awsx, nodejs runtime (npm; the webhook stack uses yarn). There is no root Pulumi.yaml — every stack is a separate project.

The seven stacks

Stack dirPulumi projectAWS resources
webappexsport-webappThe main tier: VPC; ECS cluster + 4 services + 4 task definitions; ALB with listeners, rules, 4 target groups; RDS instance; ElastiCache (Redis); autoscaling; CloudWatch log groups; IAM; a bastion EC2
webhookexsport (yarn)SNS — 3 topics + 3 subscriptions (WMS / delivery / payment), matching the webhook repo
repoexsport-repoECR — 4 repositories + lifecycle policies
storageexsport-storageS3 — bucket + ACL, ownership, policy, public-access block, versioning
paramsexsport-paramsSSM parameters (SMTP config and the like)
certexsport-certACM certificate
webapp-ec2exsport-webapp-ec2An EC2-based deployment variant: VPC, 6 instances + security groups, EIP, key pair

Per-env config is in Pulumi.<env>.yaml files (dev / stg / prod, varying by stack). The README only documents four stacks (repo, storage, webapp, webhook); cert, params and webapp-ec2 exist on disk too.

Note

This AWS setup (ECS/ALB/RDS) is not the same as the serving hosts the apps currently run on — see Environments. Read the stack before assuming it is the live path.