Commit Graph

1165 Commits (5c49997a2d8396fcfab235d6505f8350ae6b368c)

Author SHA1 Message Date
Michael DeHaan 48a0236ec6 Merge pull request #6619 from sergevanginderachter/ansible_version_var
Introduce an ansible_version dict as runner variable
2014-08-08 11:20:17 -04:00
James Cammarata d4cedfc7f1 Fix missing variable initialization for async jid
Fixes #8491
2014-08-07 23:51:28 -05:00
James Cammarata 4a157a72a0 Catch auth errors in winrm and properly raise errors
Fixes #7875
2014-08-07 09:00:24 -05:00
James Cammarata ba4693051b Removing leftover import of atomic_move 2014-08-06 15:38:08 -05:00
James Cammarata efbad90ef8 Revert "Atomically move known hosts file into place when edited by paramiko connections"
This reverts commit bd49a835b4.
2014-08-06 15:31:54 -05:00
James Cammarata a45c3b84f3 Avoid templating raw lookup strings 2014-08-06 13:25:14 -05:00
James Cammarata dc69510bff Merge branch 'callback_template_delegate' of https://github.com/sergevanginderachter/ansible into sergevanginderachter-callback_template_delegate 2014-08-05 15:15:03 -05:00
James Cammarata eeec459f8a Merge branch 'sets_v2' of https://github.com/bcoca/ansible into bcoca-sets_v2 2014-08-05 14:58:01 -05:00
Jonathan Mainguy 535ebc4c56 Fixes 8362, returns stderr if No space left on device 2014-08-05 15:18:49 -04:00
Serge van Ginderachter 8f39c114d8 template Runner.module_vars['delegate_to'] to accommodate callbacks 2014-08-05 15:16:43 +02:00
James Cammarata bd49a835b4 Atomically move known hosts file into place when edited by paramiko connections
Fixes #8169
2014-08-04 13:08:40 -05:00
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.
2014-08-04 13:11:40 -04:00
James Cammarata 6d94ae64ec Remove unnecessary unicode conversions from parse_kv
Fixes #8425
2014-08-04 09:59:08 -05:00
Michael DeHaan 642b183fb6 Use atomic move function on known host file in paramiko to prevent rare occurance of Control-C
during file operations.
2014-08-04 10:50:14 -04:00
Michael DeHaan a7d2e729f8 Add some whitespace to make paramiko_ssh more browseable 2014-08-04 10:38:16 -04:00
James Cammarata 9c1a89ff4e Merge branch 'patch-1' of https://github.com/debfx/ansible into debfx-patch-1 2014-07-31 11:41:21 -05:00
James Cammarata e6fa50a306 Move splitter to module_utils so modules can use it and fix command arg splitting
Fixes #8338
2014-07-29 14:55:16 -05:00
Michael DeHaan 645ab7baff Merge pull request #7950 from mesk41in/devel
Fix unsupported regexp parameter in assemble
2014-07-28 12:01:12 -04:00
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
2014-07-25 09:38:24 -05:00
Michael DeHaan 630f080cf0 Start of unit tests for split_args function, moved split_args to utils since not needed by modules (so far). 2014-07-24 20:15:04 -04:00
James Cammarata 43154e5101 Using custom splitting function for module param counting 2014-07-24 14:42:35 -05:00
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
2014-07-24 14:03:36 +09:00
James Cammarata 2cc602beea Fixes for module param counting and additional shell quoting issues 2014-07-23 22:54:59 -05:00
Benno Joy ac85d8444b fix for unarchive 8257 2014-07-23 14:50:16 +00:00
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)
2014-07-21 11:20:49 -05:00
James Cammarata 00e089e503 Revert "Explicitly set the user option for ssh connections"
This reverts commit 0f91add86f.

Fixes #8216
2014-07-21 10:32:55 -05:00
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
2014-07-16 21:16:27 +02:00
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.
2014-07-16 18:14:35 +02:00
James Cammarata e74853300a Merge branch 'task-host-loop-bypass' of https://github.com/sivel/ansible into sivel-task-host-loop-bypass 2014-07-14 14:21:25 -05:00
James Cammarata b8ac094eaa Tweak to only show msg on assert failure if set 2014-07-08 14:05:24 -05:00
James Cammarata 16332b8488 Merge branch 'assert-with-msg' of https://github.com/darkk/ansible into darkk-assert-with-msg 2014-07-08 13:56:08 -05:00
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
```
2014-07-07 19:05:17 +04:00
James Cammarata ff04b2b532 Allow empty yaml vars files
Fixes #7843
2014-07-04 23:10:32 -05:00
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
```
2014-07-02 13:44:53 -07:00
James Cammarata 8ed6350e65 When parsing json from untrusted sources, remove templating tags 2014-07-01 14:14:14 -05:00
Michael Scherer f0a7139290 Fix exec_command prototype for the plugin 2014-06-28 13:06:40 +02:00
mesk41in 488aec3936 Fix unsupported regexp parameter in assemble 2014-06-27 13:54:59 +04:00
James Cammarata 1adb6dfa05 Remove redundant 'self.user or' added by 0f91add 2014-06-24 10:45:38 -05:00
Thomas Mangin 0f91add86f Explicitly set the user option for ssh connections
Fixes #7170
2014-06-23 15:57:49 -05:00
Paul Sokolovsky f8bf9cdeec Handle TemplateNotFound to render more helpful error message.
At the point the exception is handled, it is likely due to error loading
a sub-template included from main template. Besides file not found, it
can be caused also by include path failing Jinja2 checks. Now, when
rendering the exception from Jinja, it will include exception name. This
will give basic context or *what* the error is.

Fixes #7103
Fixes #7105
2014-06-23 15:02:58 -05:00
James Cammarata 5d65c1c4a4 Merge branch 'Mbosco-patch-1' into devel 2014-06-23 13:00:51 -05:00
James Cammarata 1702c2fd50 Merge branch 'patch-1' of https://github.com/Mbosco/ansible into Mbosco-patch-1 2014-06-23 12:57:13 -05:00
Jakub Jirutka 726a61eb43 Add os relpath filter 2014-06-23 16:10:07 +02:00
Chris Church 6aaad5dc9b Fix missing arg for _remote_chmod method. 2014-06-23 06:09:08 -04:00
James Cammarata 94963290b9 Merge pull request #6981 from aliles/fix-localhost-executable-with-flags
Fix localhost tasks with complex executables
2014-06-20 12:51:54 -05:00
Chris Church 615f70e3f4 Fix missing space in script action plugin. 2014-06-19 21:54:21 -05:00
Chris Church dd3f7c2dab Fix trailing slash on returned temp path. 2014-06-19 16:20:18 -05:00
Chris Church 8a121fd6ae Squeeze a few more bytes out of put_file script. 2014-06-19 16:20:17 -05:00
Chris Church 4e738e6fa9 Optimize buffer size for put_file. 2014-06-19 15:37:42 -05:00
Chris Church 43a7a5a990 Collapse extra whitespace in encoded powershell scripts. 2014-06-19 14:25:50 -05:00
Chris Church 61c236be9e Fix for creating temp dir with older powershell versions. 2014-06-19 14:25:28 -05:00
Chris Church 243cd877ae Add integration tests for fetch/slurp, make powershell fetch/slurp work as close as possible to existing fetch/slurp modules. 2014-06-19 14:25:28 -05:00
Chris Church a8ca579761 Fix host parameter to vvvvv. 2014-06-19 14:25:27 -05:00
Chris Church 74c43c94cf Allow specifying remote powershell version via environment variable. 2014-06-19 14:24:14 -05:00
Chris Church 8f762a7d15 Update logging based on verbosity, add vvvvv support to show details of put/fetch file. 2014-06-19 14:24:14 -05:00
Chris Church 21ba529fbe Fixes/notes related to slashes in remote paths. 2014-06-19 14:24:14 -05:00
Chris Church 7e8cc65829 Refactor common args used for building PowerShell commands. 2014-06-19 14:24:13 -05:00
Chris Church f7af29680b Add default license boilerplate, refactor common powershell code, fixes for raw/script modules. 2014-06-19 14:24:13 -05:00
Michael DeHaan 35a7c93c76 Added comment about implementation line. 2014-06-19 14:24:13 -05:00
Michael DeHaan 3ac86e57f4 FIXME comment cleanup 2014-06-19 14:24:13 -05:00
Michael DeHaan 80499346d1 Remove stray FIXME 2014-06-19 14:24:13 -05:00
Chris Church 5dcaa30476 Add shell_plugins to abstract shell-specific functions out of runner, add winrm connection plugin, add initial Windows modules. 2014-06-19 14:24:12 -05:00
Eri Bastos a65fd06338 Added quotes around key path - Issue 7713 2014-06-10 16:39:47 -03:00
James Cammarata e5ef0eca03 Merge pull request #6507 from brdo/patch-1
Set keepalive to 5 seconds in paramiko_ssh.py
2014-06-09 23:44:06 -05:00
smoothify e3530dcbc2 Add environmentfilter to random filter, to ensure the result doesn't get cached. Mirrors default jinja filter. 2014-06-09 18:52:39 +01:00
James Cammarata ad97c618cf Add support for relative paths in the file lookup plugin for roles
Fixes #7628
2014-06-04 15:20:59 -05:00
James Cammarata d9df607972 Fix order of merging variables for the combined cache
Fixes #7598
2014-06-04 10:50:41 -05:00
Brian Coca ce8c8ab146 now unique actually works, all operations also now use it to return
unique lists.
2014-06-01 16:32:48 -04:00
James Cammarata 188ab7b952 Check groupnames for None as well as an empty string in add_host
Fixes #7585
2014-05-29 11:01:11 -05:00
James Cammarata feafc4cd8a Merge branch 'fix_mutable_inventory_vars' of https://github.com/banterchat/ansible into banterchat-fix_mutable_inventory_vars 2014-05-27 22:09:25 -05:00
Isao Jonas 72524e1f3b dont mutate inventory vars 2014-05-27 19:07:58 -05:00
James Cammarata fa86eef9f9 Make sure value in regex_replace is a string
Fixes #7551
2014-05-27 14:30:12 -05:00
Brian Coca 8f58ae3305 changed exception handling for hashable test 2014-05-26 08:52:57 -04:00
James Cammarata 92f16b3d6f Merge pull request #7539 from jimi-c/issue_7503_freebsd_su_fixes
Fixes for su on freebsd
2014-05-25 15:09:58 -05:00
Brian Coca 0dce5dae26 set theory v2, now can handle non hashable items like dicts 2014-05-25 13:20:55 -04:00
James Cammarata d77a6965b3 Merge module_vars into inject during template instead of updating
This way we won't overwrite values that are stored in the inject
with module_vars that should be lower precedence.

Fixes #7510
2014-05-23 13:36:45 -05:00
James Cammarata 1e672a0fec Fixes for su on freebsd
Addresses multiple issues when using su on freebsd including
* su prompt differs between platforms, so turned that check into a
  regex comparison instead of a simple string comparison
* not using '-c' after su causes problems, so added that for all
  platforms
* fixed quoting issues due to multiple uses of '-c' introduced by
  the above fix

Fixes #7503
Fixes #7507
2014-05-23 10:06:09 -05:00
James Cammarata 32628eef85 Merge pull request #7481 from jimi-c/issue_7396_env_lookup
Don't use listify_ function, when all we want to do is template variable...
2014-05-21 15:02:35 -05:00
WAKAYAMA shirou 56880b76bb fix UnicodeEncode error when using pause module with unicode prompt. 2014-05-22 00:21:14 +09:00
James Cammarata 365bfd732e Don't use listify_ function, when all we want to do is template variables
This was causing a bug in the env module, due to the fact that we now
pass variables for the module through the templating engine combined
with the fact that we split-up the hostvars and setup variables. As a
result, if a variable in the env lookup had the same name as the variable
in Ansible, it would try and template itself over and over again until
the recursion limit would be hit, at which time an empty string was
returned.

Fixes #7396
2014-05-20 13:39:23 -05:00
Matt Martz 0e953c2863 Add run_once task key
This caused the task to act like  bypass host loop plugin and
execute only on a single host. Can be used with delegate_to
2014-05-19 12:33:47 -05:00
James Cammarata 79731ce491 Evaluate changed_when only if task is not skipped
Fixes #7405
2014-05-14 16:04:37 -05:00
James Cammarata 809b931640 Merge pull request #7382 from jimi-c/issue_7366_synchronize_inventory_dir
Do not base synchronize source on the inventory directory
2014-05-13 11:05:19 -05:00
Marco Re 712f4a631c Update ssh.py
Convert to string to fix runtime error due to string concat in self.common_args += ["-o", "User="+self.user] when ansible_ssh_user is numeric
2014-05-13 11:29:19 +02:00
Chris Church d725636469 Correctly initialize combined_cache for hosts if setup is skipped
Fixes #7364
2014-05-12 13:48:11 -05:00
James Cammarata 38c2c60849 Do not base synchronize source on the inventory directory
Fixes #7366
2014-05-12 12:02:38 -05:00
James Cammarata fd27afdc0d Adding ansible_shell_type and basic environment construction on it
Previously we assumed the shell on the target systems were 'sh'-
compliant when formatting environment variables preceding command
strings. This patch corrects that by basing the target shell type
on the DEFAULT_EXECUTABLE setting, which can be overridden on a
per-host basis using the inventory variable 'ansible_shell_type'.

Fixes #7352
2014-05-09 16:29:56 -05:00
James Cammarata 51ef28b0d2 Merge branch 'warn_wrong_sudo_password' of https://github.com/tyll/ansible into tyll-warn_wrong_sudo_password 2014-05-08 14:16:58 -05:00
James Cammarata 2e2e5d5321 Use the existing module_vars during the templating of module_vars
Since some of the vars contained in there may be used in the templating
of other variables. This also reverts e83a494 which originally fixed
issue #6979 but broke some other variable related things.

Fixes #6979
Fixes #7321
Fixes #7332
2014-05-08 13:09:36 -05:00
James Cammarata 77a47dbb2d Merge pull request #7304 from jimi-c/issue_7296_synchronize_relative_path
Make sure dwim'd relative path ends in a "/" if the original does
2014-05-07 12:58:04 -05:00
Chris Church f9c74d6e57 Add integration tests for group_by module. Fixed bug introduced by ansible/ansible#7273 while also fixing issue described in ansible/ansible#6953 2014-05-06 22:30:37 -04:00
James Cammarata 4d118d1c72 Make sure dwim'd relative path ends in a "/" if the original does
Fixes #7296
2014-05-06 13:54:41 -05:00
James Cammarata fd03cc04e6 Merge branch 'devel' of https://github.com/denisphillips/ansible into denisphillips-devel 2014-05-05 09:22:01 -05:00
Veeti Paananen d6f4d9b76d Fix error handling on missing dest with unarchive
fixes #7107
2014-05-04 18:22:00 +03:00
Denis Phillips cd0134d290 Used module_args passed to function instead of from runner 2014-05-04 08:49:12 -04:00
Christian Berendt 6676720ce5 fixed typos found by RETF rules in PY files
rules are avaialble at https://en.wikipedia.org/wiki/Wikipedia:AutoWikiBrowser/Typos
2014-05-03 18:40:05 +02:00
James Cammarata deb532c367 Remove OrderedDict references from runner
Fixes #7256
2014-05-02 12:52:36 -05:00
James Cammarata 54b1f820fb Modify the way we set the localization environment
Previously, we set the LANG (and LC_CTYPE) environment variables
directly in the module code and applied them with os.environ().
Instead, we are now pre-pending those variables to the environment
string used to execute the command which allows the user to
override the localization values by setting the environment values
directly (even on a per-task basis):

  - subversion: repo=file:///path/to/repos/svn_über dest=/tmp/svntest
    environment:
      LANG: "C"
      LC_CTYPE: "en_US.UTF-8"

So if a user wishes to default their LANG back to C, they can still
avoid unicode issues by doing the above.

Fixes #7060
2014-05-01 10:34:53 -05:00
James Cammarata 30e4759055 Merge pull request #7208 from jf/copy-module
Fix "no_log=True" option for copy module (fixes #7193)
2014-04-29 16:11:23 -05:00
James Cammarata be4e6d359f Merge branch 'delegate_to_honor_ssh_private_key_file' of https://github.com/renard/ansible into renard-delegate_to_honor_ssh_private_key_file 2014-04-29 15:05:09 -05:00