无法弄清楚为什么要更新子网

Rya*_*Mes 8 amazon-web-services ansible

我正在使用Ansible在AWS中创建VPC.运行以下播放

- name: create vpc with multi-az subnets
  ec2_vpc:
    region: "{{ region }}"
    cidr_block: "{{ vpc_cidr_block }}"
    resource_tags: '{"Name":"{{ prefix }}_vpc"}'
    subnets:
      - cidr: "{{ vpc_cidr_subnet_public_0 }}"
        az: "{{ region }}{{ availability_zone_0 }}"
        resource_tags: '{"Name":"{{ prefix }}_subnet_public_0", "Class":"web", "Partner":prefix }'
      - cidr: "{{ vpc_cidr_subnet_private_0 }}"
        az: "{{ region }}{{ availability_zone_0 }}"
        resource_tags: '{"Name":"{{ prefix }}_subnet_private_0", "Class":"db", "Partner":prefix }'
      - cidr: "{{ vpc_cidr_subnet_private_1 }}"
        az: "{{ region }}{{ availability_zone_1 }}"
        resource_tags: '{"Name":"{{ prefix }}_subnet_private_1", "Class":"db", "Partner":prefix }'
    internet_gateway: yes
    route_tables:
      - subnets:
        - "{{ vpc_cidr_subnet_public_0 }}"
        routes:
          - dest: 0.0.0.0/0
            gw: igw
    wait: yes
  register: vpc
Run Code Online (Sandbox Code Playgroud)

第一次围绕这一切创造了一切.第二次,我希望它不会做任何事情,因为公共子网更新为私有子网.

为什么?我究竟做错了什么?

[UPDATE]

以下是变量:

---
region: eu-west-1
prefix: staging
vpc_environment: staging
vpc_cidr_block: 20.0.0.0/16
vpc_cidr_subnet_public_0: 20.0.0.0/24
vpc_cidr_subnet_private_0: 20.0.1.0/24
vpc_cidr_subnet_private_1: 20.0.2.0/24
availability_zone_0: b
availability_zone_1: c
Run Code Online (Sandbox Code Playgroud)

还只是澄清正在发生的变化.一个子网(公共)的所有资源标记都被另一个子网(私有)的标记覆盖.

Rya*_*Mes 2

这是由master - 中的ansible-modules-core中的错误引起的ec2_vpc。我已记录了一个错误并创建了一个PR来解决该问题。有关详细信息和实际中断,请参阅 PR。希望尽快合并!

[更新]合并