1# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org> 2# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) 3--- 4- name: setup 5 vultr_network: 6 name: "{{ vultr_network_name }}" 7 state: absent 8 register: result 9- name: verify setup 10 assert: 11 that: 12 - result is success 13 14- name: test fail if missing name 15 vultr_network: 16 register: result 17 ignore_errors: yes 18- name: verify test fail if missing name 19 assert: 20 that: 21 - result is failed 22 - 'result.msg == "missing required arguments: name"' 23 24- name: test fail if missing params for state=present 25 vultr_network: 26 name: "{{ vultr_network_name }}" 27 register: result 28 ignore_errors: yes 29- name: verify fail if missing params for state=present 30 assert: 31 that: 32 - result is failed 33 - 'result.msg == "state is present but all of the following are missing: cidr, region"' 34 35- name: test create network in check mode 36 vultr_network: 37 name: "{{ vultr_network_name }}" 38 cidr: "{{ vultr_network_cidr }}" 39 region: "{{ vultr_network_region }}" 40 register: result 41 check_mode: yes 42- name: verify test create server in check mode 43 assert: 44 that: 45 - result is changed 46 47- name: test create network 48 vultr_network: 49 name: "{{ vultr_network_name }}" 50 cidr: "{{ vultr_network_cidr }}" 51 region: "{{ vultr_network_region }}" 52 register: result 53 54- name: verify test create network 55 assert: 56 that: 57 - result is changed 58 - result.vultr_network.name == "{{ vultr_network_name }}" 59 - result.vultr_network.region == "{{ vultr_network_region }}" 60 - result.vultr_network.v4_subnet == "{{ vultr_network_cidr.split('/')[0] }}" 61 - result.vultr_network.v4_subnet_mask == 24 62 63- name: test create network idempotence 64 vultr_network: 65 name: "{{ vultr_network_name }}" 66 cidr: "{{ vultr_network_cidr }}" 67 region: "{{ vultr_network_region }}" 68 register: result 69 70- name: verify test network idempotence 71 assert: 72 that: 73 - result is not changed 74 - result.vultr_network.name == "{{ vultr_network_name }}" 75 - result.vultr_network.region == "{{ vultr_network_region }}" 76 - result.vultr_network.v4_subnet == "{{ vultr_network_cidr.split('/')[0] }}" 77 - result.vultr_network.v4_subnet_mask == 24 78 79- name: test destroy network in check mode 80 vultr_network: 81 name: "{{ vultr_network_name }}" 82 state: absent 83 register: result 84 check_mode: yes 85 86- name: verify test destroy network in check mode 87 assert: 88 that: 89 - result is changed 90 - result.vultr_network.name == "{{ vultr_network_name }}" 91 92- name: test destroy network volume 93 vultr_network: 94 name: "{{ vultr_network_name }}" 95 state: absent 96 register: result 97 98- name: verify test destroy an existing network 99 assert: 100 that: 101 - result is changed 102 - result.vultr_network.name == "{{ vultr_network_name }}" 103 104- name: test destroy an existing network idempotence 105 vultr_network: 106 name: "{{ vultr_network_name }}" 107 state: absent 108 register: result 109 110- name: verify test destroy an existing network idempotence 111 assert: 112 that: 113 - result is not changed 114