--- # ---------------------------------------------------------------------------- # # *** AUTO GENERATED CODE *** AUTO GENERATED CODE *** # # ---------------------------------------------------------------------------- # # 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 disk gcp_compute_disk: name: "disk-instance" 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 }}" state: present register: disk - name: create a network gcp_compute_network: name: "network-instance" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file }}" state: present register: network - name: create a address gcp_compute_address: name: "address-instance" region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file }}" state: present register: address - name: delete a instance gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: true boot: true source: "{{ disk }}" metadata: startup-script-url: gs:://graphite-playground/bootstrap.sh cost-center: '12345' 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 }}" state: absent #---------------------------------------------------------- - name: create a instance gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: true boot: true source: "{{ disk }}" metadata: startup-script-url: gs:://graphite-playground/bootstrap.sh cost-center: '12345' 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 }}" state: present register: result - name: assert changed is true assert: that: - result.changed == true - "result.kind == 'compute#instance'" - name: verify that instance was created gcp_compute_instance_facts: filters: - name = {{ resource_name }} zone: us-central1-a project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file }}" scopes: - https://www.googleapis.com/auth/compute register: results - name: verify that command succeeded assert: that: - results['items'] | length == 1 # ---------------------------------------------------------------------------- - name: create a instance that already exists gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: true boot: true source: "{{ disk }}" metadata: startup-script-url: gs:://graphite-playground/bootstrap.sh cost-center: '12345' 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 }}" state: present register: result - name: assert changed is false assert: that: - result.changed == false - "result.kind == 'compute#instance'" #---------------------------------------------------------- - name: delete a instance gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: true boot: true source: "{{ disk }}" metadata: startup-script-url: gs:://graphite-playground/bootstrap.sh cost-center: '12345' 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 }}" state: absent register: result - name: assert changed is true assert: that: - result.changed == true - result.has_key('kind') == False - name: verify that instance was deleted gcp_compute_instance_facts: filters: - name = {{ resource_name }} zone: us-central1-a project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file }}" scopes: - https://www.googleapis.com/auth/compute register: results - name: verify that command succeeded assert: that: - results['items'] | length == 0 # ---------------------------------------------------------------------------- - name: delete a instance that does not exist gcp_compute_instance: name: "{{ resource_name }}" machine_type: n1-standard-1 disks: - auto_delete: true boot: true source: "{{ disk }}" metadata: startup-script-url: gs:://graphite-playground/bootstrap.sh cost-center: '12345' 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 }}" state: absent register: result - name: assert changed is false assert: that: - result.changed == false - result.has_key('kind') == False #--------------------------------------------------------- # Post-test teardown - name: delete a address gcp_compute_address: name: "address-instance" region: us-central1 project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file }}" state: absent register: address - name: delete a network gcp_compute_network: name: "network-instance" project: "{{ gcp_project }}" auth_kind: "{{ gcp_cred_kind }}" service_account_file: "{{ gcp_cred_file }}" state: absent register: network - name: delete a disk gcp_compute_disk: name: "disk-instance" 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 }}" state: absent register: disk