CLI walkthrough
Progress checklist
Overview
Section titled “Overview”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.
Reading order
Section titled “Reading order”- Install tooling — AWS CLI minimum and demo pin
- Prerequisites — account, profile, Region
- Then the walkthrough pages below
Lab suffix (LAB_SUFFIX)
Section titled “Lab suffix (LAB_SUFFIX)”Every resource name includes a short unique suffix so down only touches this lab run.
| Item | Value |
|---|---|
| Env var | LAB_SUFFIX |
| Used in names | kds-s3-demo-${LAB_SUFFIX}-stream, …-channel, …-role, bucket kds-s3-demo-${LAB_SUFFIX}-${ACCOUNT_ID} |
If unset for demo.sh up | Auto-set to $(date +%Y%m%d%H%M%S) and stored in .lab-state.json |
| Manual CLI pages | You must export it yourself before copying commands |
export AWS_PROFILE=sandboxexport 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: 20260903080512In code samples, $LAB_SUFFIX is that value — not the literal string SUFFIX.
demo.sh cheat sheet
Section titled “demo.sh cheat sheet”export AWS_PROFILE=sandboxexport 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| Subcommand | Mutates? | Notes |
|---|---|---|
up | yes | Sets LAB_SUFFIX if missing; writes .lab-state.json |
status | no | Safe any time |
producer | yes | Always-on heartbeat; start only after channel ACTIVE |
replay | writes to stream | Optional burst; JAR only, no AWS producer resources |
viz | no | Builds branded HTML report; opens browser when available |
down | yes | Confirms by typing the stored LAB_SUFFIX; removes producer too |
Conventions
Section titled “Conventions”| Convention | Value |
|---|---|
| Profile | AWS_PROFILE=sandbox |
| Suffix | LAB_SUFFIX (timestamp or your choice) |
| Name prefix | kds-s3-demo-${LAB_SUFFIX}-… |
| Tag | Project=kinesis-s3-delivery-walkthrough |
| Default Region | ap-southeast-2 |
| AWS CLI | Minimum 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 |