Evaluate and unit test CloudFormation templates
Project description
cfneval
cfneval is a Python tool for taking a CloudFormation template and evaluating all the conditional logic in order to come up with the effective template that actually gets used. You can use the tool just to see what the effective version looks like, or you can run it as part of a behave test suite to automatically regression test your CloudFormation template.
CLI Usage
Usage: cfneval [OPTIONS]
Options:
-p, --parameter <TEXT TEXT>...
-t, --template TEXT [required]
-o, --output TEXT
--account-id TEXT
--region TEXT
--help Show this message and exit.
template
Use the -t or --template argument to point to the CloudFormation template you want to evaluate. cfneval will auto-detect whether the template is in json or yaml format. It will use cfnflip to parse yaml templates.
parameters
Use the -p or --parameter argument multiple times to specify the parameters that will be passed into the CloudFormation template.
output
Use the -o or --output argument to specify the filename to write the effective template to. If this argument is omitted, then the effective template will be written to stdout instead of to a file. The output will be in the same format as the input.
account-id
Use the --account-id argument to simulate evaluating the template in a specific account. It defaults to 123456789012.
region
Use the --region argument to simulate evaluating the template in another region. It defaults to us-east-1.
Behave usage
cfneval comes with a wrapper around behave called behave-cfn. That wrapper comes with the cfneval given/when/then's pre-registered and ready to use. You just need to put your features in a features folder.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cfneval-1.0.1.tar.gz.
File metadata
- Download URL: cfneval-1.0.1.tar.gz
- Upload date:
- Size: 13.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e69998327905cc3c4430116d2baa7be0a84eb5aff4415da6163bb905163401f9
|
|
| MD5 |
99105c6c0c26a4b6b9e901effcf79d3f
|
|
| BLAKE2b-256 |
fd77c18efb3f5b39aa8d9dff2782243ba4954e08d68c0b8f5039ec74ace8fa93
|