151 lines
3.8 KiB
YAML
151 lines
3.8 KiB
YAML
|
---
|
||
|
# Pre-test setup
|
||
|
- name: create a vpc
|
||
|
hwc_network_vpc:
|
||
|
cidr: "192.168.0.0/16"
|
||
|
name: "ansible_network_vpc_test_local"
|
||
|
state: present
|
||
|
register: vpc1
|
||
|
- name: create a vpc
|
||
|
hwc_network_vpc:
|
||
|
cidr: "192.168.0.0/16"
|
||
|
name: "ansible_network_vpc_test_peering"
|
||
|
state: present
|
||
|
register: vpc2
|
||
|
- name: create a peering connect
|
||
|
hwc_vpc_peering_connect:
|
||
|
local_vpc_id: "{{ vpc1.id }}"
|
||
|
name: "ansible_network_peering_test"
|
||
|
filters:
|
||
|
- "name"
|
||
|
peering_vpc:
|
||
|
vpc_id: "{{ vpc2.id }}"
|
||
|
state: present
|
||
|
register: connect
|
||
|
- name: delete a route
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: absent
|
||
|
#----------------------------------------------------------
|
||
|
- name: create a route (check mode)
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
check_mode: yes
|
||
|
register: result
|
||
|
- assert:
|
||
|
that:
|
||
|
- not result.id
|
||
|
- result.changed
|
||
|
#----------------------------------------------------------
|
||
|
- name: create a route
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert changed is true
|
||
|
assert:
|
||
|
that:
|
||
|
result is changed
|
||
|
# ----------------------------------------------------------
|
||
|
- name: create a route (idemponent)
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: present
|
||
|
check_mode: yes
|
||
|
register: result
|
||
|
- name: idemponent
|
||
|
assert:
|
||
|
that:
|
||
|
- not result.changed
|
||
|
# -----------------------------------------------------------
|
||
|
- name: create a route that already exists
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: present
|
||
|
register: result
|
||
|
- name: assert changed is false
|
||
|
assert:
|
||
|
that:
|
||
|
- result.failed == 0
|
||
|
- result.changed == false
|
||
|
#----------------------------------------------------------
|
||
|
- name: delete a route (check mode)
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: absent
|
||
|
check_mode: yes
|
||
|
#----------------------------------------------------------
|
||
|
- name: delete a route
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: absent
|
||
|
register: result
|
||
|
- name: assert changed is true
|
||
|
assert:
|
||
|
that:
|
||
|
result is changed
|
||
|
#----------------------------------------------------------
|
||
|
- name: delete a (idemponent)
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: absent
|
||
|
check_mode: yes
|
||
|
register: result
|
||
|
- name: not changed
|
||
|
assert:
|
||
|
that:
|
||
|
not result.changed
|
||
|
# ----------------------------------------------------------------------------
|
||
|
- name: delete a route that does not exist
|
||
|
hwc_vpc_route:
|
||
|
vpc_id: "{{ vpc1.id }}"
|
||
|
destination: "192.168.0.0/16"
|
||
|
next_hop: "{{ connect.id }}"
|
||
|
state: absent
|
||
|
register: result
|
||
|
- name: assert changed is false
|
||
|
assert:
|
||
|
that:
|
||
|
- result.failed == 0
|
||
|
- result.changed == false
|
||
|
#---------------------------------------------------------
|
||
|
# Post-test teardown
|
||
|
- name: delete a peering connect
|
||
|
hwc_vpc_peering_connect:
|
||
|
local_vpc_id: "{{ vpc1.id }}"
|
||
|
name: "ansible_network_peering_test"
|
||
|
filters:
|
||
|
- "name"
|
||
|
peering_vpc:
|
||
|
vpc_id: "{{ vpc2.id }}"
|
||
|
state: absent
|
||
|
register: connect
|
||
|
- name: delete a vpc
|
||
|
hwc_network_vpc:
|
||
|
cidr: "192.168.0.0/16"
|
||
|
name: "ansible_network_vpc_test_peering"
|
||
|
state: absent
|
||
|
register: vpc2
|
||
|
- name: delete a vpc
|
||
|
hwc_network_vpc:
|
||
|
cidr: "192.168.0.0/16"
|
||
|
name: "ansible_network_vpc_test_local"
|
||
|
state: absent
|
||
|
register: vpc1
|