Terminology

blueprint

A python class that is responsible for creating a CloudFormation template. Usually this is built using troposphere.

config

A YAML config file that defines the stack definitions for all of the stacks you want stacker to manage.

environment

A set of variables that can be used inside the config, allowing you to slightly adjust configs based on which environment you are launching.

namespace

A way to uniquely identify a stack. Used to determine the naming of many things, such as the S3 bucket where compiled templates are stored, as well as the prefix for stack names.

stack definition

Defines the stack you want to build, usually there are multiple of these in the config. It also defines the variables to be used when building the stack.

stack

The resulting stack of resources that is created by CloudFormation when it executes a template. Each stack managed by stacker is defined by a stack definition in the config.

output

A CloudFormation Template concept. Stacks can output values, allowing easy access to those values. Often used to export the unique ID’s of resources that templates create. Stacker makes it simple to pull outputs from one stack and then use them as a variable in another stack.

variable

Dynamic variables that are passed into stacks when they are being built. Variables are defined within the config.

lookup

A method for expanding values in the config at build time. By default lookups are used to reference Output values from other stacks within the same namespace.

provider

Provider that supports provisioning rendered blueprints. By default, an AWS provider is used.

context

Context is responsible for translating the values passed in via the command line and specified in the config to stacks.