Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
108 lines (104 sloc) 3.65 KB
# Hooks require a path.
# If the build should stop when a hook fails, set required to true.
# pre_build happens before the build
# post_build happens after the build
pre_build:
- path: stacker.hooks.route53.create_domain
required: true
# Additional args can be passed as a dict of key/value pairs in kwargs
# kwargs:
# post_build:
mappings:
AmiMap:
us-east-1:
NAT: ami-ad227cc4
ubuntu1404: ami-74e27e1c
bastion: ami-74e27e1c
us-west-2:
NAT: ami-290f4119
ubuntu1404: ami-5189a661
bastion: ami-5189a661
vpc_parameters: &vpc_parameters
VpcId: ${output vpc::VpcId} # parametrs with ::'s in them refer to <stack>::<Output>
DefaultSG: ${output vpc::DefaultSG}
PublicSubnets: ${output vpc::PublicSubnets}
PrivateSubnets: ${output vpc::PrivateSubnets}
AvailabilityZones: ${output vpc::AvailabilityZones}
stacks:
- name: vpc
class_path: stacker_blueprints.vpc.VPC
# Flag to enable/disable a stack. Default is true
enabled: true
variables:
# Only build 2 AZs, can be overridden with -p on the command line
# Note: If you want more than 4 AZs you should add more subnets below
# Also you need at least 2 AZs in order to use the DB because
# of the fact that the DB blueprint uses MultiAZ
AZCount: 2
# Enough subnets for 4 AZs
PublicSubnets:
- 10.128.0.0/24
- 10.128.1.0/24
- 10.128.2.0/24
- 10.128.3.0/24
PrivateSubnets:
- 10.128.8.0/22
- 10.128.12.0/22
- 10.128.16.0/22
- 10.128.20.0/22
CidrBlock: 10.128.0.0/16
# Uncomment if you want an internal hosted zone for the VPC
# If provided, it will be added to the dns search path of the DHCP
# Options
InternalDomain: internal
- name: bastion
class_path: stacker_blueprints.bastion.Bastion
enabled: true
parameters:
# Extends the parameters dict with the contents of the vpc_parameters
# anchor. Basically we're including all VPC Outputs in the parameters
# of the bastion stack. Note: Stacker figures out, automatically, which
# parameters the stack actually needs and only submits those to each
# stack. For example, most stacks are in the PrivateSubnets, but not
# the PublicSubnets, but stacker deals with it for you.
<< : *vpc_parameters
InstanceType: m3.medium
OfficeNetwork: 203.0.113.0/24
MinSize: 2
MaxSize: 2
SshKeyName: default
ImageName: bastion
- name: myDB
class_path: stacker_blueprints.postgres.PostgresRDS
# this stack is locked, which means it will not update unless you pass the
# stack name "myDB" on the command line with --force
locked: true
enabled: true
parameters:
<< : *vpc_parameters
InstanceType: db.m3.medium
AllocatedStorage: 10
MasterUser: dbuser
MasterUserPassword: ExamplePassword!
DBName: db1
# If the following are uncommented and you set an InternalDomain above
# in the VPC a CNAME alias of InternalHostname will be setup pointing at
# the database.
#InternalZoneId: vpc::InternalZoneId
#InternalZoneName: vpc::InternalZoneName
#InternalHostname: mydb
- name: myWeb
class_path: stacker_blueprints.asg.AutoscalingGroup
enabled: true
parameters:
<< : *vpc_parameters
InstanceType: m3.medium
ImageName: ubuntu1404
MinSize: 2
MaxSize: 2
SshKeyName: default
# If commented out, no load balancer will be created.
ELBHostName: mysite
# Uncomment if you have a cert loaded in EC2 already and want to enable
# SSL on the load balancer.
#ELBCertName: mycert
You can’t perform that action at this time.