Commit graph

208 commits

Author SHA1 Message Date
Rutger Spiertz
dec6345fe6 PlayBook: better error message
When a PlayBook has missing arguments the error message now shows which ones are missing.
2014-01-17 10:30:57 +01:00
Matt Martz
f99500d65c Expose the playbook to callback plugins 2014-01-08 14:40:37 -06:00
Michael DeHaan
87258f6d42 Resolve merge commit 2014-01-04 14:03:42 -05:00
Michael DeHaan
a3d90e8a87 Merge pull request #5498 from j2sol/exit_setup_early
Return early from setup step when possible
2014-01-04 10:47:35 -08:00
Michael DeHaan
10350d1639 Update various copyrights. Not complete, but sufficient. 2014-01-04 13:32:04 -05:00
Jesse Keating
35328ed503 Return early from setup step when possible
The _list_available_hosts call can be lengthy, and in the case where
gather_facts is disabled the call is pointless. So re-arrange the logic
to return early from _do_setup_step when gather_facts is false.
2014-01-03 16:39:13 -08:00
Michael DeHaan
8e5b7d3095 Remove code underlying when_* and only_if, which are deprecated features slated for removal in the 1.5 release. 2014-01-03 19:13:21 -05:00
Michael DeHaan
28b9fd4e30 We have had only_if, when_foo, etc, deprecated for a while and said they would be removed in 1.5. Now they are, with friendly error messages still.
Users of these features should use "when:" as documented at docs.ansible.com.

Similarly, include + with_items has been removed.  The solution is to loop
inside the task files, see with_nested / with_together, etc.
2014-01-03 13:47:54 -05:00
James Tanner
dc41bb8085 Merge pull request #4207 from ashorin/ansible
Fail playbook when serial is set and hadlers fail on set.
2013-11-12 14:37:07 -05:00
Alan Descoins
bb6f02d0e8 Support running handler parametrized by name. 2013-11-07 16:54:06 -02:00
James Tanner
91aa7b51df Remove invalid ipv6 parameter from setup execution 2013-11-04 17:23:32 -05:00
James Tanner
c1ed47933b Fixes #4485 add an ipv6 parameter to accelerate so that the daemon will bind to an ipv6 port instead of ipv4 2013-11-04 17:20:03 -05:00
James Tanner
d154bf8781 Revert templating enhancements from 73dbab70 e6c28658 d409352c 9858b1f2 4587528b 9b1fe455 214b0b05 8d3db803 7f9504d1 5031104c 35cb9dc2 2bd8cb57 1e85c754 2013-10-30 10:50:16 -04:00
James Tanner
9b1fe455c6 Fixes #4549 Do not call lookup plugins when templating a task's name 2013-10-25 10:27:38 -04:00
Serge van Ginderachter
6277e770a1 include basedir as 'playbook_dir' variable
closes #4246
2013-10-25 07:53:52 +02:00
jctanner
69fa5954fd Merge pull request #3932 from jocelynj/devel
Add option remote_user to task level, to specify the ssh login user
2013-10-15 06:34:57 -07:00
Michael DeHaan
f081c68a65 Prevent duplicately loaded handlers from running more than once.
Fixes #3863
2013-10-07 17:15:19 -04:00
James Cammarata
912e3a7b0b Merge branch 'accelerate_improvements' into devel
Conflicts:
	library/utilities/accelerate
2013-10-01 21:22:17 -05:00
James Cammarata
8c17711247 Removing accelerate_timeout as a playbook option
This will remain in ansible.cfg only.
2013-10-01 15:33:18 -05:00
James Cammarata
59a5ce23d9 Adding an accelerate_timeout parameter for plays
This setting makes the timeout for each play configurable, rather than
hard-coding it at 300 seconds (now the default if left unspecified)

Fixes #4162
2013-10-01 15:26:50 -05:00
James Cammarata
7aad576f5f Minor change to add a space around role name/task delimiter 2013-09-30 21:51:39 -05:00
James Cammarata
27e8675277 Make the role_name in the task its own field for use in the callback 2013-09-20 15:46:34 -05:00
Kavin Kankeshwar
c24f6f438b Avoid ugly formatting due to a long if statement 2013-09-06 22:37:17 -07:00
kavink
a075ec9831 Bug fix for a crash, when any_errors_fatal is true
Reported by Rumen:

TASK: [fail FAIL] *************************************************************
skipping: [hostname.com]
failed: [hostname.com] => {"failed": true}
msg: Failed as requested from task
Traceback (most recent call last):
  File "/usr/local/bin/ansible-playbook", line 268, in <module>
    sys.exit(main(sys.argv[1:]))
  File "/usr/local/bin/ansible-playbook", line 208, in main
    pb.run()
  File "/Library/Python/2.7/site-packages/ansible/playbook/__init__.py", line 262, in run
    if not self._run_play(play):
  File "/Library/Python/2.7/site-packages/ansible/playbook/__init__.py", line 580, in _run_play
    if (hosts_count - len(host_list)) > int((play.max_fail_pct)/100.0 * hosts_count):
TypeError: object of type 'NoneType' has no len()
2013-09-04 18:30:33 -07:00
James Cammarata
d05c61d1f0 Merge branch 'devel' into fireball2
Conflicts:
	lib/ansible/playbook/__init__.py
	lib/ansible/playbook/play.py
2013-09-02 21:54:02 -05:00
James Cammarata
637d3070dc Allow default variables to be overridden by inventory variables 2013-08-29 17:21:28 -05:00
James Cammarata
959138d00d Added accelerate_port to plays, and made it configurable 2013-08-28 11:14:58 -05:00
James Cammarata
167f185092 Initial support for running gather_facts through fireball2 2013-08-28 11:14:58 -05:00
James Cammarata
521e14a3ad Fireball2 mode working! 2013-08-28 11:14:58 -05:00
Jocelyn Jaubert
4cee6a5435 Add option remote_user to task level, to specify the ssh login user 2013-08-23 23:20:13 +02:00
James Cammarata
ed3e4aff84 Place retry file in the user's home dir instead of /var/lib/tmp
Addresses CVE-2013-4260: predictable filename used for failed results
in world writable directory.
2013-08-21 11:40:46 -05:00
Kavin Kankeshwar
3f247fcbe3 fixes ansible/ansible#3609 Add max_fail_pct to playbook parameter, to complement serial option, So if total number of failures execeed max_fail_pct * total number of hosts, do not go to the next serial batch 2013-08-20 13:55:22 -05:00
Petr Svoboda
e3adfbf5f8 Add tests for undefined variable detection
Tests `test_playbook_undefined_varsX_fail` check if ansible detects
undefined variables when `error_on_undefined_vars` is enabled. These
tests fail without "Improve behavior with error_on_undefined_vars
enabled" patch.

Tests `test_playbook_undefined_varsX_ignore` check if ansible ignores
undefined variables when `error_on_undefined_vars` is disabled.

Also modify PlayBook._run_task_internal() so error_on_undefined_vars is
testable.
2013-08-20 00:40:49 -05:00
René Moser
e8272e365d
implemented 'inventory_file' variable. Closes GH-3789. 2013-08-10 13:04:56 +02:00
James Cammarata
ceff3b6ba3 Minor modification to set_fact with_items patch
Previous patch was reverted due to the fact that there was an issue
with the results not always being a dictionary (they're sometimes
a unicode string, ie. when the with_items is used with yum). This
minor change corrects that by checking for a dict object.
2013-08-09 07:52:14 -05:00
James Cammarata
8be2fc745b Revert "Check for ansible_facts in results for with_ tasks"
This reverts commit 1a4e6e415e.
2013-08-08 20:32:30 -05:00
Serge van Ginderachter
1a4e6e415e Check for ansible_facts in results for with_ tasks
that loop over a lookup plugin. Fixes #3704 and #3735
2013-08-08 12:30:32 -05:00
Chris Church
6ba4331161 Correctly check for failed status from an async task. Use runner_on_async_failed callback (instead of runner_on_failed) when an async task times out. Add runner_on_async_ok callback when a task is started in fire and forget mode. 2013-08-06 12:42:44 -04:00
Michael DeHaan
56a00e0667 Remove dead code. 2013-08-05 16:13:50 -04:00
Michael DeHaan
dec43f7a2b PEP8 indent fix. 2013-08-03 14:54:37 -04:00
Stoned Elipot
841093921b Add extra module path early during playbook parsing.
This should fix issue #3668

Also prevent an extra module path to be added multiple times.
2013-07-28 18:47:26 +02:00
Michael DeHaan
88720516a1 Merge branch 'changed_when' of git://github.com/stoned/ansible into changed_when 2013-07-21 10:14:03 -04:00
Michael DeHaan
f592340f7f Merge branch 'playbook-skip-tags' of git://github.com/dekked/ansible into skip_tags 2013-07-21 09:43:23 -04:00
Michael DeHaan
0f4229f6c4 Merge pull request #3462 from stoned/filtererror
Introduce exception AnsibleFilterError and use it in Jinja filters.  Ign...
2013-07-20 09:12:26 -07:00
Tin Tvrtkovic
4a732c1e9f Enabled the use of extra vars in playbook file paths when including playbooks from other playbooks. 2013-07-18 22:45:18 +02:00
Alan Descoins
04349ec362 Added --skip-tags option to ansible-playbook. 2013-07-16 19:43:58 -03:00
Stoned Elipot
eb45f07ae3 Introduce 'changed_when' keyword to override a task's changed status with the evaluation of a Jinja2 expression 2013-07-14 21:07:45 +02:00
Stoned Elipot
2d88c70cd5 Introduce exception AnsibleFilterError and use it in Jinja filters. Ignore this exception when trying to find the name of a task for display (callback) purpose. 2013-07-07 19:18:32 +02:00
Serge van Ginderachter
2a7f9df109 add support for callback_plugins/ relative to playbook 2013-06-12 23:54:00 +02:00
Chris Church
3f17a39238 Set current play/task to None for callback context when finished running the current play/task. 2013-06-09 12:17:57 -04:00