I need to build role that automatically creates subnets for VPC based on amount of AZ defined.
- name: Setup "{{ aws.vpc.name }}" VPC
ec2_vpc:
state: present
cidr_block: 172.20.0.0/16
resource_tags: { "Name": "{{aws.vpc.name}}" }
subnets:
- cidr: 172.20.1.0/24
az: us-east-1d
resource_tags: { "Name": "{{aws.vpc.name}}-1d" }
- cidr: 172.20.2.0/24
az: us-east-1c
resource_tags: { "Name": "{{aws.vpc.name}}-1c" }
internet_gateway: True
route_tables:
- subnets:
- 172.20.1.0/24
- 172.20.2.0/24
routes:
- dest: 0.0.0.0/0
gw: igw
region: {{ aws.vpc.region }}
How to generate automatically block like this one if I have only AZ name like
aws.vpc.az = ['a', 'c', 'e']
- cidr: 172.20.1.0/24
az: us-east-1d
resource_tags: { "Name": "{{aws.vpc.name}}-1d" }
So, I have checked http://docs.ansible.com/ansible/playbooks_filters.html. But I didn't find a way to generate this block dynamically