Sceptre Wordpress |
Meetup Munich -----
Sceptre is a tool to drive AWS CloudFormation. It automates away some of the more mundane, repetitive and error-prone tasks, allowing you to concentrate on building better infrastructure.
Sceptre's source code can be found here.
Features:
- Code reusability by separating a stack's template and its configuration
- Support for templates written in JSON, YAML or Python DSLs such as Troposphere
- Dependency resolution by passing of stack outputs to parameters of dependent stacks
- Environment support by bundling related stacks into logical groups (e.g. dev and prod)
- Environment-level commands, such as creating multiple stacks with a single command
- Fast, highly parallelised builds
- Built in support for working with stacks in multiple AWS accounts
- Infrastructure visibility with meta-operations such as stack querying protection
- Support for inserting dynamic values in templates via customisable resolvers
- Support for running arbitrary code as hooks before/after stack builds
Sceptre organises stacks into environments. Each stack is represented by a YAML configuration file stored in a directory which represents the environment. Here, we have two environments, prod
and dev
:
$ tree
.
├── LICENSE
├── NOTICE
├── README.rst
├── config
│ ├── config.yaml
│ ├── dev
│ │ ├── config.yaml
│ │ ├── efs.yaml
│ │ ├── rds.yaml
│ │ ├── role.yaml
│ │ ├── security-groups.yaml
│ │ ├── vpc.yaml
│ │ └── wordpress.yaml
│ └── prod
│ ├── config.yaml
│ ├── efs.yaml
│ ├── rds.yaml
│ ├── security-groups.yaml
│ ├── vpc.yaml
│ └── wordpress.yaml
└── src
├── base.py
├── constants.py
├── efs.py
├── rds.py
├── role.py
├── security_groups.py
├── vpc.py
└── wordpress.py
$ pip install sceptre
More information on installing sceptre can be found in our Installation Guide.
How to start -----
Sceptre can be used from the CLI, or imported as a Python package.:
$ git clone git@github.com:cloudreach/sceptre-wordpress-example.git
$ cd sceptre-wordpress-example
Be sure your AWS credential are properly configured
How to deploy dev
and prod
:
$ sceptre launch dev
$ sceptre launch prod
How to apply a change-set on dev
for wordpress
stack :
$ sceptre create dev wordpress
$ sceptre execute dev wordpress
sceptre is licensed under the Apache Software License 2.0.