CloudFormationでよく使うAWS CLIコマンドまとめ
スタック作成関係
※注意※IAMのcapabilitiesはFULLでつけている
- スタックの作成(ローカルにテンプレートある場合)
aws cloudformation create-stack --stack-name <スタック名> \ --template-body <ローカルのパス file:///home/testuser/mytemplate.yaml> \ --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM" "CAPABILITY_AUTO_EXPAND" \ --parameters ParameterKey=<パラメータキー>,ParameterValue=<パラメータ値>
- スタックの作成(S3にテンプレートある場合)
aws cloudformation create-stack --stack-name <スタック名> \ --template-url <3SのURL> \ --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM" "CAPABILITY_AUTO_EXPAND" \ --parameters ParameterKey=<パラメータキー>,ParameterValue=<パラメータ値>
- スタック作成状況の確認(最新イベントを3だけ表示)
aws cloudformation describe-stack-events \ --stack-name <スタック名> \ --max-items 3
- 作成完了しているスタック名前一覧を取得
aws cloudformation list-stacks --stack-status-filter CREATE_COMPLETE \ --output table --query "StackSummaries[*].StackName"
変更セット関係
- スタックの変更セットの作成
aws cloudformation create-change-set --stack-name <スタック名> \ --change-set-name=<変更セット名> \ --template-url <S3のURL> \ --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM" "CAPABILITY_AUTO_EXPAND" \ --parameters ParameterKey=<パラメータキー>,ParameterValue=<パラメータ値> \ ParameterKey=<パラメータキー>,ParameterValue=<パラメータ値>
- 変更セットの中身確認
aws cloudformation describe-change-set --stack-name <スタック名> \ --change-set-name <変更セット名>
- スタックの変更セットの実行
aws cloudformation list-change-sets --stack-name <実行する変更セット名>
スタック削除関係
- スタックの削除
aws cloudformation delete-stack --stack-name <スタック名>
- 依存関係を考慮した複数スタック削除
aws cloudformation delete-stack --stack-name <削除スタックAの名前> aws cloudformation wait stack-delete-complete --stack-name <削除スタックAの名前> aws cloudformation delete-stack --stack-name <削除スタックAと依存関係のあるスタック名>