Project Dormant

This project was purpose built for a need at a previous workplace of mine.

As far as I could tell, that was the only place this was used and since my departure from that workplace they have slowly switched to other projects for their deployments.

I don’t use AWS at my current workplace, or in any personal projects and so haven’t needed to use this.

In the future it’s likely I’ll only have time for small changes in this project.


An opinionated wrapper around Amazon Cloudformation that reads yaml files. and make things happen.

The documentation can be found at


Just use pip:

pip install bespin


Once bespin is installed, there will be a new program called bespin.

When you call bespin without any arguments it will print out the tasks you have available.

You may invoke these tasks with the task option.

Simpler Usage

To save typing --task, --stack and --environment too much , the first positional argument is treated as task (unless it is prefixed with a -); the second positional argument (if also not prefixed with a -) is taken as the environment and the third is treated as the stack.


$ bespin --task deploy --environment dev --stack app

Is equivalent to:

$ bespin deploy dev app

Logging colors

If you find the logging output doesn’t look great on your terminal, you can try setting the term_colors option in bespin.yml to either light or dark.

The yaml configuration

Bespin reads everything from a yaml configuration. By default this is a bespin.yml file in the current directory, but may be changed with the --bespin-config option or BESPIN_CONFIG environment variable.

It will also read from ~/.bespin.yml and will be overridden by anything in the configuration file you’ve specified.


Install testing deps and run the helpful script:

pip install -e .
pip install -e ".[tests]"