Run ansible tests against specific public cloud
We want to run ansible tests against some public cloud, but there are always some API policy limits for regular users in public cloud, like: can not create external network. So we define some variables that can be changed for different limit scenairoes. 1. Create port in external or internal network. 2. Specified public pool name when launching server. 3. Create simple router, then add interface and external gateway, change test step order, so that do not create external network when network_external=false. 4. Create subnet with enable_dhcp true or false. 5. Make ANSIBLE_VAR_* environment variables can be passed into virtual env. Change-Id: I69473756b23a6cb525e0f9bb40d09e6ed9880782
This commit is contained in:
parent
2fa2720eeb
commit
722d8136b2
|
@ -1,4 +1,5 @@
|
|||
network_name: ansible_port_network
|
||||
network_external: true
|
||||
subnet_name: ansible_port_subnet
|
||||
port_name: ansible_port
|
||||
secgroup_name: ansible_port_secgroup
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: "{{ network_name }}"
|
||||
external: True
|
||||
external: "{{ network_external }}"
|
||||
|
||||
- name: Create subnet
|
||||
os_subnet:
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
external_network_name: ansible_external_net
|
||||
network_external: true
|
||||
router_name: ansible_router
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
---
|
||||
- name: Create external network
|
||||
os_network:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: "{{ external_network_name }}"
|
||||
external: true
|
||||
|
||||
# Regular user operation
|
||||
- name: Create internal network
|
||||
os_network:
|
||||
cloud: "{{ cloud }}"
|
||||
|
@ -14,19 +8,11 @@
|
|||
external: false
|
||||
|
||||
- name: Create subnet1
|
||||
os_subnet:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
network_name: "{{ external_network_name }}"
|
||||
name: shade_subnet1
|
||||
cidr: 10.6.6.0/24
|
||||
|
||||
- name: Create subnet2
|
||||
os_subnet:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
network_name: "{{ network_name }}"
|
||||
name: shade_subnet2
|
||||
name: shade_subnet1
|
||||
cidr: 10.7.7.0/24
|
||||
|
||||
- name: Create router
|
||||
|
@ -34,16 +20,45 @@
|
|||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: "{{ router_name }}"
|
||||
network: "{{ external_network_name }}"
|
||||
|
||||
- name: Update router
|
||||
- name: Update router (add interface)
|
||||
os_router:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: "{{ router_name }}"
|
||||
interfaces:
|
||||
- shade_subnet1
|
||||
|
||||
# Admin operation
|
||||
- name: Create external network
|
||||
os_network:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: "{{ external_network_name }}"
|
||||
external: "{{ network_external }}"
|
||||
when:
|
||||
- network_external
|
||||
|
||||
- name: Create subnet2
|
||||
os_subnet:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
network_name: "{{ external_network_name }}"
|
||||
name: shade_subnet2
|
||||
cidr: 10.6.6.0/24
|
||||
when:
|
||||
- network_external
|
||||
|
||||
- name: Update router (add external gateway)
|
||||
os_router:
|
||||
cloud: "{{ cloud }}"
|
||||
state: present
|
||||
name: "{{ router_name }}"
|
||||
network: "{{ external_network_name }}"
|
||||
interfaces:
|
||||
- shade_subnet2
|
||||
- shade_subnet1
|
||||
when:
|
||||
- network_external
|
||||
|
||||
- name: Delete router
|
||||
os_router:
|
||||
|
@ -62,6 +77,8 @@
|
|||
cloud: "{{ cloud }}"
|
||||
state: absent
|
||||
name: shade_subnet2
|
||||
when:
|
||||
- network_external
|
||||
|
||||
- name: Delete internal network
|
||||
os_network:
|
||||
|
@ -74,3 +91,5 @@
|
|||
cloud: "{{ cloud }}"
|
||||
state: absent
|
||||
name: "{{ external_network_name }}"
|
||||
when:
|
||||
- network_external
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
server_network: private
|
||||
server_name: ansible_server
|
||||
flavor: m1.tiny
|
||||
floating_ip_pool_name: public
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
flavor: "{{ flavor }}"
|
||||
network: "{{ server_network }}"
|
||||
floating_ip_pools:
|
||||
- public
|
||||
- "{{ floating_ip_pool_name }}"
|
||||
wait: true
|
||||
register: server
|
||||
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
subnet_name: shade_subnet
|
||||
enable_subnet_dhcp: false
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
network_name: "{{ network_name }}"
|
||||
name: "{{ subnet_name }}"
|
||||
state: present
|
||||
enable_dhcp: false
|
||||
enable_dhcp: "{{ enable_subnet_dhcp }}"
|
||||
dns_nameservers:
|
||||
- 8.8.8.7
|
||||
- 8.8.8.8
|
||||
|
|
Loading…
Reference in New Issue