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
0ae7f996
Commit
0ae7f996
authored
Feb 02, 2013
by
Michael DeHaan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make sure all the lookup plugins are documented.
parent
318e3302
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
53 additions
and
29 deletions
+53
-29
docsite/rst/playbooks2.rst
+52
-27
hacking/module_formatter.py
+1
-2
No files found.
docsite/rst/playbooks2.rst
View file @
0ae7f996
...
@@ -276,17 +276,17 @@ In Ansible 0.8, a few shortcuts are available for testing whether a variable is
...
@@ -276,17 +276,17 @@ In Ansible 0.8, a few shortcuts are available for testing whether a variable is
There is a matching 'is_unset' that works the same way. Quoting the variable inside the function is mandatory.
There is a matching 'is_unset' that works the same way. Quoting the variable inside the function is mandatory.
When combining `only_if` with `with_items`, be aware that the `only_if` statement is processed for each item.
When combining `only_if` with `with_items`, be aware that the `only_if` statement is processed
seperately
for each item.
This is
a deliberate
design::
This is
by
design::
tasks:
tasks:
- action: command echo $item
- action: command echo $item
with_item: [ 0, 2, 4, 6, 8, 10 ]
with_item: [ 0, 2, 4, 6, 8, 10 ]
only_if: "$item > 5"
only_if: "$item > 5"
While `only_if` is a pretty good option for advanced users, it exposes more guts
of the engine
than we'd like, and
While `only_if` is a pretty good option for advanced users, it exposes more guts than we'd like, and
we can do better. In
0.9, we will be adding `when`, which will be like a syntactic sugar for `only_if` and hide
we can do better. In
1.0, we added 'when', which is like syntactic sugar for `only_if` and hides
this level of complexity
-- it will numerous built in operators
.
this level of complexity
. See more on this below
.
Conditional Execution (Simplified)
Conditional Execution (Simplified)
``````````````````````````````````
``````````````````````````````````
...
@@ -435,8 +435,8 @@ More Loops
...
@@ -435,8 +435,8 @@ More Loops
.. versionadded: 0.8
.. versionadded: 0.8
Various 'lookup plugins' allow additional ways to iterate over data. Ansible will have more of these
Various 'lookup plugins' allow additional ways to iterate over data. Ansible will have more of these
over time.
In 0.8, the only lookup plugins that comes stock are 'with_fileglob' and 'with_sequence', but
over time.
You can write your own, as is covered in the API section. Each typically takes a list and
you can also write your own
.
can accept more than one parameter
.
'with_fileglob' matches all files in a single directory, non-recursively, that match a pattern. It can
'with_fileglob' matches all files in a single directory, non-recursively, that match a pattern. It can
be used like this::
be used like this::
...
@@ -451,26 +451,61 @@ be used like this::
...
@@ -451,26 +451,61 @@ be used like this::
# copy each file over that matches the given pattern
# copy each file over that matches the given pattern
- action: copy src=$item dest=/etc/fooapp/ owner=root mode=600
- action: copy src=$item dest=/etc/fooapp/ owner=root mode=600
with_fileglob: /playbooks/files/fooapp/*
with_fileglob:
- /playbooks/files/fooapp/*
.. versionadded: 0.9
Many new lookup abilities were added in 0.9. Remeber lookup plugins are run on the "controlling" machine::
---
- hosts: all
tasks:
- action: debug msg="$item is an environment variable"
with_env:
- HOME
- LANG
- action: debug msg="$item is a line from the result of this command"
with_lines:
- cat /etc/motd
- action: debug msg="$item is the raw result of running this command"
with_pipe:
- date
- action: debug msg="$item is value in Redis for somekey"
with_redis_kv:
- redis://localhost:6379,somekey
- action: debug msg="$item is a DNS TXT record for example.com"
with_dnstxt:
- example.com
- action: debug msg="$item is a value from evaluation of this template"
with_template:
- ./some_template.j2
.. versionadded: 1.0
.. versionadded: 1.0
'with_sequence' generates a sequence of items in ascending numerical order. You
'with_sequence' generates a sequence of items in ascending numerical order. You
can specify a 'start', an 'end' value (inclusive), and a 'stride' value (to skip
can specify a start, end, and an optional step value.
some numbers of values), and a printf-style 'format' string. It accepts
arguments both as key-value pairs and in a shortcut of the form
"[start-]end[/stride][:format]". All numerical values can be specified in
hexadecimal (i.e. 0x3f8) or octal (i.e. 0644). Negative numbers are not
supported. Here is an example that leverages most of its features::
----
Arguments can be either key-value pairs or as a shortcut in the format
"[start-]end[/stride][:format]". The format is a printf style string.
Numerical values can be specified in decimal, hexadecimal (0x3f8) or octal (0600).
Negative numbers are not supported. This works as follows::
---
- hosts: all
- hosts: all
tasks:
tasks:
# create groups
# create groups
- group: name=evens state=present
- group: name=evens state=present
- group: name=odds state=present
- group: name=odds state=present
# create 32 test users
# create 32 test users
...
@@ -484,17 +519,7 @@ supported. Here is an example that leverages most of its features::
...
@@ -484,17 +519,7 @@ supported. Here is an example that leverages most of its features::
- file: dest=/var/stuff/$item state=directory
- file: dest=/var/stuff/$item state=directory
with_sequence: start=4 end=16
with_sequence: start=4 end=16
The key-value form also supports a 'count' option, which always generates
# a simpler way to use the sequence plugin
'count' entries regardless of the stride. The count option is mostly useful for
avoiding off-by-one errors and errors calculating the number of entries in a
sequence when a stride is specified. The shortcut form cannot be used to
specify a count. As an example::
----
- hosts: all
tasks:
# create 4 groups
# create 4 groups
- group: name=group${item} state=present
- group: name=group${item} state=present
with_sequence: count=4
with_sequence: count=4
...
...
hacking/module_formatter.py
View file @
0ae7f996
...
@@ -30,8 +30,7 @@ import time
...
@@ -30,8 +30,7 @@ import time
import
datetime
import
datetime
import
subprocess
import
subprocess
import
ansible.utils
import
ansible.utils
from
ansible.utils
import
module_docs
import
ansible.utils.module_docs
as
module_docs
# Get parent directory of the directory this script lives in
# Get parent directory of the directory this script lives in
MODULEDIR
=
os
.
path
.
abspath
(
os
.
path
.
join
(
MODULEDIR
=
os
.
path
.
abspath
(
os
.
path
.
join
(
...
...
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