Add test_rax_network role

This commit is contained in:
Matt Martz 2015-01-16 15:25:32 -06:00
parent e54c45ee6d
commit f01ae9f509
4 changed files with 182 additions and 1 deletions

View file

@ -102,6 +102,18 @@ def delete_rax_keypair(args):
args.assumeyes)
def delete_rax_network(args):
"""Function for deleting Cloud Networks"""
print ("--- Cleaning Cloud Networks matching '%s'" % args.match_re)
for region in pyrax.identity.services.network.regions:
cnw = pyrax.connect_to_cloud_networks(region=region)
for network in cnw.list():
if re.search(args.match_re, network.name):
prompt_and_delete(network,
'Delete matching %s? [y/n]: ' % network,
args.assumeyes)
def main():
if not HAS_PYRAX:
raise SystemExit('The pyrax python module is required for this script')
@ -111,6 +123,11 @@ def main():
delete_rax(args)
delete_rax_clb(args)
delete_rax_keypair(args)
delete_rax_network(args)
if __name__ == '__main__':
main()
try:
main()
except KeyboardInterrupt:
print ('\nExiting...')

View file

@ -27,3 +27,6 @@
- role: test_rax_clb_nodes
tags: test_rax_clb_nodes
- role: test_rax_network
tags: test_rax_network

View file

@ -0,0 +1,3 @@
dependencies:
- prepare_tests
- prepare_rax_tests

View file

@ -0,0 +1,158 @@
# ============================================================
- name: Test rax_network with no args
rax_network:
ignore_errors: true
register: rax_network
- name: Validate results of rax_network with no args
assert:
that:
- rax_network|failed
- rax_network.msg == 'missing required arguments: label'
# ============================================================
# ============================================================
- name: Test rax_network with label
rax_network:
label: fail
ignore_errors: true
register: rax_network
- name: Validate results of rax_network with no args
assert:
that:
- rax_network|failed
- rax_network.msg == 'No credentials supplied!'
# ============================================================
# ============================================================
- name: Test rax_network with creds
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
label: fail
ignore_errors: true
register: rax_network
- name: Validate results of rax_network with creds
assert:
that:
- rax_network|failed
- rax_network.msg.startswith('None is not a valid region')
# ============================================================
# ============================================================
- name: Test rax_network with creds and region
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
label: fail
ignore_errors: true
register: rax_network
- name: Validate results of rax_network with creds and region
assert:
that:
- rax_network|failed
- rax_network.msg == 'missing required arguments: cidr'
# ============================================================
# ============================================================
- name: Test rax_network with creds, region and cidr
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
cidr: "172.17.141.0/24"
label: "{{ resource_prefix }}-1"
register: rax_network
- name: Validate results of rax_network with creds, region and cidr
assert:
that:
- rax_network|success
- rax_network|changed
- rax_network.networks.0.cidr == "172.17.141.0/24"
- rax_network.networks.0.label == "{{ resource_prefix }}-1"
- name: Delete Integration 1
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
label: "{{ resource_prefix }}-1"
state: absent
register: rax_network
- name: Validate delete integration 1
assert:
that:
- rax_network|changed
- rax_network|success
- rax_network.networks.0.label == "{{ resource_prefix }}-1"
- rax_network.networks.0.cidr == "172.17.141.0/24"
# ============================================================
# ============================================================
- name: Test rax_network idempotency 1
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
cidr: "172.17.142.0/24"
label: "{{ resource_prefix }}-2"
register: rax_network
- name: Validate rax_network idempotency 1
assert:
that:
- rax_network|success
- rax_network|changed
- rax_network.networks.0.cidr == "172.17.142.0/24"
- rax_network.networks.0.label == "{{ resource_prefix }}-2"
- name: Test rax_network idempotency 2
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
cidr: "172.17.142.0/24"
label: "{{ resource_prefix }}-2"
register: rax_network
- name: Validate rax_network idempotency 2
assert:
that:
- rax_network|success
- not rax_network|changed
- rax_network.networks.0.cidr == "172.17.142.0/24"
- rax_network.networks.0.label == "{{ resource_prefix }}-2"
- name: Delete Integration 2
rax_network:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
label: "{{ resource_prefix }}-2"
state: absent
register: rax_network
- name: Validate delete integration 2
assert:
that:
- rax_network|changed
- rax_network|success
- rax_network.networks.0.label == "{{ resource_prefix }}-2"
- rax_network.networks.0.cidr == "172.17.142.0/24"
# ============================================================