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
074263af
Commit
074263af
authored
Jan 23, 2014
by
Matt Martz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add rackconnect and managed cloud automation check examples
parent
b3bbca03
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
221 additions
and
6 deletions
+221
-6
docsite/rst/guide_rax.rst
+221
-6
No files found.
docsite/rst/guide_rax.rst
View file @
074263af
...
...
@@ -407,10 +407,10 @@ Use Cases
This
section
covers
some
additional
usage
examples
built
around
a
specific
use
case
.
..
_
example_1
:
..
_
network_and_server
:
Example
1
+++++++++
Network
and
Server
+++++++++
+++++++++
Create
an
isolated
cloud
network
and
build
a
server
...
...
@@ -450,10 +450,10 @@ Create an isolated cloud network and build a server
wait_timeout
:
360
register
:
rax
..
_
example_2
:
..
_
complete_environment
:
Example
2
+++++++++
Complete
Environment
+++++++++
+++++++++++
Build
a
complete
webserver
environment
with
servers
,
custom
networks
and
load
balancers
,
install
nginx
and
create
a
custom
index
.
html
...
...
@@ -556,6 +556,221 @@ Build a complete webserver environment with servers, custom networks and load ba
copy
:
content
=
"{{ inventory_hostname }}"
dest
=/
usr
/
share
/
nginx
/
www
/
index
.
html
owner
=
root
group
=
root
mode
=
0644
..
_rackconnect_and_manged_cloud
:
RackConnect
and
Managed
Cloud
+++++++++++++++++++++++++++++
When
using
RackConnect
version
2
or
Rackspace
Managed
Cloud
there
are
Rackspace
automation
tasks
that
are
executed
on
the
servers
you
create
after
they
are
successfully
built
.
If
your
automation
executes
before
the
RackConnect
or
Managed
Cloud
automation
,
you
can
cause
failures
and
un
-
usable
servers
.
These
examples
show
creating
servers
,
and
ensuring
that
the
Rackspace
automation
has
completed
before
Ansible
continues
onwards
.
For
simplicity
,
these
examples
are
joined
,
however
both
are
only
needed
when
using
RackConnect
.
When
only
using
Managed
Cloud
,
the
RackConnect
portion
can
be
ignored
.
The
RackConnect
portions
only
apply
to
RackConnect
version
2.
..
_using_a_control_machine
:
Using
a
Control
Machine
***********************
..
code
-
block
::
yaml
-
name
:
Create
an
exact
count
of
servers
hosts
:
localhost
connection
:
local
gather_facts
:
False
tasks
:
-
name
:
Server
build
requests
local_action
:
module
:
rax
credentials
:
~/.
raxpub
name
:
web
%
03
d
.
example
.
org
flavor
:
performance1
-
1
image
:
ubuntu
-
1204
-
lts
-
precise
-
pangolin
disk_config
:
manual
region
:
DFW
state
:
present
count
:
1
exact_count
:
yes
group
:
web
wait
:
yes
register
:
rax
-
name
:
Add
servers
to
in
memory
groups
local_action
:
module
:
add_host
hostname
:
"{{ item.name }}"
ansible_ssh_host
:
"{{ item.rax_accessipv4 }}"
ansible_ssh_pass
:
"{{ item.rax_adminpass }}"
ansible_ssh_user
:
root
rax_id
:
"{{ item.rax_id }}"
groups
:
web
,
new_web
with_items
:
rax
.
success
when
:
rax
.
action
==
'create'
-
name
:
Wait
for
rackconnect
and
managed
cloud
automation
to
complete
hosts
:
new_web
gather_facts
:
false
tasks
:
-
name
:
Wait
for
rackconnnect
automation
to
complete
local_action
:
module
:
rax_facts
credentials
:
~/.
raxpub
id
:
"{{ rax_id }}"
region
:
DFW
register
:
rax_facts
until
:
rax_facts
.
ansible_facts
[
'rax_metadata'
][
'rackconnect_automation_status'
]|
default
(
''
)
==
'DEPLOYED'
retries
:
30
delay
:
10
-
name
:
Wait
for
managed
cloud
automation
to
complete
local_action
:
module
:
rax_facts
credentials
:
~/.
raxpub
id
:
"{{ rax_id }}"
region
:
DFW
register
:
rax_facts
until
:
rax_facts
.
ansible_facts
[
'rax_metadata'
][
'rax_service_level_automation'
]|
default
(
''
)
==
'Complete'
retries
:
30
delay
:
10
-
name
:
Base
Configure
Servers
hosts
:
web
roles
:
-
role
:
users
-
role
:
openssh
opensshd_PermitRootLogin
:
"no"
-
role
:
ntp
..
_using_ansible_pull
:
Using
Ansible
Pull
******************
..
code
-
block
::
yaml
---
-
name
:
Ensure
Rackconnect
and
Managed
Cloud
Automation
is
complete
hosts
:
all
connection
:
local
tasks
:
-
name
:
Check
for
completed
bootstrap
stat
:
path
:
/
etc
/
bootstrap_complete
register
:
bootstrap
-
name
:
Get
region
command
:
xenstore
-
read
vm
-
data
/
provider_data
/
region
register
:
rax_region
when
:
bootstrap
.
stat
.
exists
!= True
-
name
:
Wait
for
rackconnect
automation
to
complete
uri
:
url
:
"https://{{ rax_region.stdout|trim }}.api.rackconnect.rackspace.com/v1/automation_status?format=json"
return_content
:
yes
register
:
automation_status
when
:
bootstrap
.
stat
.
exists
!= True
until
:
automation_status
[
'automation_status'
]|
default
(
''
)
==
'DEPLOYED'
retries
:
30
delay
:
10
-
name
:
Wait
for
managed
cloud
automation
to
complete
wait_for
:
path
:
/
tmp
/
rs_managed_cloud_automation_complete
delay
:
10
when
:
bootstrap
.
stat
.
exists
!= True
-
name
:
Set
bootstrap
completed
file
:
path
:
/
etc
/
bootstrap_complete
state
:
touch
owner
:
root
group
:
root
mode
:
0400
-
name
:
Base
Configure
Servers
hosts
:
all
connection
:
local
roles
:
-
role
:
users
-
role
:
openssh
opensshd_PermitRootLogin
:
"no"
-
role
:
ntp
..
_using_ansible_pull_with_xenstore
:
Using
Ansible
Pull
with
XenStore
********************************
..
code
-
block
::
yaml
---
-
name
:
Ensure
Rackconnect
and
Managed
Cloud
Automation
is
complete
hosts
:
all
connection
:
local
tasks
:
-
name
:
Check
for
completed
bootstrap
stat
:
path
:
/
etc
/
bootstrap_complete
register
:
bootstrap
-
name
:
Wait
for
rackconnect_automation_status
xenstore
key
to
exist
command
:
xenstore
-
exists
vm
-
data
/
user
-
metadata
/
rackconnect_automation_status
register
:
rcas_exists
when
:
bootstrap
.
stat
.
exists
!= True
failed_when
:
rcas_exists
.
rc
|
int
>
1
until
:
rcas_exists
.
rc
|
int
==
0
retries
:
30
delay
:
10
-
name
:
Wait
for
rackconnect
automation
to
complete
command
:
xenstore
-
read
vm
-
data
/
user
-
metadata
/
rackconnect_automation_status
register
:
rcas
when
:
bootstrap
.
stat
.
exists
!= True
until
:
rcas
.
stdout
|
replace
(
'"'
,
''
)
==
'DEPLOYED'
retries
:
30
delay
:
10
-
name
:
Wait
for
rax_service_level_automation
xenstore
key
to
exist
command
:
xenstore
-
exists
vm
-
data
/
user
-
metadata
/
rax_service_level_automation
register
:
rsla_exists
when
:
bootstrap
.
stat
.
exists
!= True
failed_when
:
rsla_exists
.
rc
|
int
>
1
until
:
rsla_exists
.
rc
|
int
==
0
retries
:
30
delay
:
10
-
name
:
Wait
for
managed
cloud
automation
to
complete
command
:
xenstore
-
read
vm
-
data
/
user
-
metadata
/
rackconnect_automation_status
register
:
rsla
when
:
bootstrap
.
stat
.
exists
!= True
until
:
rsla
.
stdout
|
replace
(
'"'
,
''
)
==
'DEPLOYED'
retries
:
30
delay
:
10
-
name
:
Set
bootstrap
completed
file
:
path
:
/
etc
/
bootstrap_complete
state
:
touch
owner
:
root
group
:
root
mode
:
0400
-
name
:
Base
Configure
Servers
hosts
:
all
connection
:
local
roles
:
-
role
:
users
-
role
:
openssh
opensshd_PermitRootLogin
:
"no"
-
role
:
ntp
..
_advanced_usage
:
...
...
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