Commit Graph

7944 Commits (4ff8890ec1fa4e0dfb7e1d4aebbedf6cd8d68621)

Author SHA1 Message Date
Toshio Kuratomi 2b105ec7ab Update submodule refs 9 years ago
James Cammarata 5be2a3a9e0 Break out of linear strategy if all hosts are failed and the result is not OK
Fixes #18021
9 years ago
Thilo Uttendorfer 5ece97ae5b Fix call of wrong super class
Added a basic test
9 years ago
Aaron Bieber 3fc1b4da53 Remove -b option from pbrun.
The -b option reads as follows:
` The target job is directed to ignore hangup signals. This is particularly
useful for running the target program in the background.`

If needed, '-b' can be added to become_flags

Squashed commit of the following:

commit f2c9f5c011ae8be610301d597a34bfba1a391e08
Author: Aaron Bieber <aaron@bolddaemon.com>
Date:   Mon Oct 17 10:58:14 2016 -0600

    remove pbrun flags

commit f402679ac177c931ad64bd13306f62512a14fcd6
Author: Aaron Bieber <aaron@bolddaemon.com>
Date:   Fri Oct 14 15:29:29 2016 -0600

    use Password: vs assword: for matching pbrun prompt

commit cd2e90cb65854c4cc5dd8773404e520d40f82765
Author: Aaron Bieber <aaron@bolddaemon.com>
Date:   Fri Oct 14 15:28:58 2016 -0600

    move -b to pbrun_flags
9 years ago
Andrew Gaffney 194c9c41eb Fix search path for relative paths in roles (fixes #17877)
(cherry picked from commit 72f0aaf606)
9 years ago
Brian Coca 9bdde13126 fixes to ansible_search_path
now gets basedir (no need to frontload as dwim already does that)
added comment about basedir to search_path usage to avoid dupes
9 years ago
Brian Coca 7d9d009189 avoid errors when dynamic role 9 years ago
Toshio Kuratomi 4ce0cf57b6 Update submodule refs 9 years ago
Robin Roth 3922328954 Allow unicode inventory filename
Fixes #17932
9 years ago
Bill Nottingham 77e7ae6838 Change <support@ansible.com> - it's being retired. 9 years ago
Toshio Kuratomi f24c10c32b Fixes to handle non-ascii become passwords
Fixes for non-ascii passwords on
* both python2 and python3,
* local and paramiko_ssh (ssh tested working with these changes)
* sudo and su

Fixes #16557
9 years ago
Toshio Kuratomi efc5dac52c Fix become password using non-ascii for local connection
Fixes #18029
9 years ago
Toshio Kuratomi e9e7967dd0 Update extras submodule ref to pull in misc's py3 fixes 9 years ago
Toshio Kuratomi 9a49506677 Update submodule refs 9 years ago
James Cammarata 0d5206f90c Don't mark parent role complete for nested include_role calls
The PlayIterator was written without nested roles in mind, but since
include_role can nest them we need to check to see if we've moved into
a new role which is a child via nesting.

Fixes #18026
9 years ago
Matt Clay 7e2fc88218 Fix docs fragment typo. 9 years ago
Brian Coca ff1e52184f Better error for bad role def 9 years ago
James Cammarata 6bdcb3a392 Make sure free strategy is returning proper TQM constants
Fixes #18023
9 years ago
John R Barker 9183bb6391 docs_fragments formatting and typo improvements (#17981) 9 years ago
Brian Coca b169a61c20 toggle missing handler errors/warnings via config 9 years ago
Michael Scherer f6bcd0f9a1 Add support for distribution_major_version on NetBSD. (#15885) 9 years ago
Peter Sprygada 936bca9fc6 fixes issue when checking if sessions are supported (#18013)
the supports_sessions() call was sending the command as a string instead
of a list which is required when transport is eapi.  This fixes that bug
9 years ago
Peter Sprygada b1666020a9 adds additional exception handling in open() (#18003)
The open() method will now catch a socket.timeout exception and raise
a ShellError.
9 years ago
Peter Sprygada bce31a11c2 minor fix for checking kwargs in get_config() (#18002)
The get_config() method was checking for a nonexistent kwarg that would
cause an exception.  This fixes that problem.
9 years ago
Brian J. Dowling 2be2f35373 Quick ansible-doc fix -- don't run pager if there was an error (no text) 9 years ago
Brian Coca cdb5a222c5 restored 'results' filters
tests do not work the same, restoring old filters to keep backwards compat
tests now only implment the new normalized 'tense'
9 years ago
Peter Sprygada 65ea24f4bb adds log message for successful connection and disconnection (#17993)
The network module will now log a message when it connects to a remote host
successfully and specify the transport used.  It will also log a message
when the module discconnect() method is called.
9 years ago
Peter Sprygada 3badb212fb fixes issue in eos shared module for earlier versions of EOS (#17980)
Earlier versions of EOS that do not support config sessions would
create an exception.  This fix will now check if the device supports
sessions and if it doesn't, it will fall back to not using sessions
9 years ago
Toshio Kuratomi 33f5c25f41 Update submodule refs to pickup firewalld fix 9 years ago
Toshio Kuratomi bf3d546d9a Only dispkay failure to use cryptography at a higher verbosity
Fixes #17982
9 years ago
Toshio Kuratomi e5478a212f Update submodule refs 9 years ago
stephane a32e48555d Correct delegated_host_name check
In fb50698da3 a check for delegated_host_name being defined was added. Make this
check safer as it breaks some playbooks.
9 years ago
Bruno Rocha b06fb2022c Fix unbound method call for JSONEncoder (#17970)
* Fix unbound method call for JSONEncoder

The way it is currently it will lead to unbound method error

```python
In [1]: import json

In [2]: json.JSONEncoder.default('object_here')
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-872fdacfda50> in <module>()
----> 1 json.JSONEncoder.default('object_here')

TypeError: unbound method default() must be called with JSONEncoder instance as first argument (got str instance instead)

```

But what is really wanted is to let the json module to raise the "is not serializable error" which demands a bounded instance of `JSONEncoder()`

```python
In [3]: json.JSONEncoder().default('object_here')
---------------------------------------------------------------------------
TypeError: 'object_here' is not JSON serializable 

```


BTW: I think it would try to call `.to_json` of object before raising as it is a common pattern.

* Calling JSONEncoder bounded `default` method using super()
9 years ago
Chris Houseknecht 77de83730d Add warnings when installing container type roles 9 years ago
Toshio Kuratomi 9f6bbf8c2f Switch get_config to use a single value_type parameter to determine type.
This is better API as the booleans could conflict with each other.

If the config value is a string, make sure to return it as a text string
rather than a byte string.
9 years ago
Ryan S. Brown 6444992afb Update submodule ref for devel 9 years ago
Pavlo Shchelokovskyy aa1ec8af17 Make interprocess polling interval configurable (#16560)
As recently there was back-and-forth with this hardcoded value
(0.001 -> 0.01 -> 0.005), obviousely the optimal value for it depends on
Ansible usage scanario and is better to be configurable.

This patch adds a new config option in DEFAULT section,
`internal_poll_interval`, with default of 0.001 corresponding to the
value hardcoded in Ansible v2.1.
This config option is then used instead of hardcoded values where
needed.

Related GH issue: 14219
9 years ago
Toshio Kuratomi 9f9a960ceb Update submodules 9 years ago
Toshio Kuratomi 1efe782b46 Refactor parsing of CLI args so that we can modify them in the base class
Implement tag and skip_tag handling in the CLI() class.  Change tag and
skip_tag command line options to be accepted multiple times on the CLI
and add them together rather than overwrite.

* Make it configurable whether to merge or overwrite multiple --tags arguments
* Make the base CLI class an abstractbaseclass so we can implement
  functionality in parse() but still make subclasses implement it.
* Deprecate the overwrite feature of --tags with a message that the
  default will change in 2.4 and go away in 2.5.

* Add documentation for merge_multiple_cli_flags
* Fix galaxy search so its tags argument does not conflict with generic tags
* Unit tests and more integration tests for tags
9 years ago
Strahinja Kustudic 9962245b92 Moves 'statically included' messages to -vv verbosity (#17918) 9 years ago
James Cammarata e26bce5221 Sleep briefly while waiting for pending results to reduce CPU churn 9 years ago
Peter Sprygada 087fb4265f adds new option to get_config to grab config with passwords (#17915)
In order for the config to be returned with vpn passwords, the get_config()
method now supports a keyword arg include=passwords to return the desired
configuration.  This replaces the show_command argument
9 years ago
Adrian Likins 41d6f5c635 out.split('\n') -> out.splitlines() (#17879)
foo.split('\n') is picky about the type of 'foo'.
if 'foo' is a bytes type, then foo.split('\n')
will fail on py3 with:

   TypeError: a bytes-like object is required, not 'str'

The foo.split('\n') change isn't strictly required
when run_command returns native str types, but it
is more idiomatic and conceptually also supports other
line endings.
9 years ago
James Cammarata 0a86ddc251 Move searching for roles in the cur basedir to last
Searching the DEFAULT_ROLES_PATH and the roles basedir should come
before this, and it has been a long standing oversight.

Fixes #17882
9 years ago
Mark Szymanski 3a6743fb54 Allowing hostcolor colours to be set 9 years ago
Brian Coca d9d7e413a5 fixed storing of cwd 9 years ago
Toshio Kuratomi 23305540b4 Make ini parsing slightly more robust
Prior to this commit, the ini parser would fail if the inventory was
not 100% utf-8.  This commit makes this slightly more robust by
omitting full line comments from that requirement.

Fixes #17593
9 years ago
Brian Coca 74b7590211 better inventory error messages 9 years ago
James Cammarata d09f57fb3a Check for substates in is_failed before checking main state failure
Fixes #17882
9 years ago
Toshio Kuratomi 08a58ae025 Fix for run_command tests now that it returns native strings 9 years ago
Brian Coca 125a8d3c65 no need for warnings in first_found 9 years ago
Brian Coca 54ce6a9b7a fix for include_role conflating vars/directives 9 years ago
Brian Coca d4b2ea3ec8 include_role process name from options, not task 9 years ago
Toshio Kuratomi 965dcabed2 Update submodule refs for the command fix with new run_command 9 years ago
Adrian Likins d0bdfc2abb Specify run_command decode error style as arg (#17886)
* Specify run_command decode error style as arg

Instead of getting the stdout/stderr text from
run_command, and then decoding to utf-8 with a
particular error scheme, use the 'errors' arg
to run_command so it does that itself.

* Use 'surrogate_or_replace' instead of 'replace'

For the text decoding error scheme in run_command calls.

* Let the local_facts run_command use default errors

* fix typo
9 years ago
Adrian Likins 2addc09050 cast/copy keys() to list to avoid py3 errors
In py3, dict.keys() is a view and not a copy of the
dicts keys, so attempting to delete items from the dict
while iterating over the keys results int

RuntimeError: dictionary changed size during iteration

Resolve by casting .keys() to a list() type.
9 years ago
Adrian Likins 9f673e0725 open anziballs payload 'wb' for py3 9 years ago
Toshio Kuratomi ddd20627a4 Make run_command return native strings
This changes the return value on python3   Return value on python2 was
already byte strings (which is the native str type there.)
9 years ago
Chris Houseknecht ab93d5aae4 Merge pull request #17873 from chouseknecht/fix_3964
Let docker-py decode pull response
9 years ago
James Cammarata 447ab0ab95 Bumping devel version to 2.3.0 9 years ago
Chris Houseknecht fa7e572a96
Let docker-py decode pull response 9 years ago
Matt Davis 64d9de6b25 bump core submodule ref 9 years ago
Brian Coca 49ce0c8bac only change dir to playdir if local
fixes #17869
fixes #17770
9 years ago
Toshio Kuratomi 5bc3cb278c Remove unicode escape (#17866)
* Remove unicode-escape which is not present on python3

Alternative fix for #17305

* Enable the assemble test on python3

* Fix other problems with assemble on python3
9 years ago
Toshio Kuratomi ddb3f91562 Update submodule refs 9 years ago
Guido Günther 14a9bd6a1c Add foreman callback plugin (#17141) 9 years ago
Toshio Kuratomi f72b123584 On python3, subprocess needs another arg to pass extra file descriptors 9 years ago
Toshio Kuratomi 64c446d9c0 Normalize text and byte type in the ssh plugin helper method that builds up an ssh command (#17860)
Mostly cleanups to make the code more efficient, more pythonic, and obey
the unicode sandwich strategy more but also Fixes #17832
9 years ago
Peter Sprygada b0cd624aef fixes issue with run_commands raising error (#17861)
The junos run_commands() method should raise an error when an RpcError is
returned but didn't when using display=text.  This fixes that error
9 years ago
Peter Sprygada 50c445c356 switches the kickstart arg from True to False for eos (#17858)
The kickstart kwarg should be set to False for eos based devices and
was set to True.  This change cleans up problems loading json output
from cli commands

All eos_command test cases are now passing successfully

fixes #17441
9 years ago
Peter Sprygada 512ef49c8a adds new exception for adding condition statements to Conditional (#17859)
When adding condition statements, the Conditional instance will now generate
an AddConditionError if is unable to map the condition to a function in the
instance
9 years ago
Matt Davis a4e5187661 bump core submodule ref for windows async_wrapper bugfix 9 years ago
Matt Davis aa0ad073b8 bugfixes to JSON junk filter, added unit/integration tests to exercise (#17834) 9 years ago
James Cammarata 657506cddd Ensure the "attempts" key is set in the final result for do/until loops
Fixes #17258
9 years ago
Senthil Kumar Ganesan 7e0074263d Remove the dellosX_template module (#17836) 9 years ago
Matt Davis 60b322e3ca bump core submodule ref for async_wrapper fixes 9 years ago
Indrajit Raychaudhuri becb4765c3 Add homebrew in squash_actions list (#16966)
`homebrew`, like other package modules in the existing `squash_actions` list can
benefit from `with_items` loops optimization.
9 years ago
Brian Coca dfff608ceb dzdo prompt fix
fixed tests
dzdo has 2 paths now, with and w/o password
fixes #17838
9 years ago
Brian Coca 6008fbd5cf fix fact gathering flag 9 years ago
Brian Coca 24e81ddd1c add ssh error message to failure 9 years ago
James Cammarata e4ee9de3f4 Fixing parentage of include_role objects for param inheritance
Fixes #17686
9 years ago
Peter Sprygada 6be2f0bded fixes unicode conversation from junos get_config() method (#17841)
The junos config should convert the returning configuration to unicode
not str.  This fixes that issue.
9 years ago
Peter Sprygada 5b4f3b1eda adds better error handling when conditional fails (#17839)
When the conditional cannot extract a value from the result string,
an unhandled exception would be raised.  This fix now gracefully handles
the exception
9 years ago
Peter Sprygada 9faf56a345 fixes issue when calling save_config() and transport is nxapi (#17835)
An unhandled exeception is raised with using nxapi transport and setting
the save argument to true.  This fix will allow the configuration to be
saved regardless of the transport.

fixes ansible/ansible-modules-core#5094
9 years ago
Trond Hindenes 35fba5718d Bugfix: fixes new-alias bug when debugging powershell (#17816) 9 years ago
Makc c6fa701ab1 jabber callback (#16981)
* jabber callback

* delete empty lines

* grammar fix

* fix: do not print error when jabber callback disabled

* change callback version 1 -> 2
9 years ago
Chris Houseknecht e6eed3c3db Merge pull request #17818 from chouseknecht/devel
Parse role dependencies consistently
9 years ago
Chris Houseknecht 8300e67cbe Use new YAML syntax in role dependencies. 9 years ago
jctanner fff161f2f6 Smart mode for sftp+scp (#17813)
If the sftp fails, roll over to scp by default. This saves users
from having to know about the scp_if_ssh method when sftp is broken
on the remote host.
9 years ago
Toshio Kuratomi 458990084e Update submodule refs 9 years ago
Peter Sprygada c534f8f9fc fixes conditional processing with junos and xml data structures (#17801)
The conditional processing was failing due for two reasons:

1) The xml to json conversion string was not happening before the runner
   was processing the results
2) The Conditional instance was not parsing conditionals encoded with []

This fix address both issues.
9 years ago
cinerama70 fb50698da3 Graceful error handling when delegate_to host null (#17453) (#17783)
Currently, if the host specified in delegate_to for a task is null,
Ansible will crash with a stack trace. Add a check for this state
and handle the error appropriately.
9 years ago
Brian Coca 3c42651fc7 fixed typo 9 years ago
Gilles Gagniard da5b0c39c9 fixes #16865 : we should properly determine connection type for delegated task first, before overriding remote user for local connections (#17723) 9 years ago
Peter Sprygada 9854644431 adds overwrite kwarg to load_config in junos (#17798)
The junos load_config() method supports operations of overwrite, replace
and merge.  This adds the missing overwrite keyword arg to load_config()
so that action in junos_template can be procesed correctly.
9 years ago
Toshio Kuratomi 17c0f52c96 Update submodules refs 9 years ago
Brian Coca 368497fd14 better handling of host lists (#17781)
* better handling of host lists

fixes #17762

* corrected message

* fixed extras space
9 years ago
Brian Coca 86ea21a73d ansible_play_batch (#17779)
* ansible_play_batch

* added version added
9 years ago
Peter Sprygada 605152e61b raises ValueError exception if conditional is not parsable (#17788)
The Conditional class now raises a ValueError with message if it cannot
correclty parse the passed in conditional.  This makes it easier to
detect issues in modules that specify conditionals.
9 years ago
Matt Clay 670536f685 Revert "Clear the plugin path cache when adding new directories" (#17785)
This reverts commit 5a57313dd7.
9 years ago