Skip to content

CLI walkthrough

Progress checklist

Work the pages in order. Each page shows the AWS CLI first, then the matching scripts/demo.sh subcommand. The script echoes every command before it runs — it teaches, it does not hide.

  1. Install tooling — AWS CLI minimum and demo pin
  2. Prerequisites — account, profile, Region
  3. Then the walkthrough pages below

Every resource name includes a short unique suffix so down only touches this lab run.

ItemValue
Env varLAB_SUFFIX
Used in nameskds-s3-demo-${LAB_SUFFIX}-stream, …-channel, …-role, bucket kds-s3-demo-${LAB_SUFFIX}-${ACCOUNT_ID}
If unset for demo.sh upAuto-set to $(date +%Y%m%d%H%M%S) and stored in .lab-state.json
Manual CLI pagesYou must export it yourself before copying commands
Terminal window
export AWS_PROFILE=sandbox
export AWS_REGION=ap-southeast-2
# pick one durable value for this run, or generate:
export LAB_SUFFIX=$(date +%Y%m%d%H%M%S)
# example result: 20260903080512

In code samples, $LAB_SUFFIX is that value — not the literal string SUFFIX.

Terminal window
export AWS_PROFILE=sandbox
export AWS_REGION=ap-southeast-2
# optional — omit to let up generate one:
# export LAB_SUFFIX=$(date +%Y%m%d%H%M%S)
./scripts/demo.sh up # bucket, stream, role, channel → ACTIVE
./scripts/demo.sh status # read-only
./scripts/demo.sh producer # always-on EventBridge → Lambda PutRecord
./scripts/demo.sh replay # optional high-volume burst (-streamArn)
./scripts/demo.sh viz # HTML delivery report → .lab/viz/report.html
./scripts/demo.sh down # asks you to type LAB_SUFFIX to confirm
SubcommandMutates?Notes
upyesSets LAB_SUFFIX if missing; writes .lab-state.json
statusnoSafe any time
produceryesAlways-on heartbeat; start only after channel ACTIVE
replaywrites to streamOptional burst; JAR only, no AWS producer resources
viznoBuilds branded HTML report; opens browser when available
downyesConfirms by typing the stored LAB_SUFFIX; removes producer too
ConventionValue
ProfileAWS_PROFILE=sandbox
SuffixLAB_SUFFIX (timestamp or your choice)
Name prefixkds-s3-demo-${LAB_SUFFIX}-…
TagProject=kinesis-s3-delivery-walkthrough
Default Regionap-southeast-2
AWS CLIMinimum 2.36.35, demo pin 2.36.38
Local artifacts.lab/ (gitignored) — policy JSON, channel config, producer zip, replay clone, viz report
Lab state.lab-state.json (gitignored) — written by demo.sh