pronounced /ˈɒzi/ oz-ee like our great friends from down under.
AWSIE is a CloudFormation aware wrapper on top of the AWS CLI. It help you to call an awscli command (or any command), but instead of the actual physical ID of the resource you use the LogicalId, OutputId or ExportName which will be replaced when executing the actual command.
For many different resources AWS can automatically set a random name when creating the resource through Cloudformation. While this has a big upside with resources not clashing when the same stack gets deployed multipe times, a downside is that running a command against a specific resource means you have to write lookup code or use the resource name by hand.
Awsie helps you to do that lookup and call the awscli without any potential for clashes. By supporting both LogicalIds, Output and Export variables you have a lot of flexibility for your automation scripts.
Before installing make sure you have the awscli
installed as awsie depends on it. We don't install it ourselves so you're able to install the exact version you want to use.
Awsie can be installed through pip:
pip3 install -U awscli awsie
For example when you deploy a CloudFormation stack:
{
"Resources": {
"DeploymentBucket": {
"Type": "AWS::S3::Bucket"
}
}
}
and then want to list the content of the bucket you can use awsie
:
awsie example-stack s3 ls s3://cf:DeploymentBucket: --region us-west-1
Check out the full Documentation and Quickstart on TheServerlessWay.com