Commit graph

738 commits

Author SHA1 Message Date
Toshio Kuratomi
46903c80fa More fixes for unicode handling in the connection plugins.
Tested that ssh, docker, local, lxc-libvirt, chroot all work with the
updated unicode integration test.
2016-01-06 15:19:40 -08:00
James Cammarata
90cb7e1937 Don't drop noops from task counting code in linear strategy 2016-01-06 14:02:33 -05:00
Tomasz Kontusz
9ac9c75d76 linear strategy: don't look at tasks from the next block 2016-01-06 14:02:33 -05:00
James Cammarata
dc47c25e58 Minor tweak to ensure diff is not empty in callback for file diffs 2016-01-05 22:01:01 -05:00
Brian Coca
095790ac5c Merge pull request #13691 from bcoca/colors
output color is now configurable
2016-01-05 14:33:01 -05:00
Brian Coca
f3c45adfb8 simplified diff handling in callback
no need for the copy or other complexity
2016-01-05 14:26:38 -05:00
Brian Coca
9972c27a9b now handles 'non file diffs'
this allows modules to pass back a 'diff' dict and it will still show using the file interface
2016-01-05 14:26:38 -05:00
Toshio Kuratomi
c0a8cd950b Fix problems with non-ascii values passed as part of the command to connection plugins
@drybjed discovered this with non-ascii environment variables and
command line arguments to script and raw module.
2016-01-04 20:35:25 -08:00
Toshio Kuratomi
8d57ffd16b Revert "Transform the command we pass to subprocess into a byte string in _low_level-exec_command"
This reverts commit 0c013f592a.

Going to do this in the connection plugin
2016-01-04 19:25:40 -08:00
Toshio Kuratomi
559ba467c0 Revert "Convert to bytes later so that make_become_command can jsut operate on text type."
This reverts commit c4da5840b5.

Going to do this in the connection plugins
2016-01-04 19:25:40 -08:00
Michael Scherer
8599c56670 Do not set 'changed' to True when using group_by
Since group_by is not changing in any way to the remote
system, there is no change. This also make things more consistent
with the set_fact plugin.
2016-01-04 17:46:40 +01:00
James Cammarata
210cf06d9a Tweak how strategies evaluate failed hosts via the iterator and bug fixes
* Added additional methods to the iterator code to assess host failures
  while also taking into account the block rescue/always states
* Fixed bugs in the free strategy, where results were not always being
  processed after being collected
* Added some prettier printing to the state output from iterator

Fixes #13699
2016-01-02 01:00:12 -05:00
James Cammarata
e39e8ba308 Fix logic mistake in unarchive action plugin 2015-12-30 13:49:39 -05:00
Brian Coca
d3deb24ead output color is now configurable 2015-12-29 17:40:47 -05:00
James Cammarata
2d11cfab92 Squashed commit of the following:
commit 24efa310b58c431b4d888a6315d1285da918f670
Author: James Cammarata <jimi@sngx.net>
Date:   Tue Dec 29 11:23:52 2015 -0500

    Adding an additional test for copy exclusion

    Adds a negative test for the situation when an exclusion doesn't
    exist in the target to be copied.

commit 643ba054877cf042177d65e6e2958178bdd2fe88
Merge: e6ee59f 66a8f7e
Author: James Cammarata <jimi@sngx.net>
Date:   Tue Dec 29 10:59:18 2015 -0500

    Merge branch 'speedup' of https://github.com/chrismeyersfsu/ansible into chrismeyersfsu-speedup

commit 66a8f7e873ca90f7848e47b04d9b62aed23a45df
Author: Chris Meyers <chris.meyers.fsu@gmail.com>
Date:   Mon Dec 28 09:47:00 2015 -0500

    better api and tests added

    * _copy_results = deepcopy for better performance
    * _copy_results_exclude to deepcopy but exclude certain fields. Pop
    fields that do not need to be deep copied. Re-assign popped fields
    after deep copy so we don't modify the original, to be copied, object.
    * _copy_results_exclude unit tests

commit 93490960ff4e75f38a7cc6f6d49f10f949f1a7da
Author: Chris Meyers <chris.meyers.fsu@gmail.com>
Date:   Fri Dec 25 23:17:26 2015 -0600

    remove uneeded deepcopy fields
2015-12-29 11:40:18 -05:00
Brian Coca
957b376f9e better module error handling
* now module errors clearly state msg=MODULE FAILURE
* module's stdout and stderr go into module_stdout and module_stderr keys
which only appear during parsing failure
* invocation module_args are deleted from results provided by action
plugin as errors can keep us from overwriting and then disclosing info that
was meant to be kept hidden due to no_log
* fixed invocation module_args set by basic.py as it was creating different
keys as the invocation in action plugin base.
* results now merge
2015-12-22 23:01:56 -05:00
Toshio Kuratomi
c4da5840b5 Convert to bytes later so that make_become_command can jsut operate on text type. 2015-12-22 08:22:02 -08:00
Toshio Kuratomi
0c013f592a Transform the command we pass to subprocess into a byte string in _low_level-exec_command 2015-12-21 13:53:35 -08:00
Brian Coca
75e94e0cba allow for non standard hostnames
* Changed parse_addresses to throw exceptions instead of passing None
* Switched callers to trap and pass through the original values.
* Added very verbose notice
* Look at deprecating this and possibly validate at plugin instead
fixes #13608
2015-12-21 13:42:34 -05:00
Toshio Kuratomi
8ffc1fa838 Comment to explain why we strip _ansible_notify specially 2015-12-19 11:31:46 -08:00
Toshio Kuratomi
2936682f00 Revert "removed invocation info as it is not no_log aware"
This reverts commit 6127a8585e.
2015-12-19 11:09:20 -08:00
Brian Coca
6127a8585e removed invocation info as it is not no_log aware
This was added in 1.9 and 2.0 tried to copy, but since it cannot
obey no_log restrictions I commented it out. I did not remove as
it is still very useful for module invocation debugging.
2015-12-19 11:48:48 -05:00
James Cammarata
e546219426 Revert "Enable host_key checking at the strategy level"
This reverts commit 1a6d660d7e285cceec474952a33af4d8dffd0a8d.
2015-12-17 12:43:47 -05:00
James Cammarata
586208234c Revert "Fixing bugs in ssh known_host fetching"
This reverts commit 21c127c581.
2015-12-17 12:43:47 -05:00
James Cammarata
21c127c581 Fixing bugs in ssh known_host fetching
* If remote_addr is not set in the PlayContext, use the host.address
  field instead (which is how the action plugin works)

Fixes #13581
2015-12-17 12:06:17 -05:00
James Cammarata
d9c74536be Fix handling of environment inheritence, and template each inherited env
Environments were not being templated individually, so a variable environment
value was causing the exception regarding dicts to be hit. Also, environments
as inherited were coming through with the tasks listed first, followed by the
parents, so they were being merged backwards. Reversing the list of environments
fixed this.
2015-12-17 09:44:40 -05:00
James Cammarata
e5c2c03dea Enable host_key checking at the strategy level
Implements a new method in the ssh connection plugin (fetch_and_store_key)
which is used to prefetch the key using ssh-keyscan.
2015-12-16 21:41:07 -05:00
James Cammarata
15135f3c16 Make sure we're using the original host when processing include results
Also fixes a bug where we were passing an incorrect number of parameters to
_do_handler_run() when processing an include file in a handler task/block.

Fixes #13560
2015-12-16 19:13:45 -05:00
James Cammarata
857456ea5f Fixing template integration test for python 2.6 versions
No longer immediately fallback to to_json if simplejson is not installed
2015-12-16 18:22:22 -05:00
Brian Coca
97275110d7 Merge pull request #13533 from bcoca/debug_fixes
debug now validates its params
2015-12-16 10:36:20 -05:00
James Cammarata
fcc9258b74 Use the original host rather than the serialized one when processing results
Fixes #13526
Fixes #13564
Fixes #13566
2015-12-16 01:48:22 -05:00
Brian Coca
be5488cb60 clean debug output to match prev versions 2015-12-15 09:27:53 -05:00
Toshio Kuratomi
8d16638fec Fix for template module not creating a file that was not present when force=false 2015-12-14 10:55:21 -08:00
James Cammarata
f8ff63f8c8 A few tweaks to improve new forking code 2015-12-14 03:06:52 -05:00
Toshio Kuratomi
2bc3683d41 Restore comment about for-else since it is an uncommon idiom 2015-12-13 05:55:31 -08:00
Brian Coca
d73562902b debug now validates its params
simplified var handling
made default message the same as in pre 2.0
fixes #13532
2015-12-13 00:13:13 -05:00
Brian Coca
f3bedbae29 simplified skippy
thanks agaffney!
2015-12-12 17:50:55 -05:00
Brian Coca
99e46440bd changed shell delimiters for csh
fixes #13459
2015-12-12 16:10:18 -05:00
James Cammarata
120b9a7ac6 Changing the way workers are forked 2015-12-11 23:35:07 -05:00
Brian Coca
de71171fc2 removed merge conflict 2015-12-11 15:11:26 -05:00
James Cammarata
7f7e730dea Don't mark hosts failed if they've moved to a rescue portion of a block
Fixes #13521
2015-12-11 14:55:44 -05:00
Abhijit Menon-Sen
37c4e9aee3 Clean up debug logging around _low_level_execute_command
We were logging the command to be executed many times, which made debug
logs very hard to read. Now we do it only once.

Also makes the logged ssh command line cut-and-paste-able (the lack of
which has confused a number of people by now; the problem being that we
pass the command as a single argument to execve(), so it doesn't need an
extra level of quoting as it does when you try to run it by hand).
2015-12-11 07:11:48 +05:30
Toshio Kuratomi
1dda8158ff become_pass needs to be bytes when it is passed to ssh.
Fixes #13240
2015-12-10 07:29:38 -08:00
Toshio Kuratomi
62cbc03af6 Revert "Remove the funcd connection plugin"
This reverts commit c0d79cf7e1.

We may still port the funcd connection plugin, just not in time for
2.0.0
2015-12-09 13:32:11 -08:00
James Cammarata
30b6dd8bcd Merge pull request #13495 from Yannig/devel_debug_null_error
Do not fail when variable is not correct in debug action.
2015-12-09 16:27:05 -05:00
Yannig Perré
18ac12aee6 Do not fail when variable is not correct in debug action.
See https://github.com/ansible/ansible/issues/13484 for more information.
2015-12-09 22:08:30 +01:00
Toshio Kuratomi
c0d79cf7e1 Remove the funcd connection plugin 2015-12-09 13:07:00 -08:00
James Cammarata
14e19c239d Make on_file_diff callback item-aware 2015-12-09 14:52:53 -05:00
Brian Coca
0719eb3e2d clarified warning from tree callback 2015-12-09 07:29:12 -08:00
Brian Coca
795fac917e fixed typo in tree callback, added default dir
this would allow it to work with playbooks also
2015-12-08 11:59:04 -08:00