Commit Graph

2196 Commits (b3744800fb26df650f359ad3bb5612b40f48be0d)

Author SHA1 Message Date
Michael DeHaan b69ab89eb1 Merge branch 'include_files' of git://github.com/bennojoy/ansible into devel 11 years ago
Michael DeHaan 465f3b1c91 This allows type=dict in a module to allow passing in a real dict or JSON. 11 years ago
Michael DeHaan 8b2cd6413b When inside an apt or yum task account for multiple conditionals. Fixes 4745. 11 years ago
Michael DeHaan d34a26e307 Undo an inadvertant revert from template changes so we still allow pythonic imports in module land. 11 years ago
Alan Fairless 65e5331079 Allow organizing host/group vars in a directory
So instead of having:
 group_vars/production.yml

A user could chose to reorganize to:
 group_vars/production/staff.yml
 group_vars/production/networks.yml
 group_vars/production/dns.yml

(Backwards compatible.)
11 years ago
Alan Fairless babde9a84c refactor to catch edge cases, remove repeated code
- Move all the supported YAML file extensions into a constant
- Use helper functions to avoid duplicate code for group/host vars
- Catch and disallow some confusing situations, such as the presence of
  multiple group/host vars files for the same group/host, but with
  different extensions.  For example having both group_vars/all.yml and
  group_vars/all.yaml.
- Catch and report file system permission issues, symlink errors,
  unexpected file system objects
- Trivial performance improvement from making fewer stat system calls
- Restructuring that makes it easy for a following patch to support
  directory recursion
11 years ago
Brian Coca ac40d15120 now assemble module is also action plugin and can use local source for
files
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
11 years ago
Michael DeHaan 7b331ef6ed Fix code typo. I'll blame jet lag for now :) 11 years ago
Michael DeHaan 90cce35919 This allows variable references in playbooks in a different way. 11 years ago
Michael DeHaan b5c9d5a59b Inventory directory should always be absolute. Fixes #4535. 11 years ago
Michael DeHaan 7201a6ffad Evaluate the conditional for each item for modules that normally try to group with_items results
like yum and apt.
11 years ago
James Tanner 078aaa95a2 Revert 1f6edf7d76 and re-enable passing lists to yum and apt 11 years ago
Matt Martz ea2ec6237a Add ansible_sudo_pass hostvar support 11 years ago
James Tanner d154bf8781 Revert templating enhancements from 73dbab70 e6c28658 d409352c 9858b1f2 4587528b 9b1fe455 214b0b05 8d3db803 7f9504d1 5031104c 35cb9dc2 2bd8cb57 1e85c754 11 years ago
James Tanner 0faecdf7d1 Fixes #4653 Set dest on results for copy module even if using file module 11 years ago
James Tanner 9249cf578d Fixes #4572 Run until loop if until is set, ignoring result failures 11 years ago
Michael DeHaan 73dbab702f Don't run lookup plugins while trying to simplify the input datastructure. 11 years ago
Michael DeHaan 6d0da41a55 No need to template modules with Jinja2 as this can confuse some docstring comments. 11 years ago
bennojoy b53e7353f9 include files 11 years ago
Michael DeHaan 603db60828 Merge pull request #4288 from sivel/3725-regex
Add regex (search, match, regex) jinja2 filters. Fixes #3725
11 years ago
Michael DeHaan 4587528b99 Fix typo in comment. 11 years ago
Michael DeHaan d409352c85 Remove some interior imports in the code. Not really needed but nice to have them gone. 11 years ago
Michael DeHaan e6c28658b4 Add in some code to pre-template datastructures prior to template usage. This prevents a certain class of error
where filter evaluations can happen too early due to the template engine recursion being a bit limited.

Addresses #4662
11 years ago
Michael DeHaan f05a3a81f9 Add missing file. 11 years ago
Michael DeHaan 54c902f102 Identation + misc PEP8 fixes. 11 years ago
Michael DeHaan bbb359870e Add package file. 11 years ago
Michael DeHaan 9858b1f2f3 Enable imports to work on a snippet based system, allowing for instance a library of common EC2 functions
to be reused between modules.  See library/system/service and library/system/ping for initial examples.  Can
work the old way to just import 'basic', or can import the new way to import multiple pieces of code from
module_utils/.
11 years ago
jctanner 43f48a2e02 Merge pull request #4167 from tima/rsync3
synchronization module take 3
11 years ago
James Tanner 40886c42b5 Fixes #4561 Compare task name without role prefix for start-at-task 11 years ago
James Tanner 1f6edf7d76 Fixes #4665 and #4666 If task is conditional do not flatten items list for packaging modules 11 years ago
James Tanner 9b1fe455c6 Fixes #4549 Do not call lookup plugins when templating a task's name 11 years ago
Serge van Ginderachter 6277e770a1 include basedir as 'playbook_dir' variable
closes #4246
11 years ago
Jan-Piet Mens bd5cd8e652 Lookup plugin for etcd
with support for configurable etcd URL in ansible.cfg (and environment)
11 years ago
James Tanner b803aac6ec Fixes #4500 change ec2 module params to type=bool
Revert 4833c2fdf0
11 years ago
James Cammarata b9dd514713 Minor fix for putting 0-length files over accelerated connections
Fixes #4652
11 years ago
James Tanner 4833c2fdf0 Fixes #4500 python bools return uppercase True and False, so allow those for BOOLEANS in module common 11 years ago
James Tanner 214b0b052c Fixes #4608 add lookup to template globals to make plugins work again 11 years ago
Dylan Martin 2c28e1daea unarchive module & action_plugin added 11 years ago
James Tanner 4f13967386 Fixes #4536 Get the remote_user from multiple sources in a preferred order 11 years ago
Timothy Appnel cbae9c913e synchronize module src and dest handles template markers. 11 years ago
Michael DeHaan 60944b81f0 Provide warning about "with_items: '{{ loop }}'" being redundant only when {{ starts the expression value. Fixes #4582. 11 years ago
Michael DeHaan 2bd8cb5790 Make the deprecation detector in templates more accurate. Fixes #4514. 11 years ago
Michael DeHaan 4125b05bf3 Allow a defaults file to solely define a role. Some typo fixes. 11 years ago
Michael DeHaan 64bbeb9d24 Suggest fixing unbalanced quotes in a bit less cases. Fixes #4501 11 years ago
Michael DeHaan 7f9504d14d Fix a typo. 11 years ago
Michael DeHaan 8d3db80370 Some misc cleanup and removal of unused imports. 11 years ago
Michael DeHaan 21d4400c96 Misc pep8 fixes 11 years ago
Michael DeHaan c933a4c59a Fix indentation depth. 11 years ago
Michael DeHaan 5031104c3a Finishing touches on template cleanup. 11 years ago
Michael DeHaan 1e85c7544b Further WIP on template cleanup. 11 years ago
Michael DeHaan 35cb9dc22f Work in progress about cleaning up template code. 11 years ago
Michael Scherer af796d6556 connection plugin to reuse the func/certmaster interface instead of ssh
This plugin permit to use func to run playbook and ansible command instead
of ssh. It can be used for a smooth transition from func/taboot to ansible by
letting people use ansible without having to change their network architecture.
11 years ago
Brian Coca c476ed93ca now correctly changes script permission in all cases
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
11 years ago
James Tanner 8478e82647 Fixes #4583 enforce that vars_files is a list 11 years ago
Michael DeHaan b0f6e77f66 Merge pull request #4571 from tgerla/whitespace
add_group module: strip trailing/leading whitespace from comma-separated group names
11 years ago
Tim Gerla 51a1709253 add_group module: strip trailing/leading whitespace from comma-separated group names 11 years ago
James Tanner 242f20c297 Fixes #4402 wrong order for isinstance parameters in dnstxt.py 11 years ago
Martynas Mickevicius 7ecb5fbc9c Handle comment on inventory group line. 11 years ago
Martynas Mickevicius 44279ce34f Allow leading ranges in the inventory host entries. 11 years ago
jctanner 6480945184 Merge pull request #4541 from Kami/improve_template_render_error_messages
Make errors which get thrown during template rendering more user-friendly
11 years ago
Stoned Elipot 4430d0f5a6 when searching for a plugin only look for a regular file 11 years ago
Tomaz Muraus 922f61899e Throw a more user-friendly exception during template rendering process. 11 years ago
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.
11 years ago
Brian Coca bd9acedb57 fixed name colision between warnings dict and module
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
11 years ago
Paul Sokolovsky 2e668f14f7 copy: Handle "no copy/propagate attrs only" for recursive mode well.
For this, add internal "original_basename" param to file module,
similar to copy module. (Param name is a bit misnormer now, should
be treated as "original basepath").
11 years ago
Paul Sokolovsky ce88df3cf4 copy: Handle dest path variations for recursive mode. 11 years ago
Paul Sokolovsky 6cf3975e2e copy: Set suitable default result for check mode. 11 years ago
Paul Sokolovsky 612b446856 copy: Don't modify input module_args in a recursive file handling loop. 11 years ago
Paul Sokolovsky b3b4f9885f copy: Implement recursive copying if src is a directory.
If src param to copy is a directory, all files under it are collected
and pushed one by one to target. Source dir path handled in a way
simalar to rsync: if it ends with slash, only inside contents of
directory are copied to destination, otherwise the dir itself is
copied (with all contents of course). Original idea and implementation
by https://github.com/ansible/ansible/pull/1809 . Rewritten to address
review comments and simplify/correct logic.
11 years ago
jctanner 69fa5954fd Merge pull request #3932 from jocelynj/devel
Add option remote_user to task level, to specify the ssh login user
11 years ago
Michael DeHaan e131de4de0 Added "debug: var=variableName" capability. 11 years ago
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.
11 years ago
Michael DeHaan c90a82fd52 Handle possible scenario where conditional might be an integer (whoa!) down the error path. Super rare but fixes #4483. 11 years ago
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. 11 years ago
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
11 years ago
Michael DeHaan 43df00550d Merge pull request #3827 from mscherer/disable_callbacks
add a way for callback to disable itself
11 years ago
Michael DeHaan 1b2d4c328c Cache patterns a bit higher up to make things a little more efficient. See #4469. 11 years ago
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
11 years ago
Michael DeHaan add45d2ca9 Fixup legacy var detector. 11 years ago
Michael DeHaan 709ffda3d1 Tweak only_if deprecation detector. 11 years ago
Michael DeHaan a45494a896 Add warnings feature. 11 years ago
Michael DeHaan 9637f620d7 Deprecation warnings of several flavors, nice and purple and can be disabled
in ansible.cfg.
11 years ago
Michael DeHaan a017a69bb3 Have the parser explain another type of YAML gotcha to reduce the need for users to ask how to resolve it. 11 years ago
Michael DeHaan 861f076df5 Tweak the syntax-detector-warning-suggester-message (SDWSM) a little. 11 years ago
Michael DeHaan 41aaad69aa Make add_host clear the inventory pattern cache, add some more aliases. Fixes #4442. 11 years ago
jctanner 65ef6a62dc Merge pull request #4425 from jeromew/ansible_sudo_user_with_items
Template sudo_user via with_items
11 years ago
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
11 years ago
Philip Schwartz 65c8c691f7 GH-4452 Corrected config load order to match docs with
cwd > ~ > /etc

Signed-off-by: Philip Schwartz <philip.schwartz@rackspace.com>
11 years ago
Matt Martz 61525a97df Add regex (search, match, regex) jinja2 filters. Fixes #3725 11 years ago
Serge van Ginderachter c4d20094b4 make changed filter understand results lists 11 years ago
Serge van Ginderachter e5d45311f9 Implement a |changed filter plugin 11 years ago
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
11 years ago
jeromew dec364ae80 Template sudo_user via with_items 11 years ago
Michael DeHaan 3f968ff46a Check one more skipped scenario in with_subelements. 11 years ago
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
11 years ago
Michael DeHaan 2078518735 Allow subelements to work right with skipped results. 11 years ago
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. 11 years ago
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
11 years ago
Michael DeHaan 6febc97104 Add a warning about include + with_items so nobody uses it. 11 years ago
James Cammarata 98f6bc1f63 Apply tags to dependent roles correctly
Fixes #4339
11 years ago
Michael DeHaan c69e19c6a6 Enhance references to logging functionality. Fixes #3431. 11 years ago
Michael DeHaan f081c68a65 Prevent duplicately loaded handlers from running more than once.
Fixes #3863
11 years ago
Michael DeHaan 5ed28efe45 Script module should return changed attribute so handlers always fire, unless "changed_when" is specified.
Fixes #4053
11 years ago
Michael DeHaan a7adc8ef4d Allow doing things like "groups.groupname" in with_nested.
Fixes #3858
11 years ago
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
11 years ago
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.
11 years ago
Michael DeHaan 19386c43a7 Merge 11 years ago
James Cammarata d10582225b Merge branch 'issue_4215_fetch_expanduser' into devel 11 years ago
Andrey Shorin 35457b67f5 Pass host to runner_on_file_diff callback 11 years ago
Stoned Elipot e7957b6d58 Fix group_by: do not group a host for which a condition is false 11 years ago
Michael DeHaan 44e391fd8b Merge pull request #4255 from mcodd/legacy_vars_fix
Fix for legacy_playbook_variables (should fix issue #4254)
11 years ago
Michael DeHaan 65178290e7 Merge branch 'devel' of git://github.com/nextus/ansible into devel
Conflicts:
	lib/ansible/constants.py
11 years ago
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. 11 years ago
Michael DeHaan 4987c73bb6 Proper check for raw as module options versus raw being in the string. 11 years ago
James Tanner 52aea868df Allow for updating host vars in add_host 11 years ago
James Cammarata d21714a37f Fix for network byte order issues in accelerate 11 years ago
James Cammarata 912e3a7b0b Merge branch 'accelerate_improvements' into devel
Conflicts:
	library/utilities/accelerate
11 years ago
James Cammarata fa80a17aa3 Make recv_data less greedy so it doesn't eat other packets 11 years ago
James Cammarata 8923a5b0d9 Drop default config value for accelerate timeout to 30 seconds 11 years ago
James Cammarata 12f6957596 Cleaning up some vvvv log messages in accelerate 11 years ago
James Cammarata 8c17711247 Removing accelerate_timeout as a playbook option
This will remain in ansible.cfg only.
11 years ago
James Cammarata d317103371 Added in an accelerate connection timeout setting 11 years ago
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
11 years ago
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.
11 years ago
James Cammarata 8a3f8b757b Make sure yaml data loaded for role is valid before using it
Fixes #4322
11 years ago
James Cammarata bff47df5ff Fix issue with ast evaluation of strings 11 years ago
James Cammarata 5b205ae8bd Merge branch 'fixes/subprocess' of https://github.com/ferringb/ansible into ferringb-fixes/subprocess 11 years ago
James Cammarata d89ce6ac61 Merge branch 'patch-1' of https://github.com/ustun/ansible into ustun-patch-1 11 years ago
James Cammarata 12a21d94b7 Merge branch 'allow_types_in_ini' of https://github.com/bcoca/ansible into bcoca-allow_types_in_ini 11 years ago
jctanner 32a1dd422c Merge pull request #4269 from jphalip/issue-4256
In the script action: Get around a Python bug.
11 years ago
James Cammarata 7aad576f5f Minor change to add a space around role name/task delimiter 11 years ago
James Cammarata 1cc1e7058b Merge branch 'role_report_fix1' of https://github.com/bennojoy/ansible into bennojoy-role_report_fix1 11 years ago
James Cammarata 8ed343cc36 Merge branch 'jsmartin-hide_skipped_hosts' into devel 11 years ago
James Cammarata 6cd8aacc81 Merge branch 'hide_skipped_hosts' of https://github.com/jsmartin/ansible into jsmartin-hide_skipped_hosts 11 years ago
James Cammarata 52a42bf607 Add more verbose debugging options for accelerate 11 years ago
Michael DeHaan ac0a7d965a Merge pull request #4306 from sivel/3563-glob
Add fileglob Jinja2 filter. Fixes #3563
11 years ago
Matt Martz 535ce97067 Add fileglob Jinja2 filter. Fixes #3563 11 years ago
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.
11 years ago
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).
11 years ago
Ustun Ozgur 977b31249a Update cache check in find_plugin
I am not familiar with the internals, but this line looked suspicious.
11 years ago
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.
11 years ago
James Cammarata 039d4c95d9 Merge pull request #4221 from ashorin/unicode-md5
Prevent UnicodeEncodeError: 'ascii' codec can't encode characters in pos...
11 years ago
Brian Coca 771435deb4 now ini vars are typed
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
11 years ago
James Martin d5f20e6b21 Optionally display Skipping [host] messages. 11 years ago
bennojoy 482cb72128 role report fix 11 years ago
Matt Coddington 7f7116de3b commit 9db4f7a made a change that also needed to include this to retain correct legacy_playbook_variables behavior 11 years ago
Preston Marshall 3ee7b177e8 Allow storing input from user in a pause prompt 11 years ago
James Cammarata 1c97831288 Merge branch 'empty_inventory' of https://github.com/spil-jasper/ansible into spil-jasper-empty_inventory 11 years ago
James Cammarata 994dfb84fc Minor pep8 cleanup and CHANGELOG update for do-until 11 years ago
James Cammarata 202c4f5294 Merge branch 'do_until_14' of https://github.com/bennojoy/ansible into bennojoy-do_until_14 11 years ago