Peter Sprygada
1d240902c6
adds shared module shell for creating cli based transports
...
This commit add a new shared module shell that is used to build connections
to network devices that operate in a CLI environment. This commit supercedes
the issh.py and cli.py commits and removes them from module_utils.
2016-01-08 10:24:44 -05:00
Emil Lind
b0fe705384
Allow InventoryScript JSON with childgroups only
...
and without hosts and vars
Without this patch, the simplified syntax is triggered when a group
is defined like this:
"platforms": {
"children": [
"cloudstack"
]
}
Which results in a group 'platforms' with 1 host 'platforms'.
more details in https://github.com/ansible/ansible/issues/13655
2016-01-08 13:52:44 +01:00
nitzmahone
45355cd566
convert winrm put_file script template to Unicode string literal
...
Fixes traceback on homedirs with non-ascii chars
2016-01-07 16:23:55 -08:00
Brian Coca
eb4ab5fa2a
Revert "Show version without supplying a dummy action"
...
This reverts commit 11b55be5bb
.
Parsing before action will fail if one of the action specific options is used
As per issue #13743
2016-01-07 08:28:18 -05:00
Brian Coca
b7dcd7a3a0
pass diff and verbosity settings to modules
...
also simplifies and guarantees that all flags are always passed, even when false
this should make checks simpler as you always expect them to exist
2016-01-07 01:37:19 -05:00
Toshio Kuratomi
d26d76ea58
Fix typo
2016-01-06 15:46:42 -08:00
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
muffl0n
11b55be5bb
Show version without supplying a dummy action
...
fixes #12004
parsing x2 does not seem to break anything
2016-01-06 11:53:33 -05:00
Abhijit Menon-Sen
7c8374e0f8
Strip string terms before templating
...
The earlier code did call terms.strip(), but ignored the return value
instead of passing that in to templar.template(). Clearly an oversight.
2016-01-06 20:44:19 +05:30
James Cammarata
dc47c25e58
Minor tweak to ensure diff is not empty in callback for file diffs
2016-01-05 22:01:01 -05:00
Charles Paul
a65543bbaf
adding password no_log and cleaning up argument spec
2016-01-05 14:52:22 -06: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
84f46701d0
Merge pull request #13626 from bcoca/hostvars_vars
...
move hostvars.vars to vars
2016-01-05 14:32:13 -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
22d4dc9d85
Merge pull request #13700 from feliksik/shred-vault-tmpfile
...
[security] shred ansible-vault tmp_file. Also when editor is interruped
2016-01-05 09:25:42 -08:00
Eric Feliksik
11ce08b9dd
cleaner implementation and random chunk length.
2016-01-05 18:04:38 +01:00
Toshio Kuratomi
6470f7de2c
Update submodule refs
2016-01-05 07:53:22 -08: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
Eric Feliksik
151e09d129
use unix shred if possible, otherwise fast custom impl; do not shred encrypted file
2016-01-05 01:43:42 +01:00
Eric Feliksik
1e911375e8
add docs, remove unnecessary int() cast
2016-01-04 18:13:59 +01: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
Eric Feliksik
7193d27acc
add os.fsync() so that the shredding data (hopefully) hits the drive
2016-01-04 17:22:18 +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
Brian Coca
6f2f7a79b3
add support for diff in file settings
...
this allows modules to report on what specifically changed when using
common file functions
2016-01-01 21:53:19 -05:00
Yannig Perré
c4d2dbfcdb
Replace to_string by to_unicode.
...
Fix https://github.com/ansible/ansible/issues/13707
2016-01-01 15:55:51 +01:00
Thilo Uttendorfer
5c34be15b1
Fix unsupported format character
2015-12-31 02:31:38 +01:00
James Cammarata
e39e8ba308
Fix logic mistake in unarchive action plugin
2015-12-30 13:49:39 -05:00
Eric Feliksik
946b82bef7
shred ansible-vault tmp_file. Also when editor is interruped.
2015-12-30 18:21:34 +01: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
56454d6a91
added newer vars to 'reset_vars'
...
these vars pass back info to the task about the connection
moved to their own block at start at file for readability and
added the newer standard vars
2015-12-28 12:25:27 -05:00
Toshio Kuratomi
d70a97b562
Update submodule refs
2015-12-25 12:17:22 -08:00
Toshio Kuratomi
deac4d00b2
bigip changes as requested by bcoca and abadger:
...
* Fix to error if validate_cert is True and python doesn't support it.
* Only globally disable certificate checking if really needed. Use
bigip verify parameter if available instead.
* Remove public disable certificate function to make it less likely
people will attempt to reuse that
2015-12-24 11:49:31 -08:00
Brian Coca
fd7e01696f
updated submodule refs to pick up module changes
2015-12-23 17:16:21 -05:00
Brian Coca
db1d153aca
Merge pull request #13647 from bcoca/fix_role_search
...
corrected role path search order
2015-12-23 15:11:49 -05:00
Brian Coca
9a118ce213
Merge pull request #13648 from bcoca/fix_invocation_and_moderrors
...
better module error handling
2015-12-23 10:42:40 -05:00
Michael Scherer
42b9a206ad
Fix last commit, make it python3 compatible (and py24)
2015-12-23 13:24:11 +01: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
Brian Coca
202b92179d
corrected role path search order
...
the unfraking was matching roles in current dir as it always returns a full path,
pushed to the bottom as match of last resort
fixes #13645
2015-12-22 22:09:45 -05:00
Brian Coca
010839aedc
fix no_log disclosure when using aliases
2015-12-22 17:15:58 -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
Brian Coca
474772c81c
Merge pull request #13639 from emonty/bool-conversion
...
Also convert ints to bool for type=bool
2015-12-22 10:21:18 -05:00
Monty Taylor
c60749c922
Also convert ints to bool for type=bool
2015-12-22 09:14:12 -06:00
Brian Coca
bbdfaf0522
move hostvars.vars to vars
...
this fixes duplication under hostvars and exposes all vars in the vars dict
which makes dynamic reference possible on 'non hostvars'
2015-12-22 00:24:35 -05: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
Yannig Perré
a4674906c6
Merge role params into variables separately from other variables
...
Fixes #13617
2015-12-21 13:03:09 -05:00
James Cammarata
6ae04c1e4f
Fix logic in PlayIterator when inserting tasks during rescue/always
...
Because the fail_state is potentially non-zero in these block sections,
the prior logic led to included tasks not being inserted at all.
Related issue: #13605
2015-12-20 12:39:08 -05:00
James Cammarata
3ec0104128
Fixing bugs in conditional testing with until and some integration runner tweaks
2015-12-19 21:14:48 -05:00
Brian Coca
bb2935549f
corrected service detection in docker versions
...
now if 1 == bash it falls back into tool detection
2015-12-19 16:16:10 -05:00
Toshio Kuratomi
e66c070e5c
Add package module to squash list
2015-12-19 13:00:58 -08:00
Toshio Kuratomi
224d596336
Remove args from get_name() as we can't tell if any of the args are no_log
2015-12-19 11:51:16 -08:00
Toshio Kuratomi
8ffc1fa838
Comment to explain why we strip _ansible_notify specially
2015-12-19 11:31:46 -08:00
Toshio Kuratomi
d32a885e98
Make return invocation information so that our sanitized copy will take precedence over what the executor knows.
2015-12-19 11:24:59 -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
Toshio Kuratomi
07a0059306
update submodule ref for doc fix
2015-12-18 22:23:25 -08:00
Toshio Kuratomi
3197eeaaa8
update submodule refs
2015-12-18 22:16:49 -08:00
James Cammarata
a3dcb910b8
Fixing bugs with {changed,failed}_when and until with registered vars
...
* Saving of the registered variable was occuring after the tests for
changed/failed_when.
* Each of the above fields and until were being post_validated too early,
so variables which were not defined at that time were causing task
failures.
Fixes #13591
2015-12-18 10:58:55 -05:00
Toshio Kuratomi
3057fc1753
Update submodule ref for mysql_user fix
2015-12-17 13:46:15 -08:00
James Cammarata
4ba7158282
Fixing a mistake from tweaking list stuff too much
...
Use the action only if the task name is not set
2015-12-17 16:33:23 -05:00
James Cammarata
d4ffc96c80
Further tweaks to the output format of list tasks/tags
2015-12-17 16:30:23 -05:00
James Cammarata
5929ffc7c3
Make --list-tasks respect tags
...
Also makes the output closer to the appearance of v1
Fixes #13260
2015-12-17 16:10:27 -05:00
Toshio Kuratomi
bad1c173b8
Update core submodule for mysql_db fix
2015-12-17 11:36:36 -08:00
Toshio Kuratomi
1b5e7ce025
Update submodule refs
2015-12-17 10:23:30 -08: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
Toshio Kuratomi
fd4ad2c8f2
Update submodule ref to fix a bug in mysql_user with mariadb
2015-12-16 14:08:08 -08:00
James Cammarata
8716bf8021
All variables in complex args again
...
Also updates the CHANGELOG to note the slight change, where bare variables
in args are no longer allowed to be bare variables
Fixes #13518
2015-12-16 16:39:08 -05:00
James Cammarata
76b4b9ed2c
Merge pull request #13501 from chouseknecht/galaxy-2.0-update
...
Galaxy 2.0 update
2015-12-16 15:01:12 -05:00
nitzmahone
baece499df
fix plugin loading for Windows modules
...
force plugin loader to only consider .py files, since that's the only place docs can live ATM...
2015-12-16 11:47:12 -08:00
Toshio Kuratomi
9724117bbb
Update submodule refs for mysql refactor
2015-12-16 11:15:39 -08:00
Toshio Kuratomi
1116bc6ca6
Merge pull request #13191 from Jmainguy/mysql
...
Add shared connection code for mysql modules
2015-12-16 10:47:49 -08:00
Jonathan Mainguy
34e88e48a5
Add shared connection code for mysql modules
2015-12-16 13:36:18 -05:00
James Cammarata
6a252a3f77
Preserve the cumulative path for checking includes which have parents
...
Otherwise, each relative include path is checked on its own, rather
than in relation to the (possibly relative) path of its parent, meaning
includes multiple level deep may fail to find the correct (or any) file.
Fixes #13472
2015-12-16 11:23:06 -05:00
Toshio Kuratomi
0095d04af9
Update submodule refs
2015-12-16 08:02:46 -08:00
Toshio Kuratomi
7d519127fe
Merge pull request #13573 from ansible/ssl-context-with-proxy
...
Fix a few problems with url handling.
2015-12-16 08:00:59 -08:00
Toshio Kuratomi
33863eb653
Conditionally create the CustomHTTPSConnection class only if we have the required baseclasses.
...
Fixes #11918
2015-12-16 07:47:09 -08:00
Toshio Kuratomi
72a0654b81
Fixes for proxy on RHEL5
2015-12-16 07:47:07 -08:00
Toshio Kuratomi
73ead4fbba
First attempt to fix https certificate errors through a proxy with python-2.7.9+
...
Fixes #12549
2015-12-16 07:46:54 -08: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
Toshio Kuratomi
d203438a2c
Merge pull request #13554 from Yannig/devel_fix_python3_tests
...
Use six lib to import urlparse properly.
2015-12-15 07:55:56 -08:00
Brian Coca
be5488cb60
clean debug output to match prev versions
2015-12-15 09:27:53 -05:00
Brian Coca
a0842781a6
renamed ssh.py shared module file to clarify
2015-12-15 08:45:12 -05:00
Yannig Perré
be4d1f9ee3
Fix a part of python 3 tests (make tests-py3, see https://github.com/ansible/ansible/issues/13553 for more details).
2015-12-15 13:37:35 +01:00
Peter Sprygada
27cd7668c1
the ssh shared module will try to use keys if the password is not supplied
...
The current ssh shared module forces only password based authentication. This
change will allow the ssh module to use keys if a password is not provided.
2015-12-15 07:16:28 -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
Michael Scherer
a7ac98262d
Make module_utils.known_hosts.get_fqdn work on ipv6
2015-12-14 19:30:54 +01:00
Toshio Kuratomi
c9eb41109f
Update submodule refs
2015-12-14 08:03:56 -08:00