Commit Graph

3063 Commits (4a05310ba0c1dc76fbe7671a04080be71d6eb3b1)

Author SHA1 Message Date
James Cammarata a45c3b84f3 Avoid templating raw lookup strings 10 years ago
James Cammarata d134b8a83c Version bump for 1.8 10 years ago
Michael DeHaan 1c6398dd3b Resolve option conflict differently. 10 years ago
Michael DeHaan b4b115cd13 File common arguments should not be used in all docs pages. 10 years ago
Michael DeHaan 4312391e0a (A) Fix a bug in the doc generator that was clobbering the force parameter for the copy module.
(B) This is a work in progress but the idea is to have text snippets where we can respond to tickets with a bit more helpful info.
Not active just yet.
10 years ago
James Cammarata dc69510bff Merge branch 'callback_template_delegate' of https://github.com/sergevanginderachter/ansible into sergevanginderachter-callback_template_delegate 10 years ago
James Cammarata eeec459f8a Merge branch 'sets_v2' of https://github.com/bcoca/ansible into bcoca-sets_v2 10 years ago
Serge van Ginderachter 8f39c114d8 template Runner.module_vars['delegate_to'] to accommodate callbacks 10 years ago
Monty Taylor 4012272fa2 Add common auth handling across openstack modules
Taking a page out of the ec2 config, make sure that all of the
OpenStack modules handle the inbound auth config in the same way.
The one outlier is keystone wrt auth_url.
10 years ago
James Cammarata 5d0bb33ede Make run_command process communication smarter
The run_command module function will now poll stdout/stderr for
data rather than using the builtin command communicate(), which can
hang under certain circumstances.

Fixes #7452
Fixes #7748
Fixes #8163
10 years ago
James Cammarata 74cbeb1292 Default interface type to ipv4 when checking flags for Solaris
Fixes #8330
10 years ago
James Cammarata bd49a835b4 Atomically move known hosts file into place when edited by paramiko connections
Fixes #8169
10 years ago
Michael DeHaan 7ff63ab754 Revert "Use atomic move function on known host file in paramiko to prevent rare occurance of Control-C"
This reverts commit 642b183fb6.
10 years ago
James Cammarata af0d8cda7b Fix literal block multiline parsing
Fixes #8394
10 years ago
James Cammarata 6d94ae64ec Remove unnecessary unicode conversions from parse_kv
Fixes #8425
10 years ago
Michael DeHaan 642b183fb6 Use atomic move function on known host file in paramiko to prevent rare occurance of Control-C
during file operations.
10 years ago
Michael DeHaan a7d2e729f8 Add some whitespace to make paramiko_ssh more browseable 10 years ago
Michael DeHaan 24f6f656cc Merge branch 'bug8392' of git://github.com/gnosek/ansible into devel 10 years ago
Monty Taylor a05804bf8d Update the nova inventory plugin with new ip code
The provisioning module knows more about how nova deals with IP
addresses now. Ensure that the inventory module is similarly as smart
by separating out the logic into the openstack/module_utils.
10 years ago
Monty Taylor d17a1b5c19 Add common auth handling across openstack modules
Taking a page out of the ec2 config, make sure that all of the
OpenStack modules handle the inbound auth config in the same way.
The one outlier is keystone wrt auth_url.
10 years ago
Luke Sneeringer a4fce4818e Add support for environment variables in GCE module. 10 years ago
Grzegorz Nosek 7f33580eba Fix exponential regex performance issue
filter_leading_non_json_lines effectively does

re.match(".*\w+=\w+.*", line)

for every line of output. This has abysmal performance in case of large
Base64-encoded data (which ultimately does not match the regex but does
match the .*\w+= part) as returned e.g. by the template module (diffs).

Replacing the match with

re.search("\w=\w", line)

drops the complexity back to linear, and actually usable with large
diffs from the template module (a 150 KB Base64 diff kept Ansible
spinning at 100% cpu for minutes).

Also, check the easy cases (line.startswith) first while we're here.

Closes: #8932
10 years ago
James Cammarata 9c1a89ff4e Merge branch 'patch-1' of https://github.com/debfx/ansible into debfx-patch-1 10 years ago
James Cammarata 7a5076c8b8 Catching shlex splitting error in fact gathering get_cmdline call
Fixes #8352
10 years ago
James Cammarata 80df2135e9 Fix parsing of tasks with variable module names
Also adding an integration test for same.
10 years ago
James Cammarata 189824dd76 Remove whitespace around args
Fixes #8343
10 years ago
James Cammarata e6fa50a306 Move splitter to module_utils so modules can use it and fix command arg splitting
Fixes #8338
10 years ago
Veeti Paananen 5780f3a8b4 Expand variables in configuration files, take two
e.g. $HOME.
10 years ago
Veeti Paananen e6bd049892 Don't expand remote_tmp path locally 10 years ago
James Cammarata a9f0f8e975 Revert "template.py: Handle purposely raised exceptions in lookup()"
This reverts commit 2fda9bc743.
10 years ago
James Cammarata aee940aaca Reworking _clean_data() to be smarter about replaces
Fixes #8228
10 years ago
James Cammarata 6e814566de Unquote params passed to an include statement
Fixes #8315
10 years ago
Michael DeHaan 106f4ccc01 Revert "Expand variables in configuration files" - I feel I've been here before.
Breaks some test runs.

This reverts commit a9eef029b6.
10 years ago
Michael DeHaan 97fa9502aa Merge pull request #8309 from veeti/cfg-vars
Expand variables in configuration files
10 years ago
Michael DeHaan 645ab7baff Merge pull request #7950 from mesk41in/devel
Fix unsupported regexp parameter in assemble
10 years ago
Michael DeHaan fb60e767a7 Taking alternate approach.
Revert "Fix hostname when get_distribution_version() returns a string."

This reverts commit 08f97c0b9d.
10 years ago
Michael DeHaan 628d828876 Merge pull request #8087 from neersighted/string_version
Fix hostname when get_distribution_version() returns a string.
10 years ago
Michael DeHaan 30e6a659ae Merge pull request #8171 from jbenden/osx-10.10
Support for OS X 10.10 DP3.
10 years ago
Michael DeHaan 20f65f2c79 Merge pull request #8262 from icoloma/patch-1
Bugfix: bulletproof unexpected_error_msg at gce.py
10 years ago
Veeti Paananen a9eef029b6 Expand variables in configuration files
e.g. $HOME. Fixes #6373.
10 years ago
Nacho Coloma 979824eedc Moved import to the top 10 years ago
James Cammarata 6eac47e519 Use split_args instead of shlex.split for included params
Fixes #8296
10 years ago
James Cammarata 7344baeffa Make sure empty non-quoted tokens are not added to the arg params list 10 years ago
James Cammarata 3714c0742f Split args on single spaces only 10 years ago
James Cammarata 57f89b85eb Merge pull request #8271 from tksmd/fix-copy-set-fs-attributes-issue
fix an issue that copying directory will fail when trying to change file attributes
10 years ago
James Cammarata 63bcbd0af2 Fix for unicode decoding error in new splitting code
Also adds a new unicode integration test
10 years ago
James Cammarata 10a850c70f Merge branch 'new_arg_splitting' into devel 11 years ago
Michael DeHaan 8d42f5cbfa Smush ds removal 11 years ago
James Cammarata b8a4ba26f0 Refactoring split_args into sub-functions 11 years ago
Michael DeHaan 630f080cf0 Start of unit tests for split_args function, moved split_args to utils since not needed by modules (so far). 11 years ago
Michael DeHaan b5d64fdb36 Some notes/comment upgrades on split_args. 11 years ago
James Cammarata 43154e5101 Using custom splitting function for module param counting 11 years ago
Michael DeHaan e143d7dab7 Merge pull request #7543 from yangliping/fix_local_facts_file_checking_portability
Fix portability issue when checking local facts file permission.
11 years ago
Michael DeHaan 635bea645c Merge pull request #7992 from dehylton/devel
fix swap translation on 4.x openbsd with 2.5.4 python
11 years ago
James Cammarata b21875d5a9 Make sure 'item' variable is set when using first_available_file
Fixes #8220
11 years ago
someda 1b1d5d0d3d fix an issue that copying directory will fail when trying to change file attributes and the target file already exists on remote
- the issue was introduced by the commit 84759faa09
11 years ago
James Cammarata 2cc602beea Fixes for module param counting and additional shell quoting issues 11 years ago
Benno Joy ac85d8444b fix for unarchive 8257 11 years ago
Nacho Coloma 57428c48a2 Bugfix: bulletproof unexpected_error_msg at gce.py
This method was still failing for me with a "missing http_code" message. After applying this change, the error message is:

```
msg: Unexpected response: {'value': 'PyCrypto library required for Service Account Authentication.'}
```

I wanted to contribute a rock-solid `unexpected_error_msg` implementation.
11 years ago
James Cammarata 84759faa09 Security fixes:
* Strip lookup calls out of inventory variables and clean unsafe data
  returned from lookup plugins (CVE-2014-4966)
* Make sure vars don't insert extra parameters into module args and prevent
  duplicate params from superseding previous params (CVE-2014-4967)
11 years ago
James Cammarata 00e089e503 Revert "Explicitly set the user option for ssh connections"
This reverts commit 0f91add86f.

Fixes #8216
11 years ago
Joseph Benden da5e32b316 Needs additional divisor. 11 years ago
Michael DeHaan 0fad9575e9 Refine error message about invalid ops since people forget to indent tasks fairly often. 11 years ago
James Cammarata 0e5b0a2e97 Revert "Set Jinja2's keep_trailing_newline=True in template_from_string."
This reverts commit 7a8eb0b670.
11 years ago
Joseph Benden b55791ef43 Support for OS X 10.10 DP3. 11 years ago
James Cammarata 62e9cf63b7 Merge pull request #8170 from sergevanginderachter/issue_8159
Load existing group_vars file for new group_by group
11 years ago
Serge van Ginderachter 4e9a253bef Load existing group_vars file for new group_by group
if it was not loaded yet, which happens if that group
didn't exist yet in the inventory.

fixes #8159
11 years ago
James Cammarata 42b5294820 Merge branch 'devel' of https://github.com/leverich/ansible into leverich-devel 11 years ago
Felix Geyer 0ebd19e97b Fix regression: Sanitize sudo success_key from stdout
Commit 7e3dd10 caused a regression with sanitizing the sudo success_key from stdout.
There is no newline in front of SUDO-SUCCESS when using sudo.
This change adapts the regex to make the line break optional.

Tested on Ubuntu 14.04.
11 years ago
Ruggero Marchei 909955f2e2 fix get_distribution_version() on amazon linux 11 years ago
Jacob Leverich 7a8eb0b670 Set Jinja2's keep_trailing_newline=True in template_from_string.
Without this setting, the newline idempotence of scalar strings changes depending on whether
or not they contain any Jinja2 template blocks.
11 years ago
James Cammarata e74853300a Merge branch 'task-host-loop-bypass' of https://github.com/sivel/ansible into sivel-task-host-loop-bypass 11 years ago
James Cammarata cdb9f13559 Merge pull request #7605 from sivel/delegate-callback-hint
Show delegate_to hint in callback output
11 years ago
James Cammarata 4fc8d4b6fe Merge pull request #7649 from sivel/vault-password-script
Allow --vault-password-file to work with a script as well as a flat file
11 years ago
Serge van Ginderachter e8b45a9ef7 Invalidate host/group variables cache when loading
extra varsiables based on playbook basedir.
11 years ago
Serge van Ginderachter d39ff55688 Fix logic bug when loading vars for a new playbook basedir. 11 years ago
James Cammarata db96344966 Re-fixing ability to have empty json files after inventory refactoring 11 years ago
James Cammarata 4e5eb7559e Merge branch 'svg_and_inventory_refactor' into devel 11 years ago
Bjorn Neergaard 08f97c0b9d Fix hostname when get_distribution_version() returns a string.
The distro version is a string ('jessie/sid') on Debian unstable and testing.
Because load_platform_subclass() evaluations every subclass as it loops,
comparing numbers when get_distribution_version() does not return a number will
break.

This patch fixes that by returning a number (`0`) when we have an invalid
version, instead of returning `None` or a string.
11 years ago
Dan Slimmon 307a3e8a9c Fixed regex square-bracket bug.
Regexes were being parsed like ordinary ansible host patterns, so
square-bracket groups were getting interpolated wrongly.
11 years ago
James Cammarata b8ac094eaa Tweak to only show msg on assert failure if set 11 years ago
James Cammarata 16332b8488 Merge branch 'assert-with-msg' of https://github.com/darkk/ansible into darkk-assert-with-msg 11 years ago
James Cammarata aa261bdd14 Optimizing groups_for_host() lookup in inventory 11 years ago
James Cammarata fe892fccb1 Merge remote-tracking branch 'svg/varsplugins_refactor' into svg_and_inventory_refactor 11 years ago
James Cammarata 11a5fc85f4 Merge branch 'inventory_refactoring' into svg_and_inventory_refactor 11 years ago
James Cammarata bcf83cbc24 Merge branch 'sergevanginderachter-inventorytree' into svg_and_inventory_refactor 11 years ago
Serge van Ginderachter ff4119adc0 Performance optimization in resolving host patterns
Avoid resolving a pattern that is a plain host. When matching a hostname in the
hosts_cache, just use the host object from there.

When running a task on say 750 hosts, this yields a huge improvement.
11 years ago
Matt Martz 6591dd560d Show delegate_to hint in callbacks 11 years ago
Leonid Evdokimov d94395f48c assert: add optional `msg` argument
Sample playbook when it may be useful:
```
- uri: return_content=yes url={{ api_base }}/action/{{ inventory_hostname }}
  register: output
- assert:
    msg: '{{ output.json | to_nice_json }}'
    that:
      - output.json.foo != "bar"
      - output.json.boo == 42
```
11 years ago
James Cammarata 7f8de3a265 Merge pull request #8024 from kcghost/7941
removed port from domain name qualification, fixes #7941
11 years ago
James Cammarata ff04b2b532 Allow empty yaml vars files
Fixes #7843
11 years ago
Michael DeHaan 51e014d915 Merge pull request #8012 from cchurch/callback_cleanup
Callback plugin cleanup
11 years ago
Michael DeHaan c2ac8fda1e Data from inventory scripts should be able to use nested Jinja2 expressions. 11 years ago
Henry Finucane de64bbdc5f Support a whitelisted subset of jinja2 template options 11 years ago
Casey Fitzpatrick 7115cb1f37 removed port from domain name qualification, fixes 7941 11 years ago
Marc Abramowitz 5b783e0bc6 Error if private_key_file is group/world readable
Currently, if you have this, ansible fails with a generic error and
suggests running again with `-vvvv`. This isn't bad but pinpointing the
specific problem immediately is even more user-friendly.

```
$ ls -l devops.pem
-rw-r--r--+ 1 marca  staff  1679 Jul  2 11:25 devops.pem

$ ansible -m ping --private-key=devops.pem mt3-pyweb01
mt3-pyweb01 | FAILED => private_key_file (devops.pem) is group-readable or world-readable and thus insecure - you will probably get an SSH failure
```
11 years ago
James Cammarata 81f35323e9 Revert "Fix get_distribution() for platforms that may have spaces"
This reverts commit 2493020d9f.
11 years ago
Chris Church 955dadf743 Remove runner_on_error callback that is never used. 11 years ago
Chris Church 4e98e3785a Reset play attribute on callback plugins when a play fails. 11 years ago
Chris Church 30fae95efe Change variable from pattern to name to correctly indicate what is being passed to the callback. 11 years ago