Michael DeHaan
212296e59c
Merge pull request #1207 from dagwieers/gather_facts-fix
...
Fix gather_facts assumption that SETUP_CACHE for a host is empty
2012-10-02 19:05:54 -07:00
Michael DeHaan
cef73d1545
Merge pull request #1202 from dagwieers/abort-play-abort-playbook
...
Abort a play at the start when no hosts matches, or no hosts are remaining
2012-10-02 19:02:27 -07:00
Dag Wieers
fedfd18774
Fix gather_facts assumption that SETUP_CACHE for a host is empty
...
We now check explicitely for 'module_setup' in the SETUP_CACHE in order to avoid skipping setup because SETUP_CACHE was populated some other way. Other modules can implement the same mechanism to test if they've already run.
This closes #1206 .
2012-10-02 23:17:45 +02:00
Dag Wieers
20c1a67711
Abort a play at the start when no hosts matches, or no hosts are remaining
...
This change makes a distinction between no_hosts_matched and no_hosts_remaining.
In both cases we do not start facts-gathering, or run any tasks.
In the case that there are no more hosts remaining, we abort running tasks and abort the playbook.
I also cleaned up the leftovers from the previous patchsets, as these are no longer required.
This closes #1187 .
Example playbook:
```yaml
---
- hosts: emptygroup
tasks:
- action: command date
- action: command false
- hosts: all
gather_facts: False
tasks:
- action: command ls
- action: command false
- action: command true
- hosts: all
tasks:
- action: command true
- action: command false
- hosts: all
tasks:
- action: command pwd
```
2012-10-02 15:54:24 +02:00
Daniel Hokka Zakrisson
564a212b3c
Only gather facts once per node per playbook run
...
Unless gather_facts: True is on the play
2012-10-02 15:30:19 +02:00
Jan-Piet Mens
5f04ef8b4c
Feature: file info on templates accessible to Jinja2 templates
...
add ansible_managed
2012-10-02 14:15:27 +02:00
Michael DeHaan
14f7c85ce7
Include a space and a colon after prompts, so you don't have to put them in yourself. Consistent with documented behavior in examples/playbooks/prompts.yml
2012-10-01 22:15:34 -04:00
Michael DeHaan
b90eccc4f8
Merge pull request #1186 from dhozac/varreplacewi-nonstr
...
Allow non-string types in with_items variables
2012-10-01 19:10:05 -07:00
Michael DeHaan
5683277e4a
Be smarter about when to abort a playbook -- if it's early, we just didn't match any hosts, so keep on, hosts might be dynamic.
2012-10-01 22:07:08 -04:00
Daniel Hokka Zakrisson
48c5d696d2
Remove debug print statement
2012-10-01 17:23:21 +02:00
Daniel Hokka Zakrisson
a83aa1071b
Give each task its own module_vars
...
Otherwise each task will overwrite the previous' items, among
other things.
2012-10-01 17:17:39 +02:00
Daniel Hokka Zakrisson
695b4bcb46
Allow non-string types in with_items variables
2012-10-01 17:07:51 +02:00
Michael DeHaan
a2f76c1c69
If all hosts in a play fail, fail the whole playbook and don't bother printing out every remaining task.
2012-09-30 21:06:00 -04:00
Michael DeHaan
19b78cedc8
Abort a play when there are no more hosts in it.
2012-09-30 20:48:35 -04:00
Michael DeHaan
5846c1b8c4
Merge pull request #1125 from dagwieers/setup-retain
...
Make sure we retain facts between playbooks
2012-09-30 17:18:40 -07:00
Michael DeHaan
d0eba79760
Template out sudo_user so you can pass in variables using --extra-vars
2012-09-30 20:11:51 -04:00
Michael DeHaan
8e9344eef7
add an error when user tries to async something that can't be asynced
2012-09-30 20:06:55 -04:00
Stephen Fromm
cf3e368d15
Add message reporting skipped action in cli callback
2012-09-30 08:54:20 -07:00
Michael DeHaan
e756ee3741
Merge pull request #1159 from dhozac/include-with_items
...
Allow task includes to work with with_items
2012-09-30 05:13:32 -07:00
Daniel Hokka Zakrisson
8a8ffa2342
Allow task includes to work with with_items
2012-09-30 13:40:52 +02:00
Daniel Hokka Zakrisson
dfee6e19ca
Replace lists with a comma-separated join
2012-09-30 11:41:44 +02:00
Daniel Hokka Zakrisson
62db667760
Fix typo in $FILE()
2012-09-30 01:19:22 +02:00
Michael DeHaan
2d7691500e
Merge pull request #1139 from lorin/config-precedence
...
ANSIBLE_CONFIG take precedence over ./ansible.cfg
2012-09-29 13:27:07 -07:00
Michael DeHaan
1fd5de21d2
Merge pull request #1149 from dhozac/non-greedy-filepipe
...
Complete the change from $FILE{} to $FILE()
2012-09-29 13:25:32 -07:00
Michael DeHaan
8b55217df0
Merge pull request #1148 from dhozac/multiline-only_if
...
Allow multiline strings to work okay in only_if
2012-09-29 13:25:07 -07:00
Daniel Hokka Zakrisson
2d81a1fa77
Complete the change from $FILE{} to $FILE()
...
Otherwise, parsing e.g. '$FILE(myfile)'.find("stuff") will include
everything up to the last ) as the filename.
2012-09-29 21:16:13 +02:00
Daniel Hokka Zakrisson
be9d7df6c4
Allow multiline strings to work okay in only_if
...
Fixes issue #1137
2012-09-29 21:13:19 +02:00
Daniel Hokka Zakrisson
e655e2f051
Raise AnsibleError if $FILE() or $PIPE() fail
2012-09-29 21:09:57 +02:00
Lorin Hochstein
aa5ef9561d
ANSIBLE_CONFIG take precedence over ./ansible.cfg
2012-09-29 10:44:14 -04:00
Michael DeHaan
9377c3f525
Merge pull request #1130 from commandtab/templates-trim-blocks
...
Setting trim_blocks to True
2012-09-29 05:25:56 -07:00
Michael DeHaan
08a77135f3
Merge pull request #1126 from dagwieers/choices-fix
...
Fix to make sure only strings are being joined
2012-09-28 16:12:17 -07:00
Collin Allen
7c600ae0d3
Setting trim_blocks to True
2012-09-28 14:58:05 -07:00
Dag Wieers
27b2ae8ddc
Fix to make sure only strings are being joined
...
Since BOOLEANS also contains integers, joining the list returns an error. Easy to test by giving a wrong value to a boolean argument:
service name=httpd enabled=True
Since True is not in the allowed BOOLEANS, it will cause the error, which in its turn bails out because it joins strings and integers.
We may want to remove the integers from the choices since '0' and '1' are already in the list as strings. Personally I would expect only strings as arguments, not sure where these could be integers ??
2012-09-28 17:51:59 +02:00
Dag Wieers
c84e76e31d
Make sure we retain facts between playbooks
...
This is mandatory if we want to make facts-modules (like network_facts, ilo_facts and esx_facts) work.
2012-09-28 17:44:51 +02:00
Ralph Bean
d25ee940c4
Close zeromq context and socket.
2012-09-28 08:22:53 -04:00
Daniel Hokka Zakrisson
4b29c2cf74
Revert pull request #1091
...
Automatic quoting of variables in only_if breaks existing playbooks
where entire statements are put in a variable, and other cases. See
issue #1120 for details.
2012-09-28 13:58:23 +02:00
Michael DeHaan
618a519ee3
Merge branch 'varreplace-lessre' of git://github.com/dhozac/ansible into devel
2012-09-27 22:08:38 -04:00
Dag Wieers
e7af005408
Revert only_if for variables and templating prompt
...
Since the condition was not templated, it wasn't working.
Only variables in local scope were used, which made this not very practical
2012-09-28 01:32:09 +02:00
Daniel Hokka Zakrisson
9e4fac5ebd
Create a string parser for varReplace instead of using re
...
This fixes a few issues,
- ${foo}${bar} would be parsed as a variable named foo}${bar,
which wouldn't be easily fixed without breaking ${foo.${bar}}
- allows escaping . in variable parts so e.g.
${hostvars.{test.example.com}.foo} works
This is slower than using re. 3 million templating calls take about
about twice as long to complete with this compared to the regexp,
from ~65 seconds to ~115 seconds on my laptop.
2012-09-28 01:03:34 +02:00
Michael DeHaan
6506e17eff
Merge pull request #1109 from dhozac/fix-varReplace-repr
...
Fix only_if statements referencing non-string types
2012-09-27 15:57:50 -07:00
Michael DeHaan
6c6f2b46b4
Merge pull request #1110 from dhozac/rm-assemble-ap
...
Remove assemble action plugin, fix daisychaining
2012-09-27 15:54:27 -07:00
Michael DeHaan
ee5246fc36
Merge pull request #1113 from jpmens/file_pipe
...
Strip trailing white space from $FILE()/$PIPE()
2012-09-27 15:54:09 -07:00
Jan-Piet Mens
42620d2f19
Strip trailing white space from $FILE()/$PIPE()
2012-09-27 23:47:34 +02:00
Daniel Hokka Zakrisson
b55ef665ba
Fix only_if statements referencing non-string types
...
This fixes e.g. only_if: ${task.changed} which would always
evaluate to true due to it having been replaced by a string for its
boolean value. Also adds a test case to ensure it doesn't get
missed again.
2012-09-27 18:36:52 +02:00
Daniel Hokka Zakrisson
66d0acfde3
Remove assemble action plugin, fix daisychaining
2012-09-27 18:30:08 +02:00
Aleksej Romanov
0db5ccfecb
Don't use ssh-agent if password is specified.
2012-09-27 14:57:06 +07:00
Michael DeHaan
69612ba16d
The very first start of 'fireball mode', which uses ansible in SSH mode to deploy a ephemeral zeromq daemon (entirely optional) that is will die after
...
it is no longer used. No key signing will be required. At this point, development use only -- NOT complete.
2012-09-26 23:51:59 -04:00
Michael DeHaan
c63189f650
Make output be cleaner on multi-line failed commands and parse errors.
2012-09-25 20:38:12 -04:00
Michael DeHaan
07101085ca
Merge pull request #1093 from brainpage/make_local_action_consistant
...
2 improvements to delegate_to
2012-09-25 17:17:33 -07:00
Daniel Hokka Zakrisson
84f98534ae
Make varReplace recursive instead of iterative
2012-09-25 20:14:58 -04:00