Previewing Changes

Previewing Changes Before Applying Them

A change set is a computed diff between a stack and a new template or new parameter values. Creating one changes nothing; you review it, then execute it or delete it. create-change-set builds one by name (--change-set-type CREATE even previews a stack that does not exist yet, which is what the REVIEW_IN_PROGRESS status means), and deploy --no-execute-changeset builds one without executing it. Here the booknest-fn stack of Intrinsic Functions is asked to switch from dev to prod:

Previewing a parameter change on booknest-fnShell
aws cloudformation deploy --stack-name booknest-fn --template-file functions.yaml
aws cloudformation deploy --stack-name booknest-fn --template-file functions.yaml \
  --parameter-overrides Stage=prod --no-execute-changeset | cut -c1-80
aws cloudformation list-change-sets --stack-name booknest-fn --output text \
  --query 'Summaries[].[ChangeSetName,Status,ExecutionStatus]'
Output
Waiting for changeset to be created..
Waiting for stack create/update to complete
Successfully created/updated stack - booknest-fn
Waiting for changeset to be created..
Changeset created successfully. Run the following command to review changes:
aws cloudformation describe-change-set --change-set-name arn:aws:cloudformation:
awscli-cloudformation-package-deploy-1790358428   CREATE_COMPLETE   AVAILABLE
A change set's life: nothing touches resources until execute
A change set's life: nothing touches resources until execute

Review change sets before production deploys, for example in a manual approval step. On AWS 24 , a drift-aware change set also compares against the resources' actual state (not run here: LocalStack 63,725 has no drift support).