Skip to main content

Templating system for AWS Cloudformation

Project description


simplecf uses Boto3 from 1.1.0 forward, if you need Boto (aka Boto2) support, please install version 1.0.2 using this command:

pip install simplecf==1.0.2

What is simplecf?

simplecf is a templating system for AWS Cloudformation that allows you to make many variations of a single template for maximum code re-use. See a simple example HERE

The standard use-case is that you have 4 environments {dev,qa,stage,prod} based on one Cloudformation template. Rather than maintaining 4 templates that are mostly identical, you can add Mustache {{ tags }} to your templates and create simple JSON data files that specify the values. This has the added benefit of eliminating the need for a lot of boilerplate mapping code in the “Parameters” section of your templates.

simplecf also supports data file fragments; You can create a single data file for each AWS region that contain region-specific data like ami-id, etc… and import that data file fragment into your other templates.

How to use

You can install using pip:

#As root, or alternately use --user
pip install simplecf

Create a standard AWS Cloudformation template, adding Mustache {{ tags }} for the parts you wish to be dynamically substituted


  {"Key": "Phase", "Value": "{{ phase }}"}

Next, create a JSON file to define the stack and fill in the tags. You can generate an empty data file with -d prod.json -c my-cf-template.json


  "CF_TEMPLATE": "my-cf-template.json",
  "STACK_NAME": "MyStackProd",
  "STACK_REGION": "us-east-1",
  "phase": "Prod"

Then run simplecf to generate the template -d prod.json

Which outputs:


  {"Key": "Phase", "Value": "Prod"}

Run with –help to see various other tools and options.

Project details

Release history Release notifications

This version
History Node


History Node


History Node


History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
simplecf-1.1.0.tar.gz (5.2 kB) Copy SHA256 hash SHA256 Source None Aug 19, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page