Skip to content

Make targets

The root Makefile is the single entry point for every workflow (D15); each target wraps a script under scripts/. This page is regenerated from make help on every docs build, so it never drifts.

  help           Show this help (default target)
  build          Sync Python workspace (uv) and build all TS packages (pnpm -r build)
  test           Hermetic unit + integration tests only (pytest + vitest, no network)
  ci             Full hermetic CI gate (scripts/ci.sh): tests, drift, gates, docs, synth
  e2e            E2E beta lane against the live beta endpoint (HTTPS only, no creds)
  e2e-live       E2E live-aws lane: real spz launch/exec/down (needs AWS creds)
  ui-test        Playwright UI tests against the beta website (Node >= 20)
  live-smoke     Launch + terminate one real t3.micro, assert zero residue (needs creds)
  beta-smoke     Curl the deployed beta API + docs site (post-deploy check)
  synth          cdk synth the full pipeline app (builds lambda bundle + docs first)
  push-pipeline  Snapshot-push committed HEAD to CodeCommit 'skypurza' main — the pipeline does the rest
  deploy-pipeline Deploy the SkypurzaPipeline stack itself (first-time / recovery; it self-mutates afterwards)
  deploy-direct  EMERGENCY: local cdk deploy of all beta stacks, bypassing the pipeline (owner-authorized only); DRY_RUN=1 synths only
  deploy-beta    Deploy beta Dns + Broker stacks (PROFILE=swhdev by default)
  deploy-ops     Deploy beta Ops stack: canary + release-health alarm (PROFILE=swhdev)
  docs-build     Build the MkDocs site into site/ (generates make-targets page)
  docs-serve     Serve the docs site locally with live reload (http://127.0.0.1:8000)
  docs-deploy    Build docs + deploy beta Dns + Docs stacks (PROFILE=swhdev)
  clean          Remove build artifacts (site/, cdk.out, dist, lambda bundle, caches)

Deploy targets export AWS_PROFILE from the PROFILE variable (default swhdev, override with make deploy-beta PROFILE=...). build, test, and ci are hermetic: no credentials, no AWS calls.