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 http://bespin.readthedocs.io
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.
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
.
So:
$ bespin --task deploy --environment dev --stack app
Is equivalent to:
$ bespin deploy dev app
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
.
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]" ./test.sh