Commit Graph

6173 Commits (6c73aa7ad68d3ba00a81f4ec89aefae869912f45)

Author SHA1 Message Date
Toshio Kuratomi 2c512e5a63 Update submodule refs 9 years ago
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
9 years ago
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
9 years ago
Brian Coca 83069a38d5 better init detection 9 years ago
James Cammarata b5058736ce Fix set_fact + run_once to assign variables to all hosts in the list
Fixes #13921
9 years ago
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"
9 years ago
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
9 years ago
James Cammarata bc1bcc3419 Merge branch 'patch-1' of https://github.com/ktaragorn/ansible into ktaragorn-patch-1 9 years ago
Toshio Kuratomi 36aa89ac7e Fix erroneous fetch fail when fail_on_missing is set to False
Fixes #13832
9 years ago
Chrrrles Paul 3f66f58fde Merge pull request #13819 from chrrrles/vmware_doc_fragments
doc fragments for vmware and vca modules
9 years ago
Peter Sprygada 4e5dc44289 fixes documentation string 9 years ago
Brian Coca a2a23c14ac Merge pull request #13901 from bcoca/add_hosts_fix
fix issue with add_hosts overwriting existing vars
9 years ago
James Cammarata 1825b4a9c7 Fix any_errors_fatal incorrect implementation in 2.0
Also adds that flag to blocks.

Fixes #13744
9 years ago
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.
9 years ago
Brian Coca cd0ad03053 Merge pull request #13902 from bcoca/update_not_blast_inventory
overwrite/merge not remove prev inventory data
9 years ago
Brian Coca a311872c5b overwrite/merge not remove prev inventory data 9 years ago
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
9 years ago
Yannig Perré e5ea576461 Allow Ansible to return error with unicode within it.
Fix for https://github.com/ansible/ansible/issues/13899
9 years ago
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)
9 years ago
James Cammarata abc82fee13 Fix typo in 0b86aa6 9 years ago
James Cammarata 0b86aa62e1 Hack to work around callback API change for v2_playbook_on_start 9 years ago
Brian Coca c14eece0c6 md5 now uses smaller salt
fixes #13891
9 years ago
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
9 years ago
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.
9 years ago
Toshio Kuratomi 965602882a Update submodule refs 9 years ago
Brian Coca a56c0bc27b module invocation info depends on verbosity
since we were removing it on display, this saves us even transmiting it back
9 years ago
Toshio Kuratomi 58f387a6dd Fix circular import 9 years ago
Toshio Kuratomi 8068f23bad do_encrypt import needed to move as well
Fixes #13861
9 years ago
Toshio Kuratomi 4958180333 use integer division instead of floating point division.
Fixes #13855
9 years ago
Brian Coca 14f300f212 Merge pull request #13851 from shaba/devel
add detect Altlinux distributive
9 years ago
Alexey Shabalin 0b32e1586d add detect Altlinux distributive 9 years ago
Brian Coca 739e4c0386 corrected info about windows module naming and loc 9 years ago
Brian Coca a196c7d737 only send event if tqm exists
fixes #13843
9 years ago
Toshio Kuratomi 589971fe7e Update submodule refs to try and fix the taiga_issue module-is-actually-old travis failures 9 years ago
Brian Coca 5760f0effb dont error out on new internal vars 9 years ago
Brian Coca 06fa841516 made loading of galaxy data files lazy 9 years ago
Charles Paul 9f9bff88c2 doc fragments for vmware_ vca_ 9 years ago
Brian Coca cf9dfde15b Merge pull request #13751 from bcoca/module_internal_options
pass diff and verbosity settings to modules
9 years ago
Chrrrles Paul bd147ab592 Merge pull request #13736 from chrrrles/nolog
adding password no_log and cleaning up argument spec for vca module
9 years ago
Brian Coca c91df36ebe added module name to missing interpreter error
fixes #13816
9 years ago
Brian Coca f56c15e7e2 Merge pull request #13766 from nflx/devel
Allow InventoryScript JSON with childgroups only
9 years ago
James Cammarata b58673289a Split up comma-separated tags properly
Fixes #13795
9 years ago
Peter Sprygada 4d3aa72143 bugfix in nxos shared module for including defaults 9 years ago
Peter Sprygada a758806287 bugfix in ios shared module for including defaults 9 years ago
Peter Sprygada 935ae2801f bugfix in eos shared module for including defaults 9 years ago
Toshio Kuratomi d274fea358 Update submodules ref to pick up fix #558 9 years ago
Brian Coca 477d632118 now file mode diff shows octal values 9 years ago
Brian Coca 247ae748f5 Merge pull request #13786 from quinot/bug/attributes_typo
Fix minor typo in comment
9 years ago
Toshio Kuratomi 4ac76f60ee Merge pull request #13694 from resmo/fix/case-insensitivity
[2.0] cloudstack: fix more case insensitivity
9 years ago
James Cammarata 6ec4d98764 When setting fail state skip RESCUE/ALWAYS if cur_block doesn't have them
Fixes #13749
9 years ago
Robin Roth e01ff3b352 remove unused imports
clean up imports of time.sleep and stat that are no (longer) used here
9 years ago
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
9 years ago
Rene Moser 766738ef7c cloudstack: fix case insensitivity
cloudstack: fix has_change reports changed for case insensitivity values
9 years ago
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.
9 years ago
Peter Sprygada f99b834583 Merge pull request #13789 from privateip/shared_module_netcfg
adds network config file parser to shared modules
9 years ago
Peter Sprygada b7fec945be Merge pull request #13788 from privateip/shared_module_junos
initial add of junos shared module
9 years ago
Peter Sprygada 60e0e1a12e Merge pull request #13784 from privateip/shared_module_openswitch
initial add of openswitch shared module
9 years ago
Peter Sprygada 771d8014fc Merge pull request #13779 from privateip/shared_module_nxos
adds shared module nxos for building cisco nxos modules
9 years ago
Peter Sprygada a0a4edd494 Merge pull request #13777 from privateip/shared_module_ios
updates the ios shared module with new shell
9 years ago
Peter Sprygada a648097285 Merge pull request #13778 from privateip/shared_module_iosxr
adds new iosxr shared module for developing modules that work with IO…
9 years ago
Peter Sprygada 41fed323bc Merge pull request #13776 from privateip/shared_module_eos
initial add of eos shared module
9 years ago
Peter Sprygada 7e677899a4 Merge pull request #13775 from privateip/shared_module_shell
adds shared module shell for creating cli based transports
9 years ago
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
9 years ago
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
9 years ago
Thomas Quinot 2eb22d5536 Fix minor typo in comment 9 years ago
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
9 years ago
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
9 years ago
Brian Coca c9a5f7ea7e updated self to cls to match convention
tempted to just use this. in all cases
9 years ago
Brian Coca 792db08259 Merge pull request #13772 from bcoca/vars_prompt_fixes
restructure vars_prompt and fix regression
9 years ago
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.
9 years ago
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.
9 years ago
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
9 years ago
Matt Martz 5f0a348447 Restore ability for a module to specify WANT_JSON 9 years ago
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
9 years ago
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
9 years ago
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.
9 years ago
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
9 years ago
nitzmahone 45355cd566 convert winrm put_file script template to Unicode string literal
Fixes traceback on homedirs with non-ascii chars
9 years ago
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
9 years ago
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
9 years ago
Toshio Kuratomi d26d76ea58 Fix typo 9 years ago
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.
9 years ago
James Cammarata 90cb7e1937 Don't drop noops from task counting code in linear strategy 9 years ago
Tomasz Kontusz 9ac9c75d76 linear strategy: don't look at tasks from the next block 9 years ago
muffl0n 11b55be5bb Show version without supplying a dummy action
fixes #12004
parsing x2 does not seem to break anything
9 years ago
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.
9 years ago
James Cammarata dc47c25e58 Minor tweak to ensure diff is not empty in callback for file diffs 9 years ago
Charles Paul a65543bbaf adding password no_log and cleaning up argument spec 9 years ago
Brian Coca 095790ac5c Merge pull request #13691 from bcoca/colors
output color is now configurable
9 years ago
Brian Coca 84f46701d0 Merge pull request #13626 from bcoca/hostvars_vars
move hostvars.vars to vars
9 years ago
Brian Coca f3c45adfb8 simplified diff handling in callback
no need for the copy or other complexity
9 years ago
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
9 years ago
Toshio Kuratomi 22d4dc9d85 Merge pull request #13700 from feliksik/shred-vault-tmpfile
[security] shred ansible-vault tmp_file. Also when editor is interruped
9 years ago
Eric Feliksik 11ce08b9dd cleaner implementation and random chunk length. 9 years ago
Toshio Kuratomi 6470f7de2c Update submodule refs 9 years ago
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.
9 years ago
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
9 years ago
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
9 years ago
Eric Feliksik 151e09d129 use unix shred if possible, otherwise fast custom impl; do not shred encrypted file 9 years ago
Eric Feliksik 1e911375e8 add docs, remove unnecessary int() cast 9 years ago
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.
9 years ago
Eric Feliksik 7193d27acc add os.fsync() so that the shredding data (hopefully) hits the drive 9 years ago
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
9 years ago
Brian Coca 6f2f7a79b3 add support for diff in file settings
this allows modules to report on what specifically changed when using
common file functions
9 years ago
Yannig Perré c4d2dbfcdb Replace to_string by to_unicode.
Fix https://github.com/ansible/ansible/issues/13707
9 years ago
Thilo Uttendorfer 5c34be15b1 Fix unsupported format character 9 years ago
James Cammarata e39e8ba308 Fix logic mistake in unarchive action plugin 9 years ago
Eric Feliksik 946b82bef7 shred ansible-vault tmp_file. Also when editor is interruped. 9 years ago
Brian Coca d3deb24ead output color is now configurable 9 years ago
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 66a8f7e873
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 93490960ff
Author: Chris Meyers <chris.meyers.fsu@gmail.com>
Date:   Fri Dec 25 23:17:26 2015 -0600

    remove uneeded deepcopy fields
9 years ago
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
9 years ago
Toshio Kuratomi d70a97b562 Update submodule refs 9 years ago
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
9 years ago
Brian Coca fd7e01696f updated submodule refs to pick up module changes 9 years ago
Brian Coca db1d153aca Merge pull request #13647 from bcoca/fix_role_search
corrected role path search order
9 years ago
Brian Coca 9a118ce213 Merge pull request #13648 from bcoca/fix_invocation_and_moderrors
better module error handling
9 years ago
Michael Scherer 42b9a206ad Fix last commit, make it python3 compatible (and py24) 9 years ago
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
9 years ago
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
9 years ago
Brian Coca 010839aedc fix no_log disclosure when using aliases 9 years ago
Toshio Kuratomi c4da5840b5 Convert to bytes later so that make_become_command can jsut operate on text type. 9 years ago
Brian Coca 474772c81c Merge pull request #13639 from emonty/bool-conversion
Also convert ints to bool for type=bool
9 years ago
Monty Taylor c60749c922 Also convert ints to bool for type=bool 9 years ago
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'
9 years ago
Toshio Kuratomi 0c013f592a Transform the command we pass to subprocess into a byte string in _low_level-exec_command 9 years ago
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
9 years ago
Yannig Perré a4674906c6 Merge role params into variables separately from other variables
Fixes #13617
9 years ago
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
9 years ago
James Cammarata 3ec0104128 Fixing bugs in conditional testing with until and some integration runner tweaks 9 years ago
Brian Coca bb2935549f corrected service detection in docker versions
now if 1 == bash it falls back into tool detection
9 years ago
Toshio Kuratomi e66c070e5c Add package module to squash list 9 years ago
Toshio Kuratomi 224d596336 Remove args from get_name() as we can't tell if any of the args are no_log 9 years ago
Toshio Kuratomi 8ffc1fa838 Comment to explain why we strip _ansible_notify specially 9 years ago
Toshio Kuratomi d32a885e98 Make return invocation information so that our sanitized copy will take precedence over what the executor knows. 9 years ago
Toshio Kuratomi 2936682f00 Revert "removed invocation info as it is not no_log aware"
This reverts commit 6127a8585e.
9 years ago
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.
9 years ago
Toshio Kuratomi 07a0059306 update submodule ref for doc fix 9 years ago
Toshio Kuratomi 3197eeaaa8 update submodule refs 9 years ago
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
9 years ago
Toshio Kuratomi 3057fc1753 Update submodule ref for mysql_user fix 9 years ago
James Cammarata 4ba7158282 Fixing a mistake from tweaking list stuff too much
Use the action only if the task name is not set
9 years ago
James Cammarata d4ffc96c80 Further tweaks to the output format of list tasks/tags 9 years ago
James Cammarata 5929ffc7c3 Make --list-tasks respect tags
Also makes the output closer to the appearance of v1

Fixes #13260
9 years ago
Toshio Kuratomi bad1c173b8 Update core submodule for mysql_db fix 9 years ago
Toshio Kuratomi 1b5e7ce025 Update submodule refs 9 years ago
James Cammarata e546219426 Revert "Enable host_key checking at the strategy level"
This reverts commit 1a6d660d7e285cceec474952a33af4d8dffd0a8d.
9 years ago
James Cammarata 586208234c Revert "Fixing bugs in ssh known_host fetching"
This reverts commit 21c127c581.
9 years ago
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
9 years ago
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.
9 years ago
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.
9 years ago