Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
ansible
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
ansible
Commits
7ba7e3bd
Commit
7ba7e3bd
authored
Jan 15, 2015
by
Matt Martz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add tests for rax_clb
parent
78888922
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
885 additions
and
1 deletions
+885
-1
test/integration/cleanup_rax.py
+28
-1
test/integration/rackspace.yml
+3
-0
test/integration/roles/test_rax_clb/defaults/main.yml
+3
-0
test/integration/roles/test_rax_clb/tasks/main.yml
+851
-0
No files found.
test/integration/cleanup_rax.py
View file @
7ba7e3bd
#!/usr/bin/env python
import
os
import
re
import
yaml
import
argparse
...
...
@@ -11,6 +12,19 @@ except ImportError:
HAS_PYRAX
=
False
def
rax_list_iterator
(
svc
,
*
args
,
**
kwargs
):
method
=
kwargs
.
pop
(
'method'
,
'list'
)
items
=
getattr
(
svc
,
method
)(
*
args
,
**
kwargs
)
while
items
:
retrieved
=
getattr
(
svc
,
method
)(
*
args
,
marker
=
items
[
-
1
]
.
id
,
**
kwargs
)
if
items
and
retrieved
and
items
[
-
1
]
.
id
==
retrieved
[
0
]
.
id
:
del
items
[
-
1
]
items
.
extend
(
retrieved
)
if
len
(
retrieved
)
<
2
:
break
return
items
def
parse_args
():
parser
=
argparse
.
ArgumentParser
()
parser
.
add_argument
(
'-y'
,
'--yes'
,
action
=
'store_true'
,
dest
=
'assumeyes'
,
...
...
@@ -53,15 +67,27 @@ def prompt_and_delete(item, prompt, assumeyes):
def
delete_rax
(
args
):
"""Function for deleting CloudServers"""
search_opts
=
dict
(
name
=
'^
%
s'
%
args
.
match_re
)
for
region
in
pyrax
.
identity
.
services
.
compute
.
regions
:
cs
=
pyrax
.
connect_to_cloudservers
(
region
=
region
)
servers
=
cs
.
servers
.
list
(
search_opts
=
dict
(
name
=
'^
%
s'
%
args
.
match_re
)
)
servers
=
rax_list_iterator
(
cs
.
servers
,
search_opts
=
search_opts
)
for
server
in
servers
:
prompt_and_delete
(
server
,
'Delete matching
%
s? [y/n]: '
%
server
,
args
.
assumeyes
)
def
delete_rax_clb
(
args
):
"""Function for deleting Cloud Load Balancers"""
for
region
in
pyrax
.
identity
.
services
.
load_balancer
.
regions
:
clb
=
pyrax
.
connect_to_cloud_loadbalancers
(
region
=
region
)
for
lb
in
rax_list_iterator
(
clb
):
if
re
.
search
(
args
.
match_re
,
lb
.
name
):
prompt_and_delete
(
lb
,
'Delete matching
%
s? [y/n]: '
%
lb
,
args
.
assumeyes
)
def
main
():
if
not
HAS_PYRAX
:
raise
SystemExit
(
'The pyrax python module is required for this script'
)
...
...
@@ -69,6 +95,7 @@ def main():
args
=
parse_args
()
authenticate
()
delete_rax
(
args
)
delete_rax_clb
(
args
)
if
__name__
==
'__main__'
:
...
...
test/integration/rackspace.yml
View file @
7ba7e3bd
...
...
@@ -7,3 +7,6 @@
roles
:
-
role
:
test_rax
tags
:
test_rax
-
role
:
test_rax_clb
tags
:
test_rax_clb
test/integration/roles/test_rax_clb/defaults/main.yml
0 → 100644
View file @
7ba7e3bd
---
rackspace_region
:
IAD
resource_prefix
:
ansible-testing
test/integration/roles/test_rax_clb/tasks/main.yml
0 → 100644
View file @
7ba7e3bd
---
-
name
:
Check for required variables
assert
:
that
:
-
resource_prefix is defined and resource_prefix
-
rackspace_username is defined and rackspace_username
-
rackspace_api_key is defined and rackspace_api_key
-
rackspace_region is defined and rackspace_region
# ============================================================
-
name
:
Test rax_clb with no args
rax_clb
:
ignore_errors
:
true
register
:
rax_clb
-
name
:
Validate results of rax_clb with no args
assert
:
that
:
-
rax_clb|failed
-
rax_clb.msg == 'No credentials supplied!'
# ============================================================
# ============================================================
-
name
:
Test rax_clb with credentials
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
ignore_errors
:
true
register
:
rax_clb
-
name
:
Validate results of rax_clb with only creds
assert
:
that
:
-
rax_clb|failed
-
rax_clb.msg.startswith('None is not a valid region')
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds and region
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
ignore_errors
:
true
register
:
rax_clb
## This assertion is currently failing, due to the module not providing the correct name of the missing argument
-
name
:
Validate rax_clb creds and region
assert
:
that
:
-
rax_clb|failed
-
rax_clb.msg == 'name is required for rax_clb'
ignore_errors
:
true
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region and name
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-1"
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region and name
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 80
-
rax_clb.balancer.protocol == 'HTTP'
-
rax_clb.balancer.timeout == 30
-
rax_clb.balancer.virtual_ips.0.type == 'PUBLIC'
-
rax_clb.balancer.metadata is not defined
-
rax_clb.balancer.status == 'ACTIVE'
-
rax_clb.balancer.algorithm == 'LEAST_CONNECTIONS'
-
name
:
"
Delete
integration
1"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-1"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
1"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-1"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region, name and protocol
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-2"
protocol
:
TCP
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region, name and protocol
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 80
-
rax_clb.balancer.protocol == 'TCP'
-
rax_clb.balancer.timeout == 30
-
rax_clb.balancer.virtual_ips.0.type == 'PUBLIC'
-
rax_clb.balancer.metadata is not defined
-
rax_clb.balancer.status == 'ACTIVE'
-
name
:
"
Delete
integration
2"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-2"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
2"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-2"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region, name, protocol and port
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-3"
protocol
:
TCP
port
:
8080
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region, name, protocol and port
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 8080
-
rax_clb.balancer.protocol == 'TCP'
-
rax_clb.balancer.timeout == 30
-
rax_clb.balancer.virtual_ips.0.type == 'PUBLIC'
-
rax_clb.balancer.metadata is not defined
-
rax_clb.balancer.status == 'ACTIVE'
-
name
:
"
Delete
integration
3"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-3"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
3"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-3"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region, name, protocol, port and type
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-4"
protocol
:
TCP
port
:
8080
type
:
SERVICENET
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region, name, protocol and type
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 8080
-
rax_clb.balancer.protocol == 'TCP'
-
rax_clb.balancer.timeout == 30
-
rax_clb.balancer.virtual_ips.0.type == 'SERVICENET'
-
rax_clb.balancer.metadata is not defined
-
rax_clb.balancer.status == 'ACTIVE'
-
name
:
"
Delete
integration
4"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-4"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
4"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-4"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with invalid timeout
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-fail"
protocol
:
TCP
port
:
8080
type
:
SERVICENET
timeout
:
1
wait
:
true
ignore_errors
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with invalid timeout
assert
:
that
:
-
rax_clb|failed
-
rax_clb.msg == '"timeout" must be greater than or equal to 30'
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region, name, protocol, port, type and timeout
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-5"
protocol
:
TCP
port
:
8080
type
:
SERVICENET
timeout
:
60
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region, name, protocol, type and timeout
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 8080
-
rax_clb.balancer.protocol == 'TCP'
-
rax_clb.balancer.timeout == 60
-
rax_clb.balancer.virtual_ips.0.type == 'SERVICENET'
-
rax_clb.balancer.metadata is not defined
-
rax_clb.balancer.status == 'ACTIVE'
-
name
:
"
Delete
integration
5"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-5"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
5"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-5"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region, name, protocol, port, type, timeout and algorithm
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-6"
protocol
:
TCP
port
:
8080
type
:
SERVICENET
timeout
:
60
algorithm
:
RANDOM
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region, name, protocol, type, timeout and algorithm
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 8080
-
rax_clb.balancer.protocol == 'TCP'
-
rax_clb.balancer.timeout == 60
-
rax_clb.balancer.virtual_ips.0.type == 'SERVICENET'
-
rax_clb.balancer.metadata is not defined
-
rax_clb.balancer.status == 'ACTIVE'
-
rax_clb.balancer.algorithm == 'RANDOM'
-
name
:
"
Delete
integration
6"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-6"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
6"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-6"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with invalid type
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-fail"
type
:
BAD
timeout
:
1
wait
:
true
ignore_errors
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with invalid timeout
assert
:
that
:
-
rax_clb|failed
-
"
rax_clb.msg
==
'value
of
type
must
be
one
of:
PUBLIC,SERVICENET,
got:
BAD'"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with invalid protocol
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-fail"
protocol
:
BAD
timeout
:
1
wait
:
true
ignore_errors
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with invalid timeout
assert
:
that
:
-
rax_clb|failed
-
"
rax_clb.msg
==
'value
of
protocol
must
be
one
of:
DNS_TCP,DNS_UDP,FTP,HTTP,HTTPS,IMAPS,IMAPv4,LDAP,LDAPS,MYSQL,POP3,POP3S,SMTP,TCP,TCP_CLIENT_FIRST,UDP,UDP_STREAM,SFTP,
got:
BAD'"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with invalid algorithm
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-fail"
algorithm
:
BAD
timeout
:
1
wait
:
true
ignore_errors
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with invalid timeout
assert
:
that
:
-
rax_clb|failed
-
"
rax_clb.msg
==
'value
of
algorithm
must
be
one
of:
RANDOM,LEAST_CONNECTIONS,ROUND_ROBIN,WEIGHTED_LEAST_CONNECTIONS,WEIGHTED_ROUND_ROBIN,
got:
BAD'"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with creds, region, name, protocol, port, type, timeout, algorithm and metadata
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-7"
protocol
:
TCP
port
:
8080
type
:
SERVICENET
timeout
:
60
algorithm
:
RANDOM
meta
:
foo
:
bar
wait
:
true
register
:
rax_clb
-
name
:
Validate rax_clb with creds, region, name, protocol, type, timeout, algorithm and metadata
assert
:
that
:
-
rax_clb|success
-
rax_clb.balancer.port == 8080
-
rax_clb.balancer.protocol == 'TCP'
-
rax_clb.balancer.timeout == 60
-
rax_clb.balancer.virtual_ips.0.type == 'SERVICENET'
-
rax_clb.balancer.status == 'ACTIVE'
-
rax_clb.balancer.algorithm == 'RANDOM'
-
rax_clb.balancer.metadata.0.key == 'foo'
-
rax_clb.balancer.metadata.0.value == 'bar'
-
name
:
"
Delete
integration
7"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-7"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
7"
assert
:
that
:
-
rax_clb|changed
-
rax_clb.balancer.name == "{{ resource_prefix }}-7"
# ============================================================
# ============================================================
-
name
:
Test rax_clb with shared VIP HTTP
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-8-HTTP"
wait
:
true
register
:
rax_clb_http
-
name
:
Validate rax_clb with shared VIP HTTP
assert
:
that
:
-
rax_clb_http|success
-
rax_clb_http.balancer.protocol == 'HTTP'
-
rax_clb_http.balancer.virtual_ips.0.type == 'PUBLIC'
-
rax_clb_http.balancer.status == 'ACTIVE'
-
name
:
Test rax_clb with shared VIP HTTPS
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-8-HTTPS"
protocol
:
HTTPS
port
:
443
wait
:
true
vip_id
:
"
{{
(rax_clb_http.balancer.virtual_ips|first).id
}}"
register
:
rax_clb_https
-
name
:
Validate Test rax_clb with shared VIP
assert
:
that
:
-
rax_clb_https|success
-
rax_clb_https.balancer.protocol == 'HTTPS'
-
rax_clb_https.balancer.status == 'ACTIVE'
-
rax_clb_http.balancer.virtual_ips == rax_clb_https.balancer.virtual_ips
-
name
:
"
Delete
integration
8
HTTP"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-8-HTTP"
state
:
absent
wait
:
true
register
:
rax_clb_http
-
name
:
"
Delete
integration
8
HTTPS"
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-8-HTTPS"
state
:
absent
wait
:
true
register
:
rax_clb_http
-
name
:
"
Validate
delete
integration
8"
assert
:
that
:
-
rax_clb_http|changed
-
rax_clb_https|changed
# ============================================================
# ============================================================
-
name
:
Test rax_clb with updated protocol 1
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-9"
wait
:
true
register
:
rax_clb_p1
-
name
:
Validate rax_clb with updated protocol 1
assert
:
that
:
-
rax_clb_p1|success
-
rax_clb_p1.balancer.protocol == 'HTTP'
-
rax_clb_p1.balancer.virtual_ips.0.type == 'PUBLIC'
-
rax_clb_p1.balancer.status == 'ACTIVE'
-
name
:
Test rax_clb with updated protocol 2
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-9"
protocol
:
TCP
wait
:
true
register
:
rax_clb_p2
-
name
:
Validate rax_clb with updated protocol 2
assert
:
that
:
-
rax_clb_p1.balancer.id == rax_clb_p2.balancer.id
-
rax_clb_p2|success
-
rax_clb_p2|changed
-
rax_clb_p2.balancer.protocol == 'TCP'
-
rax_clb_p2.balancer.status == 'ACTIVE'
-
name
:
Delete integration 9
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-9"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
9"
assert
:
that
:
-
rax_clb|changed
# ============================================================
# ============================================================
-
name
:
Test rax_clb with updated algorithm 1
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-10"
wait
:
true
register
:
rax_clb_a1
-
name
:
Validate rax_clb with updated algorithm 1
assert
:
that
:
-
rax_clb_a1|success
-
rax_clb_a1.balancer.algorithm == 'LEAST_CONNECTIONS'
-
rax_clb_a1.balancer.status == 'ACTIVE'
-
name
:
Test rax_clb with updated algoritm 2
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-10"
algorithm
:
RANDOM
wait
:
true
register
:
rax_clb_a2
-
name
:
Validate rax_clb with updated algorithm 2
assert
:
that
:
-
rax_clb_a1.balancer.id == rax_clb_a2.balancer.id
-
rax_clb_a2|success
-
rax_clb_a2|changed
-
rax_clb_a2.balancer.algorithm == 'RANDOM'
-
rax_clb_a2.balancer.status == 'ACTIVE'
-
name
:
Delete integration 10
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-10"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
10"
assert
:
that
:
-
rax_clb|changed
-
rax_clb_a1.balancer.id == rax_clb.balancer.id
# ============================================================
# ============================================================
-
name
:
Test rax_clb with updated port 1
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-11"
wait
:
true
register
:
rax_clb_1
-
name
:
Validate rax_clb with updated port 1
assert
:
that
:
-
rax_clb_1|success
-
rax_clb_1.balancer.port == 80
-
rax_clb_1.balancer.status == 'ACTIVE'
-
name
:
Test rax_clb with updated port 2
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-11"
port
:
8080
wait
:
true
register
:
rax_clb_2
-
name
:
Validate rax_clb with updated port 2
assert
:
that
:
-
rax_clb_1.balancer.id == rax_clb_2.balancer.id
-
rax_clb_2|success
-
rax_clb_2|changed
-
rax_clb_2.balancer.port == 8080
-
rax_clb_2.balancer.status == 'ACTIVE'
-
name
:
Delete integration 11
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-11"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
11"
assert
:
that
:
-
rax_clb|changed
-
rax_clb_1.balancer.id == rax_clb.balancer.id
# ============================================================
# ============================================================
-
name
:
Test rax_clb with updated timeout 1
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-12"
wait
:
true
register
:
rax_clb_1
-
name
:
Validate rax_clb with updated timeout 1
assert
:
that
:
-
rax_clb_1|success
-
rax_clb_1.balancer.timeout == 30
-
rax_clb_1.balancer.status == 'ACTIVE'
-
name
:
Test rax_clb with updated timeout 2
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-12"
timeout
:
60
wait
:
true
register
:
rax_clb_2
-
name
:
Validate rax_clb with updated timeout 2
assert
:
that
:
-
rax_clb_1.balancer.id == rax_clb_2.balancer.id
-
rax_clb_2|success
-
rax_clb_2|changed
-
rax_clb_2.balancer.timeout == 60
-
rax_clb_2.balancer.status == 'ACTIVE'
-
name
:
Delete integration 12
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-12"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
12"
assert
:
that
:
-
rax_clb|changed
-
rax_clb_1.balancer.id == rax_clb.balancer.id
# ============================================================
# ============================================================
-
name
:
Test rax_clb with invalid updated type 1
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-13"
wait
:
true
register
:
rax_clb_1
-
name
:
Validate rax_clb with invalid updated type 1
assert
:
that
:
-
rax_clb_1|success
-
rax_clb_1.balancer.status == 'ACTIVE'
-
name
:
Test rax_clb with invalid updated type 2
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-13"
type
:
SERVICENET
wait
:
true
register
:
rax_clb_2
ignore_errors
:
true
-
name
:
Validate rax_clb with updated timeout 2
assert
:
that
:
-
rax_clb_2|failed
-
rax_clb_2.msg == 'Load balancer Virtual IP type cannot be changed'
-
name
:
Delete integration 13
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-13"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
13"
assert
:
that
:
-
rax_clb|changed
-
rax_clb_1.balancer.id == rax_clb.balancer.id
# ============================================================
# ============================================================
-
name
:
Test rax_clb with updated meta 1
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-14"
wait
:
true
register
:
rax_clb_1
-
name
:
Validate rax_clb with updated meta 1
assert
:
that
:
-
rax_clb_1|success
-
rax_clb_1.balancer.status == 'ACTIVE'
-
rax_clb_1.balancer.metadata is not defined
-
name
:
Test rax_clb with updated meta 2
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-14"
meta
:
foo
:
bar
wait
:
true
register
:
rax_clb_2
-
name
:
Validate rax_clb with updated meta 2
assert
:
that
:
-
rax_clb_1.balancer.id == rax_clb_2.balancer.id
-
rax_clb_2|success
-
rax_clb_2|changed
-
rax_clb_2.balancer.metadata.0.key == 'foo'
-
rax_clb_2.balancer.metadata.0.value == 'bar'
-
rax_clb_2.balancer.status == 'ACTIVE'
-
name
:
Delete integration 14
rax_clb
:
username
:
"
{{
rackspace_username
}}"
api_key
:
"
{{
rackspace_api_key
}}"
region
:
"
{{
rackspace_region
}}"
name
:
"
{{
resource_prefix
}}-14"
state
:
absent
wait
:
true
register
:
rax_clb
-
name
:
"
Validate
delete
integration
14"
assert
:
that
:
-
rax_clb|changed
-
rax_clb_1.balancer.id == rax_clb.balancer.id
# ============================================================
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment