@go-to-k/cdkd 0.35.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -208,8 +208,15 @@ alias cdkd="node $(pwd)/dist/cli.js"
208
208
 
209
209
  ## Quick Start
210
210
 
211
+ > **First-time setup**: cdkd requires a one-time `cdkd bootstrap` per AWS
212
+ > account before any other command will work — it creates the S3 state
213
+ > bucket (`cdkd-state-{accountId}`) that cdkd uses to track deployed
214
+ > resources. This is separate from `cdk bootstrap` (which sets up the
215
+ > CDK asset bucket / ECR repo and is also required — see
216
+ > [Prerequisites](#prerequisites)).
217
+
211
218
  ```bash
212
- # Bootstrap (creates S3 state bucket - only needed once per account/region)
219
+ # Bootstrap (creates S3 state bucket — one-time setup, once per AWS account)
213
220
  cdkd bootstrap
214
221
 
215
222
  # List stacks in the CDK app
@@ -376,6 +383,30 @@ cdkd state destroy MyStack --region us-east-1
376
383
  > `cdkd destroy` (synth-driven, deletes AWS resources + state) and
377
384
  > `cdkd state destroy` (state-driven, same effect) round out the matrix.
378
385
 
386
+ ## `publish-assets`: synth + build + publish, no deploy
387
+
388
+ `cdkd publish-assets` runs the asset half of the deploy pipeline only —
389
+ synthesize the CDK app, build any Docker images, upload file assets to
390
+ S3, push images to ECR — and stops. No state writes, no provisioning,
391
+ no lock acquisition. This is the typical CI split where one runner
392
+ builds and uploads assets and a separate runner deploys.
393
+
394
+ ```bash
395
+ cdkd publish-assets # synth + publish all stacks (or auto-detect single stack)
396
+ cdkd publish-assets MyStack # synth + publish a specific stack
397
+ cdkd publish-assets --all # synth + publish every stack in the app
398
+ cdkd publish-assets 'MyStage/*' # wildcard (CDK display path)
399
+ cdkd publish-assets -a cdk.out # skip synth — use a pre-synthesized cloud assembly
400
+ ```
401
+
402
+ Stack selection follows the same rules as `deploy` / `diff` / `destroy`
403
+ (positional > `--stack` > `--all` > auto-detect). Concurrency knobs
404
+ are `--asset-publish-concurrency` and `--image-build-concurrency`.
405
+ `-a/--app` accepts either a shell command (`"npx ts-node app.ts"`) or
406
+ a path to an already-synthesized cloud assembly directory; pointing at
407
+ `cdk.out` skips synthesis. See [docs/cli-reference.md](docs/cli-reference.md#publish-assets-synth--build--publish-no-deploy)
408
+ for details.
409
+
379
410
  ## `--no-wait`: skip async-resource waits
380
411
 
381
412
  CloudFront Distributions, RDS Clusters/Instances, ElastiCache, and