1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

6145 commits

Author SHA1 Message Date
Brian Coca
c09c01a1f5 go back to defaulting wrapping commands in shell
this was taken out in an effort to default to the user's shell but creates issues as this is not known ahead of time
and its painful to set executable and shell_type for all servers, it should only be needed for those that restrict the user
to specific shells and when /bin/sh is not available. raw and command may still bypass this by explicitly passing None.
fixes #13882

still conditional
2016-01-19 22:09:17 -05:00
Peter Sprygada
981265ac84 adds provider argument to nxos shared module
The provider argument accepts the set of device common arguments as a
dict object.  Individual connection arguments can still be included and
take priority over the provider argument.  This update includes additions
to the nxos doc fragment
2016-01-19 19:02:41 -05:00
Peter Sprygada
9cba1a7c69 adds provider argument to ios shared module
New argument `provider` added to the ios shared module that provides
the ability to pass all of the common ios arguments as a dict.  This commit
includes some minor bugfixes and refactoring of names.   It also includes
udpates to the ios documentation fragment for the new argument
2016-01-19 19:00:52 -05:00
Peter Sprygada
e2ff26a5cf add provider argument to eos shared module
Adds a new argument `provider` to the eos shared module and updates the
eos doc fragment.  This commit includes some additional minor fixes and
code refactors for naming conventions.  The `provider` argument allows the
shared module arguments to be passed as a dict object instead of having
to pass each argument invididually.
2016-01-19 18:57:26 -05:00
James Cammarata
d07d974ad8 Revert "Properly look for parent become attribute"
This reverts commit 1b46a422aa.
2016-01-19 18:17:42 -05:00
Toshio Kuratomi
ca8261ed31 Don't tracback trying to retore settings
Can occur if we exit the timeout before the settings were changed
2016-01-19 14:09:22 -08:00
Peter Sprygada
0f2917fde3 add provider to iosxr shared module
This commit adds a new argument `provider` to the iosxr shared module that
allows common connection parameters to be passed as a dict object.  The
constraints on the args still applies.  This commit also updates the iosxr
doc fragment.
2016-01-19 14:51:06 -05:00
Peter Sprygada
7640eca368 adds provider argument to openswitch shared module
Adds new argument `provider` to the openswitch shared module.  The provider
argument can pass all openswitch connection arguments as a dict object.  This
update includes adding the provider argument to the openswitch doc fragment
2016-01-19 14:50:39 -05:00
Peter Sprygada
33d390fb58 adds provider argument to junos shared module
This commit adds a new argument `provider` to the junos shared module.  The
argument allows the set of common connection args to be passed to the
junos shared module.  This commit also updates the junos doc fragment
2016-01-19 14:50:01 -05:00
Peter Sprygada
5144ee226e adds private key file support to shell shared module
This commit provides an argument to provide a path to the private key
file.  This will allow paramiko to use the key file as opposed to only
username / password combinations for CLI connections.
2016-01-19 14:26:23 -05:00
James Cammarata
1b46a422aa Properly look for parent become attribute
Corrects inheritence of the boolean value, which needs some special
consideration from other (string/int) values.

Fixes #13872
2016-01-19 14:12:27 -05:00
James Cammarata
b1223746cd Relocate use of ERROR to display class, to avoid doubling up 2016-01-19 12:10:39 -05:00
James Cammarata
a7dd425620 Catch INI section parsing misses and raise an appropriate error
Fixes #13917
2016-01-19 12:07:45 -05:00
James Cammarata
1af473548b Fix role hashing failure/traceback when params contain lists
Fixes #13857
2016-01-19 11:02:15 -05:00
Toshio Kuratomi
94a9ed0ee1 Set decoding of path to unicode to raise an exception if non-utf8
Letting it pass would just cause an error later on (no such file found)
so it's better to catch it here and know that we have users dealing with
non-utf8 pathnames than to have to track it down from later on.
2016-01-19 05:48:12 -08:00
Toshio Kuratomi
40373dea4d Make all parts of messages and pathnames into unicode so that we don't get UnicodeError tracebacks.
Note that the fix for display normalizing to unicode is correct but the
fix for pathnames is probably not.  Changing pathnames to unicode type
means that we will handle utf8 pathnames fine but pathnames can be any
sequence of bytes that do not contain null.  We do not handle sequences
of bytes that are not valid utf8 here.  To do that we need to revamp the
handling of basedir and paths to transform to bytes instead of unicode.
Didn't want to do that in 2.0.x as it will potentially introduce other
bugs as we find all the places that we combine basedir with other path
elements.  Since no one has raised that as an issue thus far so it's not
something we need to handle yet.  But it's something to keep in mind for
the future.

To test utf8 handling, create a utf8 directory and run a playbook from
within there.

To test non-utf8 handling (currently doesn't work as stated above), create
a directory with non-utf8 chars an run a playbook from there.  In bash,
create that directory like this: mkdir $'\377'

Fixes #13937
2016-01-19 05:45:21 -08:00
Brian Coca
a773486432 fixed exception handling to be 2.4 compatible
previous 'fix' broke on 2.4
2016-01-19 08:31:53 -05:00
James Cammarata
1f7492171e Don't clear start at task flag until all hosts are advanced
Clearing the flag after the first host was advanced caused all other
hosts to not advance at all.

Fixes #13864
2016-01-18 22:56:10 -05:00
Brian Coca
9f05ce3e2b be consistent about conversion to_str 2016-01-18 21:55:56 -05:00
Brian Coca
54435261e8 updated submodule refs 2016-01-18 21:55:56 -05:00
Brian Coca
5dd2aad535 ignore exceptions in get_file_contents
it should be common enough to not be able to read files in some jailed/container environments
even though permissions tell us otherwise
2016-01-18 21:55:56 -05:00
Toshio Kuratomi
5e18bc5955 Turn results that come from traceback messages into unicode, not str.
Fixes #13964
Fixes #13967
2016-01-18 14:43:55 -08:00
James Cammarata
1733d434d1 Fix with loop + delegate issues
* Don't re-use the existing connection if the remote_addr field of
  the play context has changed
* When overriding variables in PlayContext (from task/variables),
  don't set the same attribute based on a different variable name
  if we had already previously set it from another variable name

Fixes #13880
2016-01-18 17:35:00 -05:00
Toshio Kuratomi
2c512e5a63 Update submodule refs 2016-01-18 13:59:57 -08:00
Toshio Kuratomi
ded02b4968 Fix proposed by @Yannig to fix become success detection when the output is multiline
See the Bug report for a specific error case with local connection,
sudo, and the raw module

Fixes #13728
2016-01-18 13:48:37 -08:00
Brian Coca
27f4730c29 correctly deals with non serializable type
combine_vars shoudl really be data types, but some just get in
in test, add dict to mock and avoid combine_vars using object
2016-01-18 15:17:43 -05:00
Brian Coca
83069a38d5 better init detection 2016-01-18 15:17:43 -05:00
James Cammarata
b5058736ce Fix set_fact + run_once to assign variables to all hosts in the list
Fixes #13921
2016-01-18 14:50:20 -05:00
James Cammarata
46e515131e Allow module args as k=v pairs when using the module: option with local_action
This task format is valid in 1.x, but was broken in 2.x:
  - local_action:
     module: shell echo "hello world"
2016-01-18 14:32:44 -05:00
James Cammarata
c42484a029 Minor cleanup when reassigning play context to reused connections
* Relocate the assignment of the host address to the remote_addr field
  in the play context, which was only done when the connection was created
  (it's now done after the post_validate() is called on the play context)
* Make the assignment of the play context to the connection an else, since
  it's not required if the connection is not reused
2016-01-18 13:36:40 -05:00
James Cammarata
bc1bcc3419 Merge branch 'patch-1' of https://github.com/ktaragorn/ansible into ktaragorn-patch-1 2016-01-18 13:12:01 -05:00
Toshio Kuratomi
36aa89ac7e Fix erroneous fetch fail when fail_on_missing is set to False
Fixes #13832
2016-01-15 16:28:17 -08:00
Chrrrles Paul
3f66f58fde Merge pull request #13819 from chrrrles/vmware_doc_fragments
doc fragments for vmware and vca modules
2016-01-15 15:42:43 -06:00
Peter Sprygada
4e5dc44289 fixes documentation string 2016-01-15 15:08:15 -05:00
Brian Coca
a2a23c14ac Merge pull request #13901 from bcoca/add_hosts_fix
fix issue with add_hosts overwriting existing vars
2016-01-15 14:22:26 -05:00
James Cammarata
1825b4a9c7 Fix any_errors_fatal incorrect implementation in 2.0
Also adds that flag to blocks.

Fixes #13744
2016-01-15 13:15:10 -05:00
Toshio Kuratomi
1b82de2354 Non-newstyle modules can't use pipelining
This is because we pass arguments to non-newstyle modules via an
external file.  If we pipeline, then the interpreter thinks it has to
run the arguments as the script instead of what is piped in via stdin.
2016-01-14 17:21:15 -08:00
Brian Coca
cd0ad03053 Merge pull request #13902 from bcoca/update_not_blast_inventory
overwrite/merge not remove prev inventory data
2016-01-14 18:37:36 -05:00
Brian Coca
a311872c5b overwrite/merge not remove prev inventory data 2016-01-14 18:06:54 -05:00
Brian Coca
c2d314dec5 fix issue with add_hosts overwriting existing vars
fixes github.com/ansible/ansible-modules-core/issues/2799 and is alternative to #13841
2016-01-14 17:55:44 -05:00
Yannig Perré
e5ea576461 Allow Ansible to return error with unicode within it.
Fix for https://github.com/ansible/ansible/issues/13899
2016-01-14 23:44:48 +01:00
Brian Coca
94fa9c2a7a test aliases to enable gramatical consistancy
keeps backwards compat by not removing the previouslly non grammer matching states
and introduces new ones so user can decide which one he wants
(or keep both and still be inconsistent to annoy those that care)
2016-01-14 12:29:02 -05:00
James Cammarata
abc82fee13 Fix typo in 0b86aa6 2016-01-14 11:57:12 -05:00
James Cammarata
0b86aa62e1 Hack to work around callback API change for v2_playbook_on_start 2016-01-14 11:54:44 -05:00
Brian Coca
c14eece0c6 md5 now uses smaller salt
fixes #13891
2016-01-14 10:24:34 -05:00
Brian Coca
9d1b280689 now combine vars errors dump vars
very hard to debug w/o knowing what vars were being merged at the time of the error
2016-01-14 10:23:35 -05:00
Toshio Kuratomi
b1a56051bd Prevent traceback.
https://github.com/ansible/ansible/issues/13743#issuecomment-171520585

In some circumstance, the file fails to open.  When that occurs, we
can't try to close it in the finally clause.  Using a context manager is
the cleanest way to change the code to account for that case.
2016-01-13 20:50:19 -08:00
Toshio Kuratomi
965602882a Update submodule refs 2016-01-13 20:07:04 -08:00
Brian Coca
a56c0bc27b module invocation info depends on verbosity
since we were removing it on display, this saves us even transmiting it back
2016-01-13 18:06:55 -05:00
Toshio Kuratomi
58f387a6dd Fix circular import 2016-01-13 14:04:56 -08:00
Toshio Kuratomi
8068f23bad do_encrypt import needed to move as well
Fixes #13861
2016-01-13 13:08:33 -08:00
Toshio Kuratomi
4958180333 use integer division instead of floating point division.
Fixes #13855
2016-01-13 12:35:28 -08:00
Brian Coca
14f300f212 Merge pull request #13851 from shaba/devel
add detect Altlinux distributive
2016-01-13 11:50:03 -05:00
Alexey Shabalin
0b32e1586d add detect Altlinux distributive 2016-01-13 19:20:59 +03:00
Brian Coca
739e4c0386 corrected info about windows module naming and loc 2016-01-13 10:32:36 -05:00
Brian Coca
a196c7d737 only send event if tqm exists
fixes #13843
2016-01-13 10:18:36 -05:00
Toshio Kuratomi
589971fe7e Update submodule refs to try and fix the taiga_issue module-is-actually-old travis failures 2016-01-12 12:00:09 -08:00
Brian Coca
5760f0effb dont error out on new internal vars 2016-01-12 13:17:02 -05:00
Brian Coca
06fa841516 made loading of galaxy data files lazy 2016-01-12 12:25:09 -05:00
Charles Paul
9f9bff88c2 doc fragments for vmware_ vca_ 2016-01-12 11:06:22 -06:00
Brian Coca
cf9dfde15b Merge pull request #13751 from bcoca/module_internal_options
pass diff and verbosity settings to modules
2016-01-12 11:49:48 -05:00
Chrrrles Paul
bd147ab592 Merge pull request #13736 from chrrrles/nolog
adding password no_log and cleaning up argument spec for vca module
2016-01-12 10:24:37 -06:00
Brian Coca
c91df36ebe added module name to missing interpreter error
fixes #13816
2016-01-12 11:25:11 -05:00
Brian Coca
f56c15e7e2 Merge pull request #13766 from nflx/devel
Allow InventoryScript JSON with childgroups only
2016-01-12 10:01:11 -05:00
James Cammarata
b58673289a Split up comma-separated tags properly
Fixes #13795
2016-01-12 08:18:06 -05:00
Peter Sprygada
4d3aa72143 bugfix in nxos shared module for including defaults 2016-01-11 22:46:42 -05:00
Peter Sprygada
a758806287 bugfix in ios shared module for including defaults 2016-01-11 22:46:32 -05:00
Peter Sprygada
935ae2801f bugfix in eos shared module for including defaults 2016-01-11 22:45:40 -05:00
Toshio Kuratomi
d274fea358 Update submodules ref to pick up fix #558 2016-01-11 17:16:40 -08:00
Brian Coca
477d632118 now file mode diff shows octal values 2016-01-11 19:47:47 -05:00
Brian Coca
247ae748f5 Merge pull request #13786 from quinot/bug/attributes_typo
Fix minor typo in comment
2016-01-11 14:32:45 -05:00
Toshio Kuratomi
4ac76f60ee Merge pull request #13694 from resmo/fix/case-insensitivity
[2.0] cloudstack: fix more case insensitivity
2016-01-11 11:00:53 -08:00
James Cammarata
6ec4d98764 When setting fail state skip RESCUE/ALWAYS if cur_block doesn't have them
Fixes #13749
2016-01-11 12:51:04 -05:00
Robin Roth
e01ff3b352 remove unused imports
clean up imports of time.sleep and stat that are no (longer) used here
2016-01-11 14:14:20 +01:00
Karthik T
c4cbeeffa8 Fixes #13763 Update connections _play_context on every iteration
If this isnt updated, the _connection is reused, and thus has an outdated _play_context
This results in outdated `success_key` and `prompt` causing issues if sudo is run in a loop
Refer to the issue #13763 for more debugging and details
2016-01-11 16:30:52 +08:00
Rene Moser
766738ef7c cloudstack: fix case insensitivity
cloudstack: fix has_change reports changed for case insensitivity values
2016-01-10 22:38:18 +01:00
Peter Sprygada
c3dd0213ef deletes nxapi from shared modules
The nxapi module has been superseded by the nxos shared module and is not longer needed. This commit removes (deletes) nxapi from module_utils.  All custom modules that have used nxapi should be using nxos instead.
2016-01-10 14:56:15 -05:00
Peter Sprygada
f99b834583 Merge pull request #13789 from privateip/shared_module_netcfg
adds network config file parser to shared modules
2016-01-10 14:44:00 -05:00
Peter Sprygada
b7fec945be Merge pull request #13788 from privateip/shared_module_junos
initial add of junos shared module
2016-01-10 14:39:37 -05:00
Peter Sprygada
60e0e1a12e Merge pull request #13784 from privateip/shared_module_openswitch
initial add of openswitch shared module
2016-01-10 14:35:42 -05:00
Peter Sprygada
771d8014fc Merge pull request #13779 from privateip/shared_module_nxos
adds shared module nxos for building cisco nxos modules
2016-01-10 14:32:23 -05:00
Peter Sprygada
a0a4edd494 Merge pull request #13777 from privateip/shared_module_ios
updates the ios shared module with new shell
2016-01-10 14:28:00 -05:00
Peter Sprygada
a648097285 Merge pull request #13778 from privateip/shared_module_iosxr
adds new iosxr shared module for developing modules that work with IO…
2016-01-10 14:23:22 -05:00
Peter Sprygada
41fed323bc Merge pull request #13776 from privateip/shared_module_eos
initial add of eos shared module
2016-01-10 14:19:31 -05:00
Peter Sprygada
7e677899a4 Merge pull request #13775 from privateip/shared_module_shell
adds shared module shell for creating cli based transports
2016-01-10 14:09:43 -05:00
Peter Sprygada
01bf3940e3 adds network config file parser to shared modules
This commit adds a new shared module that parses network device configuration
files.  It is used to build modules that work with the various supported
network device operating systems
2016-01-10 10:47:28 -05:00
Peter Sprygada
e709095f53 initial add of junos shared module
This commit adds a new shared module for working with network devices running
the Juniper Junos operating system.  The commit includes a new document
fragment junos to be used when building modules.  The junos shared module
currently only supports CLI
2016-01-10 10:36:44 -05:00
Thomas Quinot
2eb22d5536 Fix minor typo in comment 2016-01-10 10:27:50 +01:00
Peter Sprygada
3ae6fd4b31 initial add of openswitch shared module
This commit adds a new shared module openswitch for building modules that
work with OpenSwitch.  This shared module supports connectivity to
OpenSwitch devices over SSH, CLI or REST.  It also adds an openswitch
documentation fragment for use in modules
2016-01-09 10:38:48 -05:00
Peter Sprygada
01a99f52a9 adds shared module nxos for building cisco nxos modules
This commit refactors the nxapi into a new shared module nxos that supports
connectivity over both ssh (cli) and nxapi.  It supercedes the nxapi shared
module and removes it from module_utils.  This commit also adds a
documentation fragement supporting the nxos shared module
2016-01-09 09:10:02 -05:00
Brian Coca
c9a5f7ea7e updated self to cls to match convention
tempted to just use this. in all cases
2016-01-08 17:57:09 -05:00
Brian Coca
792db08259 Merge pull request #13772 from bcoca/vars_prompt_fixes
restructure vars_prompt and fix regression
2016-01-08 17:51:48 -05:00
Peter Sprygada
456b3d2c23 adds new iosxr shared module for developing modules that work with IOS XR devices
This commit adds a new shared module for working with Cisco IOS XR devices over
CLI (SSH).  It also provides a documentation fragement for the commmon arguments
provided by the iosxr module.
2016-01-08 14:14:29 -05:00
Peter Sprygada
d1dacfb3ca updates the ios shared module with new shell
This update refactor the ios shared module to use the new shell shared
library instead of issh and cli.  It also adds the ios documentation
fragment to be used when building ios based modules.
2016-01-08 14:14:08 -05:00
Peter Sprygada
87ccc5c869 initial add of eos shared module
This adds a shared module for communicating with Arista EOS devices over
SSH (cli) or JSON-RPC (eapi).  This modules replaces the eapi.py module
previously added to module_utils.  This commit includes a documentation
fragment that describes the eos common arguments
2016-01-08 14:13:48 -05:00
Matt Martz
5f0a348447 Restore ability for a module to specify WANT_JSON 2016-01-08 11:37:28 -06:00
Brian Coca
1cc5ac06e7 restructure vars_prompt and fix regression
pushed it to use the existing propmpt from display and moved the vars prompt code there also for uniformity
changed vars_prompt to check extra vars vs the empty play.vars to restore 1.9 behaviour
sipmlified the code as it didn't need to check for syntax again (tqm is made none prior based on that)
fixes #13770
2016-01-08 11:46:04 -05:00
Brian Coca
737090dd13 now show full callback stacktrace when vvv+
Still is a warning as we don't want to repeat it multiple times nor additional callbacks to stop ansible execution.
hopefully we can avoid shipping w/o exceptions in the default/minimal callbacks...

Also added feature that now allows for 'preformated' strings passed to warning
2016-01-08 10:42:12 -05:00
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