--- # ---------------------------------------------------------------------------- # # *** AUTO GENERATED CODE *** Type: MMv1 *** # # ---------------------------------------------------------------------------- # # This file is automatically generated by Magic Modules and manual # changes will be clobbered when the file is regenerated. # # Please read more about how to change this file at # https://www.github.com/GoogleCloudPlatform/magic-modules # # ---------------------------------------------------------------------------- # Pre-test setup - name: Create a address google.cloud.gcp_compute_address: name: address region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: address - name: Create a forward address google.cloud.gcp_compute_address: name: address-forwardingrule region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: address_forwardingrule - name: Create a network google.cloud.gcp_compute_network: name: network-vpn-tunnel project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" auto_create_subnetworks: true state: present register: network - name: Create a disk google.cloud.gcp_compute_disk: name: "{{ resource_prefix }}" size_gb: 50 source_image: projects/ubuntu-os-cloud/global/images/family/ubuntu-minimal-2204-lts zone: us-central1-a project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: disk - name: Create a instance google.cloud.gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: "true" boot: "true" source: "{{ disk }}" - auto_delete: "true" interface: NVME type: SCRATCH initialize_params: disk_type: local-ssd metadata: cost-center: "12345" labels: environment: production network_interfaces: - network: "{{ network }}" access_configs: - name: External NAT nat_ip: "{{ address }}" type: ONE_TO_ONE_NAT zone: us-central1-a project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: result - name: Create a router google.cloud.gcp_compute_router: name: router-vpn-tunnel network: "{{ network }}" bgp: asn: 64514 advertise_mode: CUSTOM advertised_groups: - ALL_SUBNETS advertised_ip_ranges: - range: 1.2.3.4 - range: 6.7.0.0/16 region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: router - name: Create a target vpn gateway google.cloud.gcp_compute_target_vpn_gateway: name: gateway-vpn-tunnel region: us-central1 network: "{{ network }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: gateway - name: Create a forwarding rule google.cloud.gcp_compute_forwarding_rule: name: "{{ resource_name }}" region: us-central1 target: "{{ gateway.selfLink }}" ip_protocol: ESP ip_address: "{{ address_forwardingrule.address }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: result - name: Create a UDP-500 forwarding rule google.cloud.gcp_compute_forwarding_rule: name: "{{ resource_name }}-udp" region: us-central1 target: "{{ gateway.selfLink }}" ip_protocol: UDP port_range: 500-500 ip_address: "{{ address_forwardingrule.address }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: result - name: Create a UDP-4500 forwarding rule google.cloud.gcp_compute_forwarding_rule: name: "{{ resource_name }}-udp-4500" region: us-central1 target: "{{ gateway.selfLink }}" ip_protocol: UDP port_range: 4500-4500 ip_address: "{{ address_forwardingrule.address }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: result - name: Delete a vpn tunnel google.cloud.gcp_compute_vpn_tunnel: name: "{{ resource_name }}" region: us-central1 target_vpn_gateway: "{{ gateway }}" router: "{{ router }}" shared_secret: super secret project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" peer_ip: "{{ address.address }}" state: absent # ---------------------------------------------------------- - name: Create a vpn tunnel google.cloud.gcp_compute_vpn_tunnel: name: "{{ resource_name }}" region: us-central1 target_vpn_gateway: "{{ gateway }}" router: "{{ router }}" shared_secret: super secret project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" peer_ip: "{{ address.address }}" state: present register: result - name: Assert changed is true ansible.builtin.assert: that: - result.changed == true - name: Verify that vpn_tunnel was created google.cloud.gcp_compute_vpn_tunnel_info: filters: - name = {{ resource_name }} region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" scopes: - https://www.googleapis.com/auth/compute register: results - name: Verify that command succeeded ansible.builtin.assert: that: - results['resources'] | length == 1 # ---------------------------------------------------------------------------- - name: Create a vpn tunnel that already exists google.cloud.gcp_compute_vpn_tunnel: name: "{{ resource_name }}" region: us-central1 target_vpn_gateway: "{{ gateway }}" router: "{{ router }}" peer_ip: "{{ address.address }}" shared_secret: super secret project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: present register: result - name: Assert changed is false ansible.builtin.assert: that: - result.changed == false # ---------------------------------------------------------- - name: Delete a vpn tunnel google.cloud.gcp_compute_vpn_tunnel: name: "{{ resource_name }}" region: us-central1 target_vpn_gateway: "{{ gateway }}" router: "{{ router }}" peer_ip: "{{ address.address }}" shared_secret: super secret project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent register: result - name: Assert changed is true ansible.builtin.assert: that: - result.changed == true - name: Verify that vpn_tunnel was deleted google.cloud.gcp_compute_vpn_tunnel_info: filters: - name = {{ resource_name }} region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" scopes: - https://www.googleapis.com/auth/compute register: results - name: Verify that command succeeded ansible.builtin.assert: that: - results['resources'] | length == 0 # ---------------------------------------------------------------------------- - name: Delete a vpn tunnel that does not exist google.cloud.gcp_compute_vpn_tunnel: name: "{{ resource_name }}" region: us-central1 target_vpn_gateway: "{{ gateway }}" router: "{{ router }}" peer_ip: "{{ address.address }}" shared_secret: super secret project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent register: result - name: Assert changed is false ansible.builtin.assert: that: - result.changed == false # --------------------------------------------------------- # Post-test teardown - name: Delete a UDP-4500 forwarding rule google.cloud.gcp_compute_forwarding_rule: name: "{{ resource_name }}-udp-4500" region: us-central1 target: "{{ gateway.selfLink }}" ip_protocol: UDP port_range: 4500-4500 ip_address: "{{ address.address }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent ignore_errors: true register: result - name: Delete a UDP forwarding rule google.cloud.gcp_compute_forwarding_rule: name: "{{ resource_name }}-udp" region: us-central1 target: "{{ gateway.selfLink }}" ip_protocol: UDP port_range: 500-500 ip_address: "{{ address.address }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent ignore_errors: true register: result - name: Delete a forwarding rule google.cloud.gcp_compute_forwarding_rule: name: "{{ resource_name }}" region: us-central1 target: "{{ gateway.selfLink }}" ip_protocol: ESP ip_address: 104.197.5.203 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent ignore_errors: true register: result # If errors happen, don't crash the playbook! - name: Delete a target vpn gateway google.cloud.gcp_compute_target_vpn_gateway: name: gateway-vpn-tunnel region: us-central1 network: "{{ network }}" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent register: gateway ignore_errors: true - name: Delete a router google.cloud.gcp_compute_router: name: router-vpn-tunnel network: "{{ network }}" bgp: asn: 64514 advertise_mode: CUSTOM advertised_groups: - ALL_SUBNETS advertised_ip_ranges: - range: 1.2.3.4 - range: 6.7.0.0/16 region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent register: router ignore_errors: true - name: Delete a instance google.cloud.gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: "true" boot: "true" source: "{{ disk }}" - auto_delete: "true" interface: NVME type: SCRATCH initialize_params: disk_type: local-ssd metadata: cost-center: "12345" labels: environment: production network_interfaces: - network: "{{ network }}" access_configs: - name: External NAT nat_ip: "{{ address }}" type: ONE_TO_ONE_NAT zone: us-central1-a project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent - name: Delete a disk google.cloud.gcp_compute_disk: name: "{{ resource_prefix }}" size_gb: 50 source_image: projects/ubuntu-os-cloud/global/images/family/ubuntu-1604-lts zone: us-central1-a project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent register: disk ignore_errors: true - name: Delete a network google.cloud.gcp_compute_network: name: network-vpn-tunnel project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" auto_create_subnetworks: true state: absent register: network ignore_errors: true - name: Delete a address google.cloud.gcp_compute_address: name: address region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file | default(omit) }}" state: absent register: address ignore_errors: true