Useful Commands — Operator

The wbsp-platform commands an operator uses, with examples. Each command is explained in the Platform Operator Guide. Developers deploying applications use wbsp instead (see Useful commands).

Every command takes --platform <name> to say which platform it acts on. acme is the example name throughout. wbsp-platform installs use acme makes it the default, so you can leave --platform off.

Set up and bring up

export AWS_PROFILE=<named profile for the account>
wbsp-platform aws-policy --platform --cluster acme --output acme-build-policy.json   # the permissions the build needs
wbsp-platform setup acme --domain apps.example.com      # guided; safe to re-run
wbsp-platform setup acme --domain apps.example.com --email you@example.com --registrar namecheap --region ap-southeast-2
wbsp-platform up --platform acme                        # 30–40 minutes; re-run after any interruption
wbsp login --platform acme                              # sign in (the developer tool)

Point developers and your shell at the platform

wbsp platform import --install acme                     # on the machine that ran setup
wbsp platform add acme --base-domain apps.example.com --tenant <platform-tenant>   # anywhere else
eval "$(wbsp-platform env --platform acme)"             # this shell's wbsp commands go to acme

Check and inspect

wbsp-platform health --platform acme
wbsp-platform health --platform acme --verbose          # each check's progress
wbsp-platform health --platform acme --json

wbsp-platform inventory --platform acme                 # everything the platform runs
wbsp-platform inventory --platform acme --tenant sales
wbsp-platform inventory --platform acme --aws           # every AWS asset it made
wbsp-platform inventory --platform acme --aws --tag-missing

wbsp-platform diagram landscape.txt --platform acme     # whole-landscape description, no secrets

wbsp-platform stores --tenant sales                     # a tenant's Redis stores and who uses each

Clean up leftovers

wbsp-platform cleanup --platform acme                   # scan only (the default)
wbsp-platform cleanup --platform acme --mode interactive   # confirm each one
wbsp-platform cleanup --platform acme --mode force      # remove every leftover

Sign-in services

wbsp-platform identity list --platform acme
wbsp-platform identity add clientb-hap --base-url https://hap.clientb.com --admin-key-file ./clientb-admin.key --platform acme
wbsp-platform identity remove clientb-hap --platform acme
wbsp-platform api spec --platform acme                  # then run the deploy command it prints

Install homes

wbsp-platform installs                                  # every install home on this machine
wbsp-platform installs use acme                         # the default platform
wbsp-platform installs fetch acme                       # rebuild a home from the AWS account (no secrets)

AWS permissions

wbsp-platform aws-policy --cluster acme --status        # read-only; for auditors and on-call
wbsp-platform aws-policy --cluster acme --deploy --database   # the developer --backdoor paths

Always pass --cluster: the policy names resources after it. See Platform technical details for every scope.

Remove a platform

wbsp-platform destroy --platform acme --keep-data       # cluster only; data kept, `up` rebuilds
wbsp-platform destroy --platform acme --delete-data     # everything (database snapshotted first)

Stages, the service, and looking inside the cluster

wbsp-platform run provision --platform acme             # one stage in the foreground, steps announced
wbsp-platform run provision --plan-only --platform acme # zero-change check
wbsp-platform cutover --platform acme                   # real certificates, domain pointed at the platform
wbsp-platform serve --install acme                      # the operator service (see technical details for docker run)
eval "$(wbsp-platform env --platform acme --backdoor)"  # kubeconfig + coordinates, credentials included

The details, including the kubectl recipes, are in Platform technical details.