Cirrus is a CLI tool for managing cloudformation stacks and templates.
(screencasts were done when I had terrible internet, so they're slow)
This command lists all the existing non-deleted stacks.
If you pass --showdeleted
then it will include deleted stacks.
This command lists all resources belonging to a particular stack.
This command lists all events that have happened for a stack.
This command gives you information about your AWS account.
This will give you a URL to an AWS cost estimation page that has your cloudformation resources automatically filled in.
Requires --file
and --parameters
args.
This command requires you have a browser installed as it will open the URL with your default application.
Validates a template + parameter file.
Requires --file
and --parameters
.
Creates a new template.
Requires a stack name, --file
, and --parameters
.
Updates an existing template.
Requires a stack name, --file
, and --parameters
.
Deletes an existing stack.
Will prompt for confirmation.
Note: This command is a WIP and the output will almost definitely change.
Displays information about what will change if you apply this template to an existing stack.
The old way of defining parameters is now deprecated, to be replaced with a single JSON object.
Old:
[ { ParameterKey: "Hello", ParameterValue: "World" } ]
New:
{ Hello: "World" }
Parameter values can be interpolated from existing cloudformation stacks.
Instead of having:
{
PublicSubnet1: "subnet-123456"
}
you could change it to
{
PublicSubnet1: "<<mainVPC.PublicSubnet1>>"
}
Where mainVPC
is the name of another stack, and PublicSubnet1
is the resource name.
The value will be replaced with the ID of the resource you specify.
You can prompt for a value when you run create
or update
.
{
SecretParameter: "<<prompt>>"
}
You can include data that has been encrypted using KMS for create
or update
.
These values will be decrypted using the KMS API when the tasks are run.
{
SecretParameter: "<<kms: BASE64_ENCODED_DATA>>"
}