Commit Graph

20082 Commits (e07fbba0a5383722e5813c51c69375cd9cee9623)
 

Author SHA1 Message Date
Matt Clay e07fbba0a5 Add missing boilerplate code. (#16980) 8 years ago
Matt Clay 2dc8d80dc5 Update submodule refs. 8 years ago
James Pic d2438b6b6b Debug output callback (#16839)
* Added debug output callback

* Better import

* Comment on line
8 years ago
Toshio Kuratomi 408664b532 Update submodule refs 8 years ago
James Cammarata 1714279b5e Tweak the way the debug strategy imports the linear strategy parent
Due to the way we load plugins, internally to Python there can be issues when
the debug strategy is loaded after the linear strategy. To work around this,
we're changing the import line for the linear strategy to avoid the problem.

Related to #16825
8 years ago
Toshio Kuratomi 6db6edfc4f YAML treats some unquoted strings as booleans. For instance, (#16961)
uri:
    follow_redirects: no

Will lead yaml to set follow_redirects=False.  This is problematic when
the module parameter is not a boolean value but a string.  For instance:

  follow_redirects = dict(required=False, default='safe', choices=['all', 'safe', 'none', 'yes', 'no']),

Our parameter validation code ends up getting follow_redirects="False"
instead of "no".  The 100% fix is for the user to quote their strings in
playbooks like:
  uri:
    follow_redirects: "no"

But we can fix quite a few common cases by trying to switch "False" back
into the string that it was specified as.  We only do this if there is
only one correct choices value that could have been specified.  In the
follow_redirects example, a value of "True" only maps back to "yes" and
a value of "False" only maps back to "no" so we can do this.  If choices
also contained "on" and "off" then we couldn't map back safely and would
need to force the module author to change the module to handle this
case.

Fixes parts of the following PRs:

* https://github.com/ansible/ansible-modules-core/pull/4220
* https://github.com/ansible/ansible-modules-extras/pull/2593
8 years ago
Scott Butler 8fa5e88b55 Updated installation links. 8 years ago
Brian Coca f92d724b17 made done: more visible 8 years ago
Brian Coca 022cc95a61 removed markdown .. its rst 8 years ago
Brian Coca 900a15ffd6 updated roadmap with a few 'dones' 8 years ago
Toshio Kuratomi 1ecf51d87e * Fix race in creating temp directories pre-fork (#16965)
* These can still race when multiple ansible processes are created at
    the same time.
* Reverse order of expanduser and expandvars in unfrakpath(). So that
  tildes in environment variables will be handled.
8 years ago
Matt Davis 746ea64d30 fix for unspecified retries on until + test (#16963)
fixes #16907
8 years ago
Brian Coca bced8715cd add transparent vault use to other plugins (#16957)
assemble, script and unarchive (copy already had it).
8 years ago
Will Thames eb2a3a91a8 task_result _check_key should handle empty results (#16766)
When a task result has an empty results list, the
list should be ignored when determining the results
of `_check_key`. Here the empty list is treated the
same as a non-existent list.

This fixes a bug that manifests itself with squashed
items - namely the task result contains the correct
value for the key, but an empty results list. The
empty results list was treated as zero failures
when deciding which handler to call - so the task
show as a success in the output, but is deemed to
have failed when deciding whether to continue.

This also demonstrates a mismatch between task
result processing and play iteration.

A test is also added for this case, but it would not
have caught the bug - because the bug is really in
the display, and not the success/failure of the
task (visually the test is more accurate).

Fixes ansible/ansible-modules-core#4214
8 years ago
Ryan Brown 4f7996fbc1 Merge pull request #16879 from alikins/gce_module_utils
Fix import of gce/gcdns without a libcloud module
8 years ago
James Cammarata 159aa26b36 FEATURE: adding variable serial batches
This feature changes the scalar value of `serial:` to a list, which
allows users to specify a list of values, so batches can be ramped
up (commonly called "canary" setups):

- hosts: all
  serial: [1, 5, 10, "100%"]
  tasks:
  ...
8 years ago
Nick Heiner 3a83333ef2 Small grammar fixes. (#16955) 8 years ago
ovcharenko f326e49d75 Fix for issue @synchronize doesn't substitute variables properly #16347 (#16349)
* Fix for issue @synchronize doesn't substitute variables properly #16347
8 years ago
Hidetoshi Hirokawa 595946b80e Fix the security rules name duplication of azure_rm_common. (#16897) 8 years ago
victoru 14901b65d9 raise AnsibleError in hashi_vault lookup plugin when hvac module is not installed (#16859) 8 years ago
Andrew Dolby cbbc643317 add default location and env override (#16854) 8 years ago
Oskar Wyciślak 8e956675f7 Strip group names of whitespaces, so we can use space after comma in openstack's groups metadata field. (#16843) 8 years ago
Brian Coca 7ea56e1c79 optimize booleanifycation 8 years ago
Brian Coca b0786a1845 actually skip bad/broken module files found 8 years ago
Brian Coca 98c149859a added y/n to list of module booleans 8 years ago
Brian Coca 27691991c3 refactored ethtool data to allow for other callers 8 years ago
Brian Coca dd12a6b310 document 'no booleans in choices' 8 years ago
Adrian Likins d8ea0c3dfe Add links to gh issues for vault roadmap items 8 years ago
James Cammarata a9b725aa10 Updating packaging vars for new version 2.1.1 8 years ago
James Cammarata a6840b940b Updating release playbook
* Now generates SHA file for tar.gz too
8 years ago
Matt Clay 5f12731797 Run more integration tests on FreeBSD. (#16923) 8 years ago
Matt Clay 00fbc76e69 Increase async time limit on tests to 10 seconds. (#16921) 8 years ago
Matt Clay ff4f4bc8a0 Add binary module tests to Windows CI. (#16914) 8 years ago
Brian Coca f7570f1dc4 Implicit localhost ondemand (#16900)
* Revert "There can be only one localhost"

This reverts commit 5f1bbb4fcd.
this broke several usages of localhost, see #16882, #16898 and #16886

* ensure there is only 1 localhost

fixes #16886, #16882 and #16898

- make sure localhost exists before returning it
- optimzed host caching
- ensure we always return a host object
8 years ago
Matt Clay 17e4629d52 Add remote CI support for modules. (#16908) 8 years ago
Dick Davies fc6b841b2f correct ini variable name (#16901)
cache_path is used to calculate cache_dir , the script doesn't actually read cache_dir from this file.

This makes the setting work (otherwise it always uses the default).
8 years ago
Matt Clay e2602e9be0 Add FreeBSD to Shippable CI. (#16883) 8 years ago
Matt Clay 6dc148d82c Download files from S3 to improve reliability. (#16891)
Binary module tests now download pre-compiled binaries from S3
instead of downloading go and compiling the modules.

Files downloaded form SourceForge are now downloaded from S3.
8 years ago
Brian Coca 123d54e736 added pid to backup file name to avoid collisions 8 years ago
Adrian Likins 36bf1e6b7e Fix funcd to at least import without errors. (#16288)
This plugin was using very old api, so was
updated to newer api.

Also misc style/pep8 cleanups.
8 years ago
Adrian Likins 20ef8d5aaf Disable 'xmllint' checks in a2x (#16317)
It brings in a libxml2 dep to the docs build
require. The a2x default of xmllint invocation
attempts to make outgoing requests to download
XML DTD's, despite a2x using the '--nonet' flag.
8 years ago
Adrian Likins 6fdd8c4a98 Fix the doctype attribute in man page asciidocs (#16696)
The asciidoc.in sources had an attribute like:

:doctype:manpage

That attribute was not being correctly rendered in a2x
resulting in the 'doctype:manpage' showing up in a spurious
additional AUTHOR section at the end of the generated man pages like:

AUTHOR
       :doctype:manpage

Fix with correct formatting of 'doctype' attribute.
8 years ago
scottb e0318f752d Merge pull request #16418 from alikins/docs-api
Add docs-api to generate api docs with sphinx
8 years ago
Adrian Likins fa1d55f683 Fix import of gce/gcdns without a libcloud module
The module level function defs for gcdns_connect() and
gce_connect() provide a default arg for 'provider' that
references into the libcloud module. If the libcloud
modules were not installed, the gce/gcdns python modules
would throw ImportError.

Let the provider arg default to None and if not provided,
set it to the default libcloud.compute.types.Provider.*
value if the modules are installed.
8 years ago
Gennady Trafimenkov 2bc679be07 Testing that service not enabled during check run (#16739)
* Enabled more tests in test_service on systems with systemd.
* Fix inconsistency in cleaning up test service. The conditions for service setup and service cleanup were different.
* Add check mode run for service enable.
8 years ago
Matt Clay 380ed053e8 Add Windows integration tests to Shippable. (#16803)
Enable Windows integration tests on Shippable.
8 years ago
Ryan S. Brown bed24689ec Fix syntax error in json/jsonarg type parser
The lack of a comma caused the statement to always evaluate as a
`TypeError` when python interpreted `value (list, tuple, dict)` to call
value with the arguments list, tuple, and dict.
8 years ago
William Albert 409d95d67e Refactored gce util module to support other GCP services (#15924)
This is a refactoring of the existing GCE utility module to support other projects on Google Cloud Platform.

The previous gce.py module was hard-coded specifically for GCE, and attempting to use it with other projects in GCP failed.

See https://github.com/ansible/ansible/pull/15918#issuecomment-220165913  for more detail.

This has also been an issue for others in the past, although they've handled it by simply
duplicating some of the logic of gce.py in their own modules.

-   The existing gce.py module was renamed to gcp.py, and modified to remove any 
     imports or other code that refers to libcloud.compute or GCE (the GCE_* params were
     retained for compatibility). I also renamed the gce_connect function to gcp_connect, 
     and modified the function signature to make supplying a provider, driver, and agent 
     information mandatory.

-  A new gce.py module was created to handle connectivity to GCE. It imports the
   appropriate libcloud.compute providers and drivers, and then passes them on
   to gcp_connect in gcp.py. The constants and function signatures are the same
   as the old gce.py, so compatibility with existing modules is retained.

- A new gcdns.py module was created to support PR ansible/ansible-modules-extras#2252
  for two new Google Cloud DNS modules, and to demonstrate support for a non-GCE 
  Google Cloud service. It follows the same basic structure as the new gce.py module,
  but imports from libcloud.dns instead.
8 years ago
Abhijit Menon-Sen 99ae82dc1b Merge pull request #16852 from yunque/patch-1
Grammatical clarification and stylistic uniformity
8 years ago
yunque d1e4aa76a7 Grammatical clarification and stylistic uniformity
Made more legible by removing unnecessary punctuation, formatting special words (e.g. `sudo`), and a few other minor grammatical changes.
8 years ago