Daniel Hokka Zakrisson
e74ffd6764
Lookup plugin arguments need to be templated
2012-11-14 11:17:30 +01:00
Dag Wieers
302eeae65d
Do not register variable if host has been skipped
...
Executive summary: skipping a host corrupts a variable (when it is registered)
We have a play existing out of multiple tasks that check a condition, if one of these tasks fails we want to skip all next tasks in the playbook. I noticed that if we skip a task because a certain condition is met, and this task has a register-attribute, I loose the value in the variable. Which means we cannot use that variable in subsequent tasks to evaluate because it was skipped:
```
- action: command test -d /some/directory
register: task
- action: command test -f /some/directory/file
register: task
only_if: '${task.rc} == 0'
- action: do something else
only_if: '${task.rc} == 0'
```
In the above example, if the second task is skipped (because the first failed), the third action will end with a "SyntaxError: invalid syntax" complaining about the unsubstituted ${task.rc} (even though it was set by the first task and used for skipping the second).
The following play demonstrates the problem:
```
- name: Test register on ignored tasks
hosts: all
gather_facts: no
vars:
skip: true
task: { 'rc': 666 }
tasks:
- action: debug msg='skip = ${skip}, task.rc = ${task.rc}'
- name: Skip this task, just to test if task has changed
action: command ls
register: task
only_if: '${skip} != True'
- action: debug msg='skip = ${skip}, task.rc = ${task.rc}'
- name: Now use task value
action: command echo 'Works !'
only_if: '${task.rc} == 0'
```
And the enclosed fix, fixes the above problem.
2012-11-13 16:57:10 +01:00
Michael DeHaan
44af1408ee
Merge pull request #1611 from dhozac/no-hostvars-templating
...
Keep hostvars from being templated
2012-11-13 05:20:48 -08:00
Michael DeHaan
6793bcbe4d
Merge pull request #1613 from dhozac/use-all-vars-for-hosts-template
...
Use all available vars for hosts:, user: and sudo_user:
2012-11-13 04:47:03 -08:00
Michael DeHaan
2303f65a1a
Merge pull request #1614 from dagwieers/missing-action-error
...
Print the task name (if any) when complaining
2012-11-13 04:46:41 -08:00
Michael DeHaan
7a48525357
Merge pull request #1612 from dhozac/play-vars-list
...
Make parameterized playbook includes work with vars as a list
2012-11-13 04:45:58 -08:00
Dag Wieers
b96877e5aa
Print the task name (if any) when complaining
...
After spending 10 minutes to find which playbook had an action/local_action missing, I changed the error to include the task name (if set). The error eventually was caused because I added a name to a task, but the dash before the existing action was not removed.
2012-11-13 12:53:42 +01:00
Daniel Hokka Zakrisson
0be1f11ed5
Use all available vars for hosts:, user: and sudo_user:
2012-11-13 12:20:07 +01:00
Daniel Hokka Zakrisson
eebbbd3f0e
Make parameterized playbook includes work with vars as a list
...
Fixes #1610 .
2012-11-13 12:12:18 +01:00
Daniel Hokka Zakrisson
5752d2a850
Fix lookup plugin test properly
2012-11-13 12:09:42 +01:00
Daniel Hokka Zakrisson
c200c26ced
Keep hostvars from being templated
2012-11-13 11:34:34 +01:00
Michael DeHaan
e3f7f86ac4
Merge pull request #1608 from dhozac/when_set-non-string
...
Try to ensure the entire value is quoted
2012-11-12 17:45:47 -08:00
Michael DeHaan
d5be13c3f0
Merge pull request #1605 from romeotheriault/add-md5-support-to-fetch-module
...
add bsd md5 support to fetch module
2012-11-12 17:45:07 -08:00
Michael DeHaan
96e5408046
Merge pull request #1607 from dhozac/j2-templated-vars
...
Templating fixes and features
2012-11-12 17:44:09 -08:00
Daniel Hokka Zakrisson
0ca1775bda
Try to ensure the entire value is quoted
2012-11-13 02:40:29 +01:00
Daniel Hokka Zakrisson
25a8787e95
Template all variables before returning them to Jinja2
2012-11-13 02:39:33 +01:00
Michael DeHaan
df458fb3b5
Merge pull request #1606 from romeotheriault/minor-linux-user-fixes
...
minor linux user module fixups
2012-11-12 17:39:07 -08:00
Daniel Hokka Zakrisson
d2dce1d63f
Make lookup plugin replacements part of the main variable logic
2012-11-13 02:18:05 +01:00
Daniel Hokka Zakrisson
f91fa9f765
Fix lookup plugin test
2012-11-13 02:13:10 +01:00
Daniel Hokka Zakrisson
a2bb3a09d2
Completely ignore stray $ in input
...
Previously, "a $ string $var" would not have gotten replaced at all.
2012-11-13 02:13:10 +01:00
Daniel Hokka Zakrisson
24b536d7ed
Add some comments to templating system
2012-11-13 02:13:04 +01:00
Romeo Theriault
ae36fb1dc6
minor linux user module fixups
2012-11-12 11:13:51 -10:00
Romeo Theriault
4cd133ed8f
add bsd md5 support to fetch module
2012-11-12 10:37:00 -10:00
Michael DeHaan
8f9bef9d51
Merge pull request #1604 from dhozac/consume-module_vars-early
...
Template using module_vars early
2012-11-12 08:24:00 -08:00
Daniel Hokka Zakrisson
233a36b9e8
Template using module_vars early
...
Since no basedir is available at that time, avoid invoking
lookup plugins since they assume it is present.
2012-11-12 16:53:24 +01:00
Michael DeHaan
f54af8f0f6
Merge pull request #1603 from dagwieers/rpm-makefile-fix
...
moduleformatter.py should include our own ansible clone
2012-11-12 05:25:38 -08:00
Dag Wieers
a162fa70da
moduleformatter.py should include our own ansible clone
...
Without this, module_formatter.py relies on the installed ansible which is wrong in more than one way.
2012-11-12 14:22:30 +01:00
Michael DeHaan
c890ae18e7
Merge pull request #1575 from dhozac/parameterized-playbook-include
...
Add parameterized playbook includes
2012-11-12 05:17:38 -08:00
Michael DeHaan
3e855a5fcd
Merge pull request #1593 from dhozac/lookup_generic
...
Add support for generic $XXX() to call $LOOKUP()
2012-11-12 05:07:52 -08:00
Michael DeHaan
451f05fa3d
Merge pull request #1594 from sfromm/issue1342
...
Add ability to specify syslog facility for modules
2012-11-12 05:06:47 -08:00
Michael DeHaan
2f517f1cd3
Merge pull request #1600 from fdavis/devel
...
ansible-playbook verifies playbooks exist before running them
2012-11-12 05:05:03 -08:00
Michael DeHaan
753ee0b88d
Merge pull request #1601 from romeotheriault/fix-remote-md5-for-solaris10
...
remove verbose option on digest call
2012-11-12 05:01:50 -08:00
Romeo Theriault
54b7f59416
remove verbose option on digest call
2012-11-11 19:43:40 -10:00
fdavis
7256c5af1a
ansible-playbook verifies playbooks exist before running them
...
refers to #1345
2012-11-11 18:08:35 -08:00
Michael DeHaan
68e16773ae
Merge pull request #1595 from sfromm/issue1564
...
Add --limit to calls to ansible and ansible-playbook
2012-11-11 16:23:34 -08:00
Michael DeHaan
da210c3eff
Added changelog note about 'when'
2012-11-11 11:59:38 -05:00
Michael DeHaan
9c16b3fc91
Organize 0.9 changelog
2012-11-11 11:55:28 -05:00
Michael DeHaan
a56dc03180
update changelog
2012-11-11 11:43:31 -05:00
Stephen Fromm
06e54c0b97
Add ability to specify syslog facility for modules
...
Update constants.py so that one can specify environmental variable
ANSIBLE_SYSLOG_FACILITY or syslog_facility in ansible.cfg to define
the syslog facility to use. Alternatively, you can specify
ansible_syslog_facility in inventory. Runner now replaces
the syslog facility in the openlog() call with the default or
the injected variables ansible_syslog_facility.
This also updates hacking/test-module to behave similarly.
2012-11-11 00:14:08 -08:00
Stephen Fromm
4ae3bee416
Add --limit to calls to ansible and ansible-playbook
...
--limit takes localhost, FQDN, and 127.0.0.1.
2012-11-11 00:13:59 -08:00
Daniel Hokka Zakrisson
9924555623
Add support for generic $XXX() to call $LOOKUP()
2012-11-10 23:46:37 +01:00
Michael DeHaan
40e49b6a5a
Merge pull request #1592 from jpmens/lookup_dnstxt3
...
$LOOKUP(dnstxt): handle exceptions
2012-11-10 08:52:30 -08:00
Jan-Piet Mens
bd55899a60
$LOOKUP(dnstxt): handle exceptions
...
de-spaced
2012-11-10 17:50:21 +01:00
Michael DeHaan
001e2e564f
Merge pull request #1590 from romeotheriault/minor-freebsd-user-module-fixes
...
minor freebsd user fixes
2012-11-10 06:33:13 -08:00
Michael DeHaan
80f196fdbc
Merge pull request #1589 from romeotheriault/add-sunos-user-support
...
Add solaris support to user module
2012-11-10 06:32:41 -08:00
Michael DeHaan
db3e8c0803
Merge pull request #1579 from jpmens/lookup_env
...
Add environment $LOOKUP plugin
2012-11-10 06:30:37 -08:00
Michael DeHaan
35679e0093
Merge pull request #1578 from jpmens/lookup_redis
...
Add Redis GET $LOOKUP plugin
2012-11-10 06:30:10 -08:00
Romeo Theriault
6c6bcff4ee
minor freebsd user fixes
2012-11-09 22:29:45 -10:00
Romeo Theriault
3bab27abdb
Add solaris support to user module
2012-11-09 21:58:51 -10:00
Jan-Piet Mens
6efc98e8a3
Add environment $LOOKUP plugin
...
remove support for multiple vars
2012-11-10 08:26:09 +01:00