Skip to main content

Web Deployment

Deployment

Pushing to main triggers CodeBuild (statux-prod-codebuild-web), or deploy locally (faster + free):

cd statux-web

# Landing (statux.io)
aws s3 sync landing/ s3://statux-landing-prod --delete --exclude "shared/*" --exclude "docs/*"
aws s3 sync shared/ s3://statux-landing-prod/shared/
aws cloudfront create-invalidation --distribution-id EVHSVR55HETJY --paths "/*"

# Statux Pages (statuspage.statux.io)
aws s3 sync statuspages/ s3://statux-statuspage-web-prod --delete --exclude "shared/*"
aws s3 sync shared/ s3://statux-statuspage-web-prod/shared/
aws cloudfront create-invalidation --distribution-id E2SIXSFPDDG7V1 --paths "/*"

# Alerting (alerts.statux.io)
aws s3 sync alerting/ s3://statux-alerts-web-prod --delete --exclude "shared/*"
aws s3 sync shared/ s3://statux-alerts-web-prod/shared/
aws cloudfront create-invalidation --distribution-id E3Q0DZM3NF5A2B --paths "/*"

# Synthetics (synthetics.statux.io)
aws s3 sync synthetics/ s3://statux-synthetics-web-prod --delete --exclude "shared/*"
aws s3 sync shared/ s3://statux-synthetics-web-prod/shared/
aws cloudfront create-invalidation --distribution-id E3VIOK3AWE1I1T --paths "/*"

CloudFront Distribution IDs

SiteBucketCloudFront ID
Landingstatux-landing-prodEVHSVR55HETJY
Pagesstatux-statuspage-web-prodE2SIXSFPDDG7V1
Alertsstatux-alerts-web-prodE3Q0DZM3NF5A2B
Syntheticsstatux-synthetics-web-prodE3VIOK3AWE1I1T

Important Notes

  • Never sync the repo root (.) to any bucket
  • Landing bucket shares with docs — always use --exclude "docs/*"
  • Always sync shared/ to all four buckets