Commit graph

39300 commits

Author SHA1 Message Date
James Tanner 565d4639b3 Look for globally installed collection plugins 2018-09-12 13:05:27 -04:00
James Tanner 2b228874f4 Use mazer installed plugins 2018-09-06 16:24:10 -04:00
Adrian Likins 1f55cf4ed4 Merge branch 'devel' into mazer_role_loader
* devel: (513 commits)
  Fix systemd service is already masked issue (#44730)
  fix issue with no_log in py3
  modules/terraform: Quote the variable values in the command line (#43493)
  YUM4/DNF compatibility via yum action plugin (#44322)
  BOTMETA.yml: remove superfluous labels (#44628)
  Share the implementation of hashing for both vars_prompt and password_hash (#21215)
  one_host environment variables, Fixes #44163 (#44568)
  ec2: add "IAM Role" to instance_profile_name
  ios_vrf speed fix (#43765)
  fix typo (#44712)
  junos cli_config idempotence fix (#44706)
  Switch to LiteralPath instead of Path. Closes #44508 (#44509)
  Module win_domain_computer fix delete computer with child (#44500)
  ACME: improve documentation (#44691)
  doc: fixed typo (#44685)
  IPA: Add option to specify timeout (#44572)
  Added nios_txt_record module (#39264)
  adds the bigip_cli_script module (#44674)
  Clean up BOTMETA.yml (#44574)
  Change validate-modules for removed modules
  ...
2018-08-27 15:46:18 -04:00
Christian Kotte fc64ce3e0c Fix systemd service is already masked issue (#44730)
* Check if service is already masked

Newer versions of Systemd now report a 'LoadError' when the unit file
is masked. This causes the play to fail with an error stating that the
service is already masked.

Now the systemd module checks if the service is masked and doesn't
fail if it's masked and LoadError is reported.

Fixes issue #42384.

* Remove useless parens
2018-08-27 15:13:35 -04:00
Brian Coca 4dea9d84ed fix issue with no_log in py3
the error percolates differently from undefined vars in jinja2,
so fallback to use play_context as it is not involved in current templating
2018-08-27 11:57:02 -07:00
Rémi REY 26be68dd1c modules/terraform: Quote the variable values in the command line (#43493)
* modules/terraform: Quote the variable values in the command line

Fixes: #43492

* fix six import
2018-08-27 14:38:21 -04:00
Adam Miller 397febd343 YUM4/DNF compatibility via yum action plugin (#44322)
* YUM4/DNF compatibility via yum action plugin

DNF does not natively support allow_downgrade as an option, instead
that is always the default (not configurable by the administrator)
so it had to be implemented

 - Fixed group actions in check mode to report correct changed state
 - Better error handling for depsolve and transaction errors in DNF
 - Fixed group action idempotent transactions
 - Add use_backend to yum module/action plugin
 - Fix dnf handling of autoremove (didn't used to work nor had a
   default value specified, now does work and matches default
   behavior of yum)
 - Enable installroot tests for yum4(dnf) integration testing, dnf
   backend now supports that
 - Switch from zip to bc for certain package install/remove test
   cases in yum integration tests. The dnf depsolver downgrades
   python when you uninstall zip which alters the test environment
   and we have no control over that.
 - Add changelog fragment
 - Return a pkg_mgr fact if it was not previously set.
2018-08-27 10:17:47 -07:00
Pilou 9ff20521d1 BOTMETA.yml: remove superfluous labels (#44628)
Path components and filename without extension which are valid GitHub
labels are already default labels.
2018-08-27 18:50:49 +02:00
Matthias Fuchs 7871027c9d Share the implementation of hashing for both vars_prompt and password_hash (#21215)
* Share the implementation of hashing for both vars_prompt and password_hash.
* vars_prompt with encrypt does not require passlib for the algorithms
  supported by crypt.
* Additional checks ensure that there is always a result.
  This works around issues in the crypt.crypt python function that returns
  None for algorithms it does not know.
  Some modules (like user module) interprets None as no password at all,
  which is misleading.
* The password_hash filter supports all parameters of passlib.
  This allows users to provide a rounds parameter, fixing #15326.
* password_hash is not restricted to the subset provided by crypt.crypt,
  fixing one half of #17266.
* Updated documentation fixes other half of #17266.
* password_hash does not hard-code the salt-length, which fixes bcrypt
  in connection with passlib.
  bcrypt requires a salt with length 22, which fixes #25347
* Salts are only generated by ansible when using crypt.crypt.
  Otherwise passlib generates them.
* Avoids deprecated functionality of passlib with newer library versions.
* When no rounds are specified for sha256/sha256_crypt and sha512/sha512_crypt
  always uses the default values used by crypt, i.e. 5000 rounds.
  Before when installed passlibs' defaults were used.
  passlib changes its defaults with newer library versions, leading to non
  idempotent behavior.

  NOTE: This will lead to the recalculation of existing hashes generated
        with passlib and without a rounds parameter.
        Yet henceforth the hashes will remain the same.
        No matter the installed passlib version.
        Making these hashes idempotent.

Fixes #15326
Fixes #17266
Fixes #25347 except bcrypt still uses 2a, instead of the suggested 2b.

* random_salt is solely handled by encrypt.py.
  There is no _random_salt function there anymore.
  Also the test moved to test_encrypt.py.
* Uses pytest.skip when passlib is not available, instead of a silent return.
* More checks are executed when passlib is not available.

* Moves tests that require passlib into their own test-function.

* Uses the six library to reraise the exception.

* Fixes integration test.

When no rounds are provided the defaults of crypt are used.
In that case the rounds are not part of the resulting MCF output.
2018-08-27 08:40:41 -07:00
Rafael ad993ca734 one_host environment variables, Fixes #44163 (#44568)
* including test case using environment variables as per issue #44163

* including missing environment variable in shared documentation fragement, related to issue #44163

* fixes parameters via environment variables, issue #44163
2018-08-27 10:55:04 -04:00
Chris Adams 23eb4f2093 ec2: add "IAM Role" to instance_profile_name
The AWS API and console docs are inconsistent about whether EC2 instances have IAM profiles or roles. Things which follow the API tend to use profile but the console uses “IAM Role”. This adds that term to the help text so it's searchable.

+label: docsite_pr
2018-08-27 10:06:15 -04:00
Dennis Israelsson 49f692b08f ios_vrf speed fix (#43765) 2018-08-27 08:51:33 -04:00
lolcube 1fac494d8c fix typo (#44712) 2018-08-27 14:35:53 +02:00
Trishna Guha 79a020e312
junos cli_config idempotence fix (#44706)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2018-08-27 12:40:16 +05:30
Charles a7f35e232e Switch to LiteralPath instead of Path. Closes #44508 (#44509)
* Switch to LiteralPath instead of Path. Closes #44508

* add changelog fragment

* fix line endings and remove final empty line

* Minor text changes in changelog
2018-08-27 16:18:45 +10:00
Daniel-Sanchez-Fabregas af49627a08 Module win_domain_computer fix delete computer with child (#44500)
* Module win_domain_computer fix delete computer with child

* add changelog fragment
2018-08-27 15:54:16 +10:00
Felix Fontein fadf8a2d09 ACME: improve documentation (#44691)
* Override description for account_key_src and account_key_content to also mention private_key_*.

* Convert generic OpenSSL/cryptography remark from description to note.

This avoids the whole description list to be sorted alphabetically, which will be done by plugin_docs.py in case description is mentioned in both module fragment and module itself.

* Moving more notes to the notes: section.

* Uniformization of first paragraph. Mainly mention ACME supporting CAs, and only then mention Let's Encrypt as one of them.

* Adjusting to current drafts.

* Adjusting to updated drafts.

* Harmonizing short module descriptions.

* Referencing helper modules.

* Move general Let's Encrypt remark to doc fragment.

* Changing some Let's Encrypt references to more generic statements.
2018-08-26 22:46:55 +02:00
Donghyun Kang 5fecf8baab doc: fixed typo (#44685) 2018-08-26 21:36:11 +02:00
Abhijeet Kasurde 70d7513542
IPA: Add option to specify timeout (#44572)
This fix allows user to specify idle timeout for fetch_url used
internally in IPA connection and post_json call.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-08-26 23:18:46 +05:30
coreywan 50750c7363 Added nios_txt_record module (#39264)
* Added nios_txt_record module

Whitespace cleanup and version fix

First stab at txt record integration test

Fix for CI version requirement

Added nios_txt_record module

Whitespace cleanup and version fix

First stab at txt record integration test

Fix for CI version requirement

force re-run

* added alias for cloud group1
2018-08-26 12:25:16 +00:00
Tim Rupp 24a379f0b7
adds the bigip_cli_script module (#44674)
This module can be used to manage tmsh cli scripts on a BIG-IP
2018-08-24 22:08:37 -07:00
Dag Wieers b6b36276a4 Clean up BOTMETA.yml (#44574)
This PR includes:
- Removal of maintainers that are listed as author in the module
- Removal of entries that do not extend the original author list
- Move ignored-statement to namespace/directory (where useful)
- In some cases, fix the authors-list or add missing github id

We end up with a list of exceptions/additions and a large set of
namespace/directory maintainers or team of maintainers.

Some entries could be further improved by discussing with some
maintainers.
2018-08-24 19:43:35 -04:00
Toshio Kuratomi 68c60ad307 Change validate-modules for removed modules
Removed modules now don't have documentation.  Need to account for that
when checking them in validte-modules
2018-08-24 15:37:13 -07:00
Toshio Kuratomi 3ccdb35f59 Do not test for docs in removed modules 2018-08-24 15:37:13 -07:00
Toshio Kuratomi ee891c2b16 Fix refs broken by removal of old module docs 2018-08-24 15:37:13 -07:00
Toshio Kuratomi 0873d46617 Fix ansible-doc and docsite generation for removed modules
* Fix ansible-doc wrt removed modules
  * Fix listing of modules ia ansible-doc to not complain about removed modules
    Removed modules are marked as such in the metadata but nowhere else.
    Need to retrieve the metadata when a module doesn't have a doc so that
    we can tell if it falls under this case.
  * omit removed modules from json dump
  * Print an error that the module has been removed if attempting to run
    ansible-doc on that specific module

* Get plugin_formatter to stop outputting removed modules
2018-08-24 15:37:13 -07:00
Toshio Kuratomi b2932a41b0 Fixup removed and deprecated modules
* Removed modules no longer have documentation
  Decided this was causing people to think that modules were supported
  even after being removed.  This change is a new strategy to have the
  error message trying to use a removed module point people to the older
  documentation.

* Add stubs for modules removed in 2.7
  These are freshly removed so we want people who are still using them
  when they upgrade Ansible to have a hint as to where to find information
  on how to port.

* Finish properly undeprecating include
  include was undeprecated earlier but not all of the pieces that marked
  it as deprecated were reverted.  This change fixes the remaining
  pieces
2018-08-24 15:37:13 -07:00
Toshio Kuratomi 8ec973b453 Fix unittests for always adding basic to the AnsiBallZ zips 2018-08-24 15:37:13 -07:00
Toshio Kuratomi 55503004ec Fix recursive_finder so it doesn't re-read files multiple times
This closes a corner case where recursive_finder could read a file
multiple times.
2018-08-24 15:37:13 -07:00
Toshio Kuratomi 14b3ae1120 Fix new AnsiballZ code to always include module_utils/basic
The AnsiballZ optimization which only uses one pyton interpreter
currently monkeypatches the arguments into a global argument in module_utils
so we need to always include basic.py.  In the future we should fix this
so that it monkeypatches its own file.  That way we won't need to always
include basic.py
2018-08-24 15:37:13 -07:00
vista- f29ef1fc11 Add example for configuration item deletion (#44390) 2018-08-24 16:13:10 -04:00
Tim Rupp 79153b95e5
Adds params to the profile-client-ssl module (#44656)
This patch adds new parameters to the client ssl module.
2018-08-24 15:51:24 -04:00
Ryan S. Brown 990e95eb57 Fix ec2_instance synopsis. Fixes #44641 2018-08-24 15:44:28 -04:00
Dario Zanzico d0bf38ab6a New module: docker_swarm_service (#19229) 2018-08-24 15:40:40 -04:00
Tim Rupp ee1b899b18
Adds AS3 module (#44655)
This adds the as3 module for bigip to ansible.
2018-08-24 15:12:23 -04:00
Tim Rupp cd2a3eb1ea
Removes more netaddr deps (#44657)
Removed dependency from bigip_snat_pool
2018-08-24 14:52:48 -04:00
Tim Rupp f3a61dd93d
Adds aliases parameter to gtm wide ip (#44652)
This parameter can assign aliases to a wide ip.
2018-08-24 14:38:41 -04:00
Tim Rupp 73c97cb779
Adds parameters and removes netaddr dependency (#44654)
several new parameters added to bigip_node and the netaddr dependency
has been removed.
2018-08-24 14:38:23 -04:00
Tim Rupp b5d45bdd1a
Refactors bigip_iapp_service and adds params (#44653)
Module was refactored to look like other f5 modules. also added new
params.

* decription
* device_group
* metadata
2018-08-24 14:38:13 -04:00
Tim Rupp 2930b28247
Adds new params to gtm server module (#44650)
Parameters to support iquery options were added.
2018-08-24 14:09:20 -04:00
Tim Rupp 7e6fbb3f8b
Adds params and remove netaddr (#44648)
This patch adds new parameters to the vcmp guest module and removes
the netaddr python dependency
2018-08-24 13:58:49 -04:00
Tim Rupp e4af3e7b4d
Misc fixes (#44649)
Correcting docs and adding a Parameters handler for description
2018-08-24 13:58:25 -04:00
Tim Rupp 639cfe3b6f
Refactors device group (#44599)
Make module use patterns that other modules use
2018-08-24 13:58:12 -04:00
Aren 9db3e597f3 state: present added in docs (#37197)
* state: present added in docs

* atomic_container.py docs now match argspec, enforce test
2018-08-24 12:22:18 -05:00
Sloane Hertel d3f5238c09
Fix dangerous elb_application_lb state (#44646)
* elb_application_lb: fix dangerous default of deleting an ELB if state is omitted by changing state to default to present to be more like other AWS modules
2018-08-24 13:04:15 -04:00
Shuang Wang b03feb6d40 Implement part of #27617 [expend checksum format to <algorithm>:(<checksum>|<url>)] (#43751)
* expend checksum format to <algorithm>:(<checksum>|<url>)

* continue to code at office

* ALPHA - expend checksum format to <algorithm>:(<checksum>|<url>)

* clean up tmpfile and comment

* try to add test code for 27617

* try to add test code for 27617

* try to add test code for 27617

* try to fix [Could not find or access 'testserver.py']

* fix test code [Could not find or access 'testserver.py']

* fix test code [add files dir]

* fix test code [files dir not exists]

* as [connection was closed before a valid response was received]

* [connection was closed before a valid response was received]

* [connection was closed before a valid response was received]

* add test item [sha1 and sha256]

* since [connection was closed before a valid response was received]

* fix [connection was closed before a valid response was received]

* fix test code typo

* add docs for #27617

* PR #43751 is minor change

* fix pep8 issue.

* fix test code style.

* fix unexpected quote
2018-08-24 12:45:32 -04:00
Chris Archibald 3820c3351b Adding ElementSW Backup Module (#43960)
* Adding ElementSW Backup Module
2018-08-24 17:23:03 +01:00
Chris Archibald 319bd2de5f Adding ElementSW Cluster Pair Module (#43967)
* Adding ElementSW Cluster Pair
2018-08-24 17:21:52 +01:00
Chris Archibald 448db900dd Adding ElementSW SnapShot Schedule Module (#43974)
* Adding ElementSW SnapShot Schedule Module
2018-08-24 17:18:02 +01:00
Chris Archibald d7efcc4161 Adding ElementSW Vlan Module (#43981)
* Adding ElementSW Vlan Module
2018-08-24 17:16:51 +01:00