Commit graph

2102 commits

Author SHA1 Message Date
Serge van Ginderachter
6277e770a1 include basedir as 'playbook_dir' variable
closes #4246
2013-10-25 07:53:52 +02:00
James Tanner
b803aac6ec Fixes #4500 change ec2 module params to type=bool
Revert 4833c2fdf0
2013-10-24 09:19:25 -04:00
James Cammarata
b9dd514713 Minor fix for putting 0-length files over accelerated connections
Fixes #4652
2013-10-23 13:09:25 -07:00
James Tanner
4833c2fdf0 Fixes #4500 python bools return uppercase True and False, so allow those for BOOLEANS in module common 2013-10-23 15:54:36 -04:00
James Tanner
214b0b052c Fixes #4608 add lookup to template globals to make plugins work again 2013-10-22 12:00:54 -04:00
James Tanner
4f13967386 Fixes #4536 Get the remote_user from multiple sources in a preferred order 2013-10-21 12:07:51 -04:00
Timothy Appnel
cbae9c913e synchronize module src and dest handles template markers. 2013-10-19 22:39:25 -04:00
Michael DeHaan
60944b81f0 Provide warning about "with_items: '{{ loop }}'" being redundant only when {{ starts the expression value. Fixes #4582. 2013-10-19 14:24:12 -04:00
Michael DeHaan
2bd8cb5790 Make the deprecation detector in templates more accurate. Fixes #4514. 2013-10-19 14:14:16 -04:00
Michael DeHaan
4125b05bf3 Allow a defaults file to solely define a role. Some typo fixes. 2013-10-19 14:01:20 -04:00
Michael DeHaan
64bbeb9d24 Suggest fixing unbalanced quotes in a bit less cases. Fixes #4501 2013-10-19 13:57:28 -04:00
Michael DeHaan
7f9504d14d Fix a typo. 2013-10-19 13:52:48 -04:00
Michael DeHaan
8d3db80370 Some misc cleanup and removal of unused imports. 2013-10-19 13:50:14 -04:00
Michael DeHaan
21d4400c96 Misc pep8 fixes 2013-10-19 13:03:15 -04:00
Michael DeHaan
c933a4c59a Fix indentation depth. 2013-10-19 13:03:14 -04:00
Michael DeHaan
5031104c3a Finishing touches on template cleanup. 2013-10-19 11:40:48 -04:00
Michael DeHaan
1e85c7544b Further WIP on template cleanup. 2013-10-19 11:39:52 -04:00
Michael DeHaan
35cb9dc22f Work in progress about cleaning up template code. 2013-10-19 11:39:52 -04:00
Brian Coca
c476ed93ca now correctly changes script permission in all cases
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2013-10-18 16:52:15 -04:00
James Tanner
8478e82647 Fixes #4583 enforce that vars_files is a list 2013-10-18 11:19:16 -04:00
Michael DeHaan
b0f6e77f66 Merge pull request #4571 from tgerla/whitespace
add_group module: strip trailing/leading whitespace from comma-separated group names
2013-10-17 16:09:09 -07:00
Tim Gerla
51a1709253 add_group module: strip trailing/leading whitespace from comma-separated group names 2013-10-17 14:13:55 -07:00
James Tanner
242f20c297 Fixes #4402 wrong order for isinstance parameters in dnstxt.py 2013-10-17 15:43:39 -04:00
jctanner
6480945184 Merge pull request #4541 from Kami/improve_template_render_error_messages
Make errors which get thrown during template rendering more user-friendly
2013-10-16 17:52:07 -07:00
Stoned Elipot
4430d0f5a6 when searching for a plugin only look for a regular file 2013-10-16 21:23:37 +02:00
Tomaz Muraus
922f61899e Throw a more user-friendly exception during template rendering process. 2013-10-16 16:48:17 +02:00
Gabe Mulley
84a57b7545 ensure non-root users can read arguments file when using sudo_user
Non-standard modules must read in the arguments file in order to access their arguments, however, when this file is transfered to the remote host it may only have the permissions 600.  This means that using sudo and sudo_user will result in permission denied errors when attempting to read the arguments file.

This patch fixes #4438 by explicitly forcing the arguments file to be world readable before executing the module.
2013-10-16 08:18:11 -04:00
Brian Coca
bd9acedb57 fixed name colision between warnings dict and module
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2013-10-15 14:58:15 -04: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
e131de4de0 Added "debug: var=variableName" capability. 2013-10-14 21:01:38 -04:00
egghead
ca7e2d283c Adding os realpath filter.
This is particularly useful when wanting to get the absolute path of filepaths found by the 'fileglob' filter.
This also lets you provide absolute paths to roles, which search for files in different areas unless absolutely pathed.
2013-10-14 23:41:16 +00:00
Michael DeHaan
c90a82fd52 Handle possible scenario where conditional might be an integer (whoa!) down the error path. Super rare but fixes #4483. 2013-10-13 09:19:41 -04:00
Michael DeHaan
9ea54fcaaf Fixes a dev branch glitch where a conditional could be applied to multiple tasks. Also improves the errors on parsing bad conditionals to make them less confusing to users. 2013-10-12 17:39:28 -04:00
Thomas Omans
632232259a Adding config flag role_path for common/global roles
Using ANSIBLE_ROLE_PATH environment variable or role_path in ansible.cfg
can configure paths where roles will be searched for
extra paths will only be used as a backup once regular locations are exhausted
2013-10-12 10:15:30 -04:00
Michael DeHaan
43df00550d Merge pull request #3827 from mscherer/disable_callbacks
add a way for callback to disable itself
2013-10-12 07:03:06 -07:00
Michael DeHaan
1b2d4c328c Cache patterns a bit higher up to make things a little more efficient. See #4469. 2013-10-11 22:24:37 -04:00
Michael DeHaan
d168c709d5 Fix an issue where the ordering of an include statement is processed ahead of the conditional in the included statement,
which required a redundant check to see if a variable was defined rather than short circuiting.

Fixes #4469
2013-10-11 20:43:58 -04:00
Michael DeHaan
add45d2ca9 Fixup legacy var detector. 2013-10-11 19:16:36 -04:00
Michael DeHaan
709ffda3d1 Tweak only_if deprecation detector. 2013-10-11 19:12:25 -04:00
Michael DeHaan
a45494a896 Add warnings feature. 2013-10-11 19:04:26 -04:00
Michael DeHaan
9637f620d7 Deprecation warnings of several flavors, nice and purple and can be disabled
in ansible.cfg.
2013-10-11 18:37:39 -04:00
Michael DeHaan
a017a69bb3 Have the parser explain another type of YAML gotcha to reduce the need for users to ask how to resolve it. 2013-10-11 17:34:26 -04:00
Michael DeHaan
861f076df5 Tweak the syntax-detector-warning-suggester-message (SDWSM) a little. 2013-10-11 17:34:26 -04:00
Michael DeHaan
41aaad69aa Make add_host clear the inventory pattern cache, add some more aliases. Fixes #4442. 2013-10-11 16:37:10 -04:00
jctanner
65ef6a62dc Merge pull request #4425 from jeromew/ansible_sudo_user_with_items
Template sudo_user via with_items
2013-10-11 10:18:46 -07:00
James Cammarata
d73a5da9e5 Merge pull request #4453 from pschwartz/fix_cfg_load_order_to_match_docs
GH-4452 Corrected config load order to match docs
2013-10-11 07:25:05 -07:00
Philip Schwartz
65c8c691f7 GH-4452 Corrected config load order to match docs with
cwd > ~ > /etc

Signed-off-by: Philip Schwartz <philip.schwartz@rackspace.com>
2013-10-11 08:33:54 -05:00
Matt Martz
61525a97df Add regex (search, match, regex) jinja2 filters. Fixes #3725 2013-10-11 08:03:04 -05:00
Serge van Ginderachter
c4d20094b4 make changed filter understand results lists 2013-10-10 22:08:38 +02:00
Serge van Ginderachter
e5d45311f9 Implement a |changed filter plugin 2013-10-10 21:34:37 +02:00
Serge van Ginderachter
c2e5f783da Add caching to pattern enumeration
Inventory._hosts_in_unenumerated_pattern()

Was TODO: cache this logic so if called a second time the result is not
recalculated
2013-10-10 15:41:48 +02:00
jeromew
dec364ae80 Template sudo_user via with_items 2013-10-10 09:22:26 +00:00
Michael DeHaan
3f968ff46a Check one more skipped scenario in with_subelements. 2013-10-09 17:14:42 -04:00
James Cammarata
9124ebb4f1 Clear out complex_args before running async_status
When using complex args with an async task, the subsequent runs of
async_status would inherit them, causing a module error (invalid params).

Fixes #3150
2013-10-09 15:08:47 -05:00
Michael DeHaan
2078518735 Allow subelements to work right with skipped results. 2013-10-09 15:55:47 -04:00
Jeremy Price
9da5043f18 Adding path_prefix to run_command so that one can pass in a path to the run environment if you nees something in a non-default path. 2013-10-09 12:50:29 -04:00
James Cammarata
948d019fef Detect IPv6 addresses in INI inventory
Prevents parts of the IPv6 address from being interpreted as a port
(for example, :80).

Fixes #3888
2013-10-09 11:11:09 -05:00
Michael DeHaan
6febc97104 Add a warning about include + with_items so nobody uses it. 2013-10-08 18:12:18 -04:00
James Cammarata
98f6bc1f63 Apply tags to dependent roles correctly
Fixes #4339
2013-10-08 15:13:02 -05:00
Michael DeHaan
c69e19c6a6 Enhance references to logging functionality. Fixes #3431. 2013-10-08 08:26:40 -04:00
Michael DeHaan
f081c68a65 Prevent duplicately loaded handlers from running more than once.
Fixes #3863
2013-10-07 17:15:19 -04:00
Michael DeHaan
5ed28efe45 Script module should return changed attribute so handlers always fire, unless "changed_when" is specified.
Fixes #4053
2013-10-07 17:06:25 -04:00
Michael DeHaan
a7adc8ef4d Allow doing things like "groups.groupname" in with_nested.
Fixes #3858
2013-10-07 16:58:29 -04:00
Michael DeHaan
5e30cd999c Make it possible to say:
tags: 42

And have the tag be a string, not an int, so --tags matches.

Fixes #4110
2013-10-07 15:19:30 -04:00
Michael DeHaan
8fc46a3a5a Return inventory objects in the order they are presented. Additionally, fix host slicing such that it works on Python terms with
zero indexed lists and a non-inclusive final element.
2013-10-07 15:06:15 -04:00
Michael DeHaan
19386c43a7 Merge 2013-10-07 10:02:21 -04:00
James Cammarata
d10582225b Merge branch 'issue_4215_fetch_expanduser' into devel 2013-10-07 08:27:52 -05:00
Andrey Shorin
35457b67f5 Pass host to runner_on_file_diff callback 2013-10-07 08:55:01 -04:00
Stoned Elipot
e7957b6d58 Fix group_by: do not group a host for which a condition is false 2013-10-07 08:44:42 -04:00
Michael DeHaan
44e391fd8b Merge pull request #4255 from mcodd/legacy_vars_fix
Fix for legacy_playbook_variables (should fix issue #4254)
2013-10-07 05:44:06 -07:00
Michael DeHaan
65178290e7 Merge branch 'devel' of git://github.com/nextus/ansible into devel
Conflicts:
	lib/ansible/constants.py
2013-10-07 08:39:23 -04:00
Michael DeHaan
ea73151757 Add automatic advice when folks hit one of two common but minor YAML gotchas, so they can be more easily correct them on their own. 2013-10-06 10:23:44 -04:00
Michael DeHaan
4987c73bb6 Proper check for raw as module options versus raw being in the string. 2013-10-06 09:54:28 -04:00
James Tanner
52aea868df Allow for updating host vars in add_host 2013-10-04 16:15:17 -04:00
James Cammarata
d21714a37f Fix for network byte order issues in accelerate 2013-10-02 15:37:15 -05:00
James Cammarata
912e3a7b0b Merge branch 'accelerate_improvements' into devel
Conflicts:
	library/utilities/accelerate
2013-10-01 21:22:17 -05:00
James Cammarata
fa80a17aa3 Make recv_data less greedy so it doesn't eat other packets 2013-10-01 16:50:32 -05:00
James Cammarata
8923a5b0d9 Drop default config value for accelerate timeout to 30 seconds 2013-10-01 16:10:48 -05:00
James Cammarata
12f6957596 Cleaning up some vvvv log messages in accelerate 2013-10-01 15:34:58 -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
d317103371 Added in an accelerate connection timeout setting 2013-10-01 15:28:59 -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
f9c87868ac Added keepalive packets to accelerate mode
Commands will now be started up in a separate task from the main
handler thread, so that it can be monitored for completeness while
sending a keepalive packet back to the controller to avoid a socket
receive timeout.
2013-10-01 15:19:21 -05:00
James Cammarata
8a3f8b757b Make sure yaml data loaded for role is valid before using it
Fixes #4322
2013-10-01 10:52:39 -05:00
James Cammarata
bff47df5ff Fix issue with ast evaluation of strings 2013-10-01 09:20:48 -05:00
James Cammarata
5b205ae8bd Merge branch 'fixes/subprocess' of https://github.com/ferringb/ansible into ferringb-fixes/subprocess 2013-09-30 23:30:43 -05:00
James Cammarata
d89ce6ac61 Merge branch 'patch-1' of https://github.com/ustun/ansible into ustun-patch-1 2013-09-30 23:20:44 -05:00
James Cammarata
12a21d94b7 Merge branch 'allow_types_in_ini' of https://github.com/bcoca/ansible into bcoca-allow_types_in_ini 2013-09-30 22:56:07 -05:00
jctanner
32a1dd422c Merge pull request #4269 from jphalip/issue-4256
In the script action: Get around a Python bug.
2013-09-30 20:24:49 -07: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
1cc1e7058b Merge branch 'role_report_fix1' of https://github.com/bennojoy/ansible into bennojoy-role_report_fix1 2013-09-30 21:25:11 -05:00
James Cammarata
8ed343cc36 Merge branch 'jsmartin-hide_skipped_hosts' into devel 2013-09-30 21:07:33 -05:00
James Cammarata
6cd8aacc81 Merge branch 'hide_skipped_hosts' of https://github.com/jsmartin/ansible into jsmartin-hide_skipped_hosts 2013-09-30 20:22:53 -05:00
James Cammarata
52a42bf607 Add more verbose debugging options for accelerate 2013-09-30 14:08:07 -05:00
Michael DeHaan
ac0a7d965a Merge pull request #4306 from sivel/3563-glob
Add fileglob Jinja2 filter. Fixes #3563
2013-09-30 11:17:31 -07:00
Matt Martz
535ce97067 Add fileglob Jinja2 filter. Fixes #3563 2013-09-30 12:55:13 -05:00
Brian Harring
d0ad6c581b For defaults that are integers, enforce it for config supplied values.
If a user supplies a string in the config (rather than an int), the code
should fix that- or blow up immediately- rather than allowing that value to
work it's way down and break w/in the connection object; when that happens,
the actual error is opaque and requires pdb.set_trace() to run down.
2013-09-29 23:56:41 -04:00
Brian Harring
2174230315 USE subprocess.Popen API correctly.
When collecting stdout/stderr *and* feeding data into a Popen instance,
communicate() must be used to avoid a known deadlocking scenario
when data sizes cross PIPE_BUF (which can be as small as 512, although should
be much larger in practice on linux).
2013-09-29 23:22:09 -04:00
Ustun Ozgur
977b31249a Update cache check in find_plugin
I am not familiar with the internals, but this line looked suspicious.
2013-09-29 14:03:10 +03:00
Julien Phalip
44aeea7afc In the script action: Get around a bug in that's been fixed in Python 2.7 but not Python 2.6.
See: http://bugs.python.org/issue6988
Fixes #4256.
2013-09-27 08:57:07 -07:00