Commit Graph

3059 Commits (1c6bc5ed4ac739a5aae4f612ecef0b599720ffef)

Author SHA1 Message Date
Timo Runge b45b599433 Fix for "AttributeError: 'module' object has no attribute 'cursors'" (#49191) (#53445)
* Fix for "AttributeError: 'module' object has no attribute 'cursors'" (#49191) (#1)

* Fix for "AttributeError: 'module' object has no attribute 'cursors'" (#49191)

* Adding changelog fragment for issue #49191 and the following PR.

* Update lib/ansible/module_utils/mysql.py

Co-Authored-By: timorunge <timorunge@users.noreply.github.com>
2019-03-08 08:21:56 +00:00
Sam Doran bf28b5ceca
Use distro.id() instead of distro.name() (#52199)
* Update sys_info unit tests

* Correct distribution values in hostname.py

* Normalize Rhel to Redhat
2019-03-07 13:25:59 -05:00
Zim Kalinowski 16571ec8a6 Updating azure-mgmt-resource package version to 2.1.0 (#53437) 2019-03-07 14:55:28 +08:00
Felix Fontein a904bc7797 improve docker_* test speed (#53417)
* docker_swarm_service tests: use 'resolve_image: no' to avoid registry lookup if image is up-to-date.

* Improve docker_node performance: don't sleep after last try.
2019-03-06 14:01:00 -08:00
Mike Wiebe b090b57eac Module nxos logging fixes (#52883)
* nxos_logging fixes
2019-03-06 13:55:03 -05:00
Brian Coca b94bfed1a6
scan_packages: made adding package managers easier (#49079)
* made adding package managers easier

  added portage support

* moar pkg mgrs and moar info

 - added 'pkg' pkg manager (freebsd)
 - added pip
 - more apt info

* updated clgo

* Updates from feedback

Co-Authored-By: bcoca <bcoca@users.noreply.github.com>

* incorporated more feedback and added docstrings

* moar from feedback

  - made manager list dynamic and names based on class
  - better not found msg
  - made abstract metaclass again
  - test is now init exception
  - module to global
  - better dedupe comments

* more targetted errors/warnings

* added strategy, reordered to conserve priority

* rpm > apt

* move break to top

* fix trate

* piping it

* lines and meta

* refactored common functions

 - moved pip into it's own module
 - cleaned up base clases
 - ensure 'lower' match in package_facts

* missing license

* avoid facts

* update clog

* addressed feedback

* fix clog

* cleanup

* upd

* removed pip as that was removed

* renamed cpan

* added a single line since 2 lines are needed to be

readabnle instead of just 1 line, it is a huge problem otherwise

* fix internal ref

* not intended in this round

* updated as per fb
2019-03-06 12:29:51 -05:00
Xander Madsen d0db99e023 Fix redfish_facts GetPsuInventory command not returning correct output (#52675)
* Move GetPsuInventory from Systems category to Chassis category

* Change get_psu_inventory to search through Chassis instead of Systems and PoweredBy for PowerSupplies

* Remove GetPsuInventory from Examples

* remove trailing whitespace

* Change boolean check from '!= None' to 'is not None'

* Don't include 'Absent' PSUs in get_psu_inventory()

* Add check to see if Power key is in Chassis before proceeding

* remove trailing whitespace

* Add continue step for when powersupply property is not found, and check if resulting entries is empty, returning message if nothing was found rather than an empty list
2019-03-06 12:43:23 +00:00
Fabian von Feilitzsch 65424dd614 Allow user to specify a custom condition when waiting (#52185) 2019-03-06 12:41:17 +00:00
Xander Madsen 539cab89e1 Fix get_disk_inventory() not using Storage resource and add more prop… (#52939)
* Fix get_disk_inventory() not using Storage resource and add more properties to output

* don't include null entries

* Add the SimpleStorage resources as well

* Fix misspelling of disk_result
2019-03-06 12:39:06 +00:00
Abhijeet Kasurde 70f6cdb814
VMware: add cluster name in facts (#53056)
Fixes: #45280

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-03-06 10:15:26 +05:30
Felix Fontein 1510435577 acme_account: improve account deactivation idempotency (#53234)
* Improve account deactivation idempotency.

* Using newer testing container.

* Add comment to test.
2019-03-05 16:08:01 +00:00
Felix Fontein 07fcb60d55 Python 2: accept both long and int for type=int (module options) (#53289)
* Added unit test
2019-03-05 09:39:03 -05:00
Ondra Machacek 6b2c2f169a kubevirt: Add datavolumes support (#52998) 2019-03-05 17:13:40 +05:30
René Moser aafc5538bc
cloudscale_server: refactor to implement update (#52683) 2019-03-05 10:40:16 +01:00
Lukas Kämmerling 66beeaf032 Add hcloud server module (#53062) 2019-03-05 07:30:24 +01:00
Sam Doran aba4bed803
Move _handle_no_log_values() out of basic.py (#48628)
* Rename method and make private
* Use is_iterable, combine transformations
* Remove unused return_values from network modules
* Improve docstrings in new functions
* Add new PASS_VAR
* Add unit tests for list_no_log_values
* Fix unit tests for Python 2.6
2019-03-04 17:02:44 -05:00
Martin Krizek 239fb1f68d yum/dnf: Add download_dir param (#53171) 2019-03-04 13:08:58 -05:00
Nathaniel Case d5aabd02ba
restconf_config module (#51971)
* Add restconf_config module

* Try to do the right thing when given partial paths

* Add PATCH

* Delete should not require content

* Non-JSON exceptions need raising, too

* Let ConnectionError objects pass through exec_jsonrpc
2019-03-04 08:27:18 -05:00
Nilashish Chakraborty e55955d01b
frr: New module for BGP configuration management (#51281)
* Added frr_bgp module

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix pycodestyle warnings

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI docs issues

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Initial test files

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix dir structure to make CI happy

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix imports

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Split neighbor spec to handle general session and af session

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* New set of unittests

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI - 2

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Update license

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add port option for neighbor

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Validate network input

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Validate network input

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix sanity test failure

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add validation for AF and more examples

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-03-04 15:02:56 +05:30
Yuwei Zhou d1b9e211a2 Add addon/network/aad support for AKS (#51014) 2019-03-04 17:15:04 +08:00
Nilashish Chakraborty 55bfa18c0c
New module to support BGP configuration management in IOS (#49121)
* ios_bgp initial push

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Added tests for ios_bgp

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fixed docs

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Added space

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix Shippable Errors

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix Shippable Errors

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add support for af_neighbor option

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add support for af_neighbor option - 2

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add support for af_neighbor option - 3

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix typo

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Refactor BGP

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI and previous reviews

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add missing params documentation

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Remove previous tests

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Remove elements=dict from keys with type=list from args spec for element validation to pass

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Added function to validate input

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix sanity test failure

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Minor bug fixes

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix typo in fixture

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add integration tests

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-03-04 13:37:57 +05:30
ftntcorecse a65db027e8 Fortinet FortiManager Module_Utils MINOR Update (#52756)
* PR for minor update to FortiManager.py.

Now accepts entire module as input, so it can use those data points for decisions later. This update is entirely related to our debugging and should have zero impact on existing modules.

* Minor change to documentation to kick off another shippable. Suspected error on last run.

* Commented out reference to the import library for fortimanager debug (which is only used by us, internally). It needs to be moved outside of the Ansible namespace so we can call it with try/catch without any other issues. Right now /ansible/executor/module_common.py runs w/ recursive_finder, and throws errors because it can't find debug on other machines within the ansible namespace. We don't have this issue with pyFMG legacy usage.

So, we're disabling the code until we have a better way of calling this debug module. It isn't required for production usage.
2019-03-04 10:56:06 +05:30
Dag Wieers 85eb8c30a6
MSO: Clean up internal references (#53242)
During the development of the new site modules the use of references is
more common and this urged making the mechanism more simple overall.
2019-03-04 01:26:47 +01:00
Xander Madsen 96549bf6ff Remove mistaken commits from other pull request. (#52928) 2019-03-01 10:13:08 +00:00
Xander Madsen 9f7eb8ee53 Resolved conflicts with mistaken commits in earlier history (#52953) 2019-03-01 10:11:46 +00:00
Ondra Machacek b54f2799f1 kubevirt: Fix cloud_init in kubevirt_vm (#52999) 2019-03-01 10:06:17 +00:00
Sam Doran 2a98faee2b
Move _handle_aliases() out of basic.py (#48578)
Refinements:
- return legal_inputs and update class properties
- remove redundant arguments from method and handle in caller
- add better exception types to method

* Add unit tests for handle_aliases
2019-02-28 16:43:19 -05:00
Dag Wieers 4e6c113bf0 uri/win_uri: Make method a free text field (#49719)
* uri/win_uri: Make method a free text field

Since various interfaces introduce their own HTTP method (e.g. like
PROPFIND, LIST or TRACE) it's better to leave this up to the user.

* Fix HTTP method check in module_utils urls

* Add integration test for method UNKNOWN

* Clarify the change as requested during review
2019-02-28 15:55:18 -05:00
Abhijeet Kasurde 0f353ed99d AWS: handle boto3 credential file parsing error (#53098)
Fixes: #53051

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-28 08:41:59 -06:00
Sam Doran 23a6b88dd2
Modify the correct variable when setting available hashing algorithms (#52994)
* Revert "use list instead of tuple and remove md5 on ValueError (#51357)" c459f040da.
* Modify the correct variable when determining available hashing algorithms
2019-02-28 07:32:00 -05:00
René Moser ca91ac2ca0
cloudscale: improve error handling (#53054) 2019-02-27 10:22:20 +01:00
Piotr Wojciechowski 72bdcdfff2 docker_swarm update to use shared Swarm library (#52886)
* docker_swarm: Update code to use AnsibleDockerSwarmClient instead of AnsibleDockerClient

* docker_swarm: Update check_if_swarm_node_is_down() with repetitive attempts to check node status to reflect original method implementation

* docker_swarm: Add information that `state: inspect` will be removed in future release

* docker_swarm: Fix sanity error

* docker_swarm: Check_mode conditional for failing during the swarm init

* docker_swarm: Small cleanup of a code

* docker_swarm: Moving the warning message before dispatching

* Commit to solve problems with Shippable
2019-02-26 16:41:16 -05:00
Farhan Nomani 27804b3b8b Ansible module to enable the user to provision CPGs on HPE StoreServ 3PAR device (#39656)
* Added storage modules and unit tests

Removed unnecessary file

Fixing pep8 issues

Adding reusable documentation to the data fragment file

Fixing issues reported by module validation in documentation

Fixed issues: 10549, 10553

Fixed unit tests

Added future imports and removed license from init py file

Resolved import issue reported by ansible sanity test

Fixed unit tests

Adding CPG management module

Fixing sanity test issues

Resolving line ending issues

Resolved import issue reported by ansible sanity test

Correcting the error message when resource is more than 31 char

Update hpe3par_cpg.py

Fix for defect 10556: Unable to modify volume. Persona not set

Fix for defect 10556: Unable to modify volume. Persona not set

Fixing pep8 changes

Fixed pep8 issues

Added more pep8 related fixes

Added more pep8 related fixes

Fixed rebase issue in cps test

Adding GPL3.0+ License (#7)

* Update hpe3par.py

* Update hpe3par_cpg.py

* Update hpe3par_cpg.py

Adding GPLV3+ only license

Fix anity test

Addressing review comments

Fixing undefined variable error

Addressed review comments and added more unit tests (#8)

Added maintainers

Fixed sanity test

Update test_hpe3par_cpg.py

Renamed the module as per the review comments (#9)

* Added maintainers

* Renaming the module to remove the vendor name from the module

* remove pep8 related issues

Modify the requirements to add version of 3par sdk

Review address (#10)

* Unit is no longer a different paramter in the task

* Fixing unit tests

* Taking into account the default values

Fixing issue with default values

fixing unit test

Adding more flexibility and checks to the size and it's units

Fixed pylint extra line issue

Fixing conflicts in BOTMETA.yml

Made changes according to the review comments

Updating ansible version

Refactored the code to move reusable method to module utils

Modified the GPLv3+ license text according to the review comments. Modified the module utils license to BSD

Corrected the BOTMETA entry. Fixed the pep8 issues

Fixing entries in BOTMETA.yml

Removed ansible version, renamed the version to address the name review comments

Reverting name change for module to revert test failures

Set size and raid type and now reuqired together based on the review comment

Fixed unit tests

Removing default value as raid and set size are now required together

Renaming the modules to ss_3par_*

Resolving the pep8 issues

Added storage modules and unit tests

Removed unnecessary file

Fixing pep8 issues

Adding reusable documentation to the data fragment file

Fixing issues reported by module validation in documentation

Fixed issues: 10549, 10553

Fixed unit tests

Added future imports and removed license from init py file

Resolved import issue reported by ansible sanity test

Fixed unit tests

Adding CPG management module

Fixing sanity test issues

Resolving line ending issues

Resolved import issue reported by ansible sanity test

Correcting the error message when resource is more than 31 char

Update hpe3par_cpg.py

Fix for defect 10556: Unable to modify volume. Persona not set

Fix for defect 10556: Unable to modify volume. Persona not set

Fixing pep8 changes

Fixed pep8 issues

Added more pep8 related fixes

Added more pep8 related fixes

Fixed rebase issue in cps test

Adding GPL3.0+ License (#7)

* Update hpe3par.py

* Update hpe3par_cpg.py

* Update hpe3par_cpg.py

Adding GPLV3+ only license

Fix anity test

Addressing review comments

Fixing undefined variable error

Addressed review comments and added more unit tests (#8)

Added maintainers

Fixed sanity test

Update test_hpe3par_cpg.py

Renamed the module as per the review comments (#9)

* Added maintainers

* Renaming the module to remove the vendor name from the module

* remove pep8 related issues

Modify the requirements to add version of 3par sdk

Review address (#10)

* Unit is no longer a different paramter in the task

* Fixing unit tests

* Taking into account the default values

Fixing issue with default values

fixing unit test

Adding more flexibility and checks to the size and it's units

Fixed pylint extra line issue

Fixing conflicts in BOTMETA.yml

Made changes according to the review comments

Updating ansible version

Refactored the code to move reusable method to module utils

Modified the GPLv3+ license text according to the review comments. Modified the module utils license to BSD

Corrected the BOTMETA entry. Fixed the pep8 issues

Removed ansible version, renamed the version to address the name review comments

Reverting name change for module to revert test failures

Set size and raid type and now reuqired together based on the review comment

Fixed unit tests

Removing default value as raid and set size are now required together

Renaming the modules to ss_3par_*

Resolving the pep8 issues

Update lib/ansible/modules/storage/hpe3par/ss_3par_cpg.py

Co-Authored-By: farhan7500 <farhan7500@gmail.com>

Update lib/ansible/modules/storage/hpe3par/ss_3par_cpg.py

Co-Authored-By: farhan7500 <farhan7500@gmail.com>

Fixed rebase issue

Fixed rebase issuein BOTMETA.yml

* Modified the documentation based on the review comments

* Fixed the pep8 sanity issue

* Moved the doc fragment file based on latest changes

* Reverting inadvertent rebase changes

* Fixed inadvertent change during rebase
2019-02-26 14:09:03 +00:00
Chris Van Heuveln 0df5b92af3 nxos_command:run_commands results failure when commands array size >1 (#52670) 2019-02-26 12:01:13 +05:30
Jordan Borean 13f8f1481f
Ansible.Basic - Support a delegate type for option elements key (#52951) 2019-02-26 08:14:10 +10:00
Theron Savery 1f7ffe2619 NSO - added validate_certs parameter to allow for ignoring of SSL certificates (#51981)
* added validate_certs paramter to allow for ignoring of SSL certificates

* formatting

* updated NSO unit tests with validate_certs variable

* fixed NSO tests
2019-02-25 14:17:56 +00:00
James E. King III f2495ef0d3 Add ability to get vmware_guest_facts using vsphere schema output (#47446) 2019-02-25 06:03:40 -05:00
Jake Hill e18d5ea8b3 VMware: Add support in VMWare modules for BIOS and instance UUID's (#44399)
* Add support for changing UUID type referenced
* Update all appropriate VMware modules to include UUID type
* Add integration test for filtering on instance UUID
2019-02-25 14:07:07 +05:30
Diane Wang 4f8cd6bf96 VMware: add new module vmware_export_ovf (#50589) 2019-02-25 09:29:45 +05:30
Dag Wieers 3d1dd0e599 Windows: Add backup parameter to modules (#50033)
* Windows: Add backup parameter to modules

This PR adds a backup infrastructure for modules.

* Fixes based on review feedback

* Various fixes to check-mode and backup

* Add integration tests

* Fix win_xml integration test

* Add backup support to copy action plugin

* Added integration tests

* Improve test efficiencies and other minor impv
2019-02-25 11:37:25 +10:00
René Moser ee416fd01d
cloudscale: fix compatibilty with older py3 versions (#52822)
* cloudscale: fix compatibilty with older py3 versions

* add doc fragment
2019-02-24 20:04:34 +01:00
Felix Fontein 81d58cfef6 docker_swarm: hopefully fix debug CI problems, and fix check mode (#52825)
* Let's see some debug output.

* Also check LocalNodeState.

* Improve tests.

* Actually implement check mode.

* Add changelog.

* Add pretty-printing and more output.
2019-02-23 17:18:17 -05:00
Fabian von Feilitzsch 52ec80fbe9 Add proper k8s *List kind support (#52529)
* Add proper k8s *List kind support

* set defaults more intelligently

* reimplement list support so that it will work in all versions of the client

* clean up debugging code
2019-02-23 12:10:42 +10:00
Sam Doran cc9c72d6f8 Do not add state: absent when a non-existent path is returned (#51350)
Leave it up to the module to return the state in the results.

I went through all the modules in files/ and only found one case where the module needed to return this. No other modules return paths that do not exists.

Signed-off-by: Sam Doran <sdoran@redhat.com>
2019-02-23 01:48:44 +01:00
Sam Doran f52a088862
Add option to ignore, warn, or error when a module parameter is converted to a string (#51404)
* Add new module property to Windows modules
* Add brief pause to file tests to ensure the stat times are not equal, which was happening sometimes.
* Raise TypeError on error rather than fail_json()
* Rework error message to be less verbose
* Add porting guide entry
2019-02-22 16:44:32 -05:00
Juan Antonio Osorio 28d2379e69 identity: Issue warning if GSSAPI parameters can't be used (#52721)
This issues a warning if the relevant parameters to use GSSAPI were
provided, but the needed library is not installed in the system.

This is meant for usability, since it'll tell folks what they're missing
in their systems in order to use GSSAPI for authentication with the
FreeIPA modules.

This also removes the "required" key from the password parameter; now
this is checked in runtime.
2019-02-22 08:39:42 +00:00
Brian Coca 8a0347ac7a
warn when having issues with local facts (#52507)
* warn when having issues with local facts

fixes 41609
2019-02-20 17:25:55 -05:00
Anatoly Pugachev 924f5b5467 Add support of facts gathering WWNs on Solaris 10 and Solaris 11 OS (#52091)
* Add support of facts gathering WWNs on Solaris 10 and Solaris 11 OS

Extends PR #37043 / git commit c65909d "Add network fact to obtain FC
WWN initiator ports" for Solaris OS support.

$ fcinfo hba-port | grep 'Port WWN'
HBA Port WWN: 10000090fa1658de
HBA Port WWN: 10000090fa1658df
HBA Port WWN: 10000090fa165b5c
HBA Port WWN: 10000090fa165b5d

* use module.get_bin_path() instead of hardcoded cmd path
2019-02-20 10:46:54 -05:00
David Soper 63ea76d174 intersight_rest_api module and integration tests. (#52430)
* intersight_rest_api module and integration tests.
Fix intersight module_utils issues when using POST/PATCH/DELETE.

* Update json returns based on code review
2019-02-19 16:40:40 +01:00
Bojan Vitnik 922af44d7d Fix a bug that caused exception on XenServer 7.1 with Cummulative Update (#52303)
- xenserver module_util: fixed a bug in gather_vm_params function where
   an exception was generated if XenServer product_version_text_short
   parameter contained non numeric characters, e.g. "7.1 CU1" on
   XenServer version 7.1 with Cummulative Update 1. Code was changed
   to use product_version parameter instead which is all numeric.
 - xenserver module_util: get_xenserver_version function is changed
   to return a list of integers for major, minor and update version
   instead of list of strings.
 - xenserver module_util: unit tests are updated according to changes.
 - xenserver module_util: removed unused imports.
2019-02-19 12:36:57 +00:00
Dag Wieers e7df487a6c rabbitmq: Clean up parameter types (#52525)
This PR includes:
- Parameter types added
- Copyright format fixes
- Short license statement

This breaks out PR #52182
2019-02-19 12:17:28 +00:00
Ganesh Nalawade 41e2bd1df5
Add support for elements validation in argspec (#50335)
* Add support for elements validation in argspec

Fixes #48473

*  Add support to validate the elements value in argspec
   when type is `list`

* Fix unit test failures

* Add unit test for elements validation

* Fix CI failures

* Fix review comments

* Fix unit test and CI failures after rebase
2019-02-19 17:35:20 +05:30
Sumit Jaiswal 8a2ff1cde6
PR to start support for Skydive integration with Ansible (#50857)
* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive modules

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* modifying file name

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* renamed

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* skydive lookup

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* change in str

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* change in str

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable error

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* renamed file

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable error

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* change in str

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable error

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable error

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix review comments

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix review comments

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* deleting file to add to new PR

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix review comments

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* shippable and doc fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* placing doc at correct path

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* shippable and doc fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* placing doc at correct path

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* updated with review and shippable fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* updated with review and shippable fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* updated with review and shippable fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* updated with review and shippable fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable errors

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable error

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix review comments

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fixing shippable errors

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix review comments

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* review comments

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* shippable fix

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* review comment

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-02-19 16:18:40 +05:30
Abhijeet Kasurde 57d85031d7
Parse multiple values for single key in cmdline facts (#49591)
* Facts parsing for cmdline can now handle multiple values for a single key.
* Unit tests for cmdline fact parsing
* Review comments

Fixes: #22766

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-19 15:47:06 +05:30
Kevin Breit c254b93796 Meraki performance fixes for net and org lookups (#51395)
* Performance fixes for net and org lookups
- Both methods had duplicate lookups
- This should significantly improve performance
- Currently untested

* Add ChangeLog file

* Change from bugfix to bugfixes and change indent
2019-02-18 23:58:27 +01:00
Felix Fontein 8388c89a29 docker modules: add missing option types (#52422)
* Add missing option types for docker modules.

* Reorder argument_spec.

* First part of option reordering/reformatting.

* Second part of option reordering/reformatting.

* Forgot two required: false.

* Normalize booleans.

* Added missing period.
2019-02-18 15:40:52 -05:00
Matt Martz 42cf50fbac Do not send "Connection: close" when requesting a tunnel. Fixes #32750 (#46070) 2019-02-18 14:58:50 -05:00
Matt Martz 77bfcad33a
Support unix socket with urls/uri (#43560)
* First pass at allowing unix socket with urls/uri. See #42341

* Only insert handler as needed

* Fix and add tests

* Add HTTPS functionality for unix sockets

* Additional test fixes

* Create context manager for monkey patching HTTPConnection.connect, de-dupe code, raise better errors

* doc

* Add a few more tests

* Fix __call__

* Remove unused import

* Patch HTTPConnection.connect with the functionality we want, instead of duplicating code and disabling

* Fix var name

* Remove unused var

* Add changelog fragment

* Update uri docs

* Fix rebase indentation issue
2019-02-18 10:21:42 -06:00
Nilashish Chakraborty bc403dbcda
Added new module - frr_facts (#51804)
* Add new module frr_facts

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix return value

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix review comments

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix review comments

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Handle empty row for mpls ldp neighbors

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix review comments

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix CI

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Remove timestamp from cliconf pluging

* Updated examples

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix sanity tests

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-02-18 19:35:40 +05:30
Matt Martz 9f82f3fd14 Alias ansible_model to ansible_product_name for Darwin. Fixes #52233 (#52242) 2019-02-18 10:22:44 +00:00
Hannes Ljungberg 18b968d486 docker_swarm_service: Add healthcheck option (#52419)
* Define yaml versions as strings

* Add healthcheck option

* Add changelog fragment

* Don’t set version_added as strings

* Use single quoted string

* Disable healthcheck tests on python 2.6

* Bring back quoting on already quoted version-added

* Python 2.6 compat

* Move functions to docker-common

* Move parse_healthcheck to docker-common

* Cast exception to str before printing failure

* Extend parse_healthcheck tests
2019-02-18 09:46:14 +00:00
Ondra Machacek 435e0c5dba Update kubevirt_vm with new feautures (#52311) 2019-02-18 15:12:23 +05:30
Yuwei Zhou 664e6fb9c8 modified storageaccount fact return curated result with connection string (#49702) 2019-02-18 16:48:56 +08:00
Garfield Lee Freeman 6b8f679ad1 Bug fixes and enhancements for panos connection (#52306) 2019-02-18 09:19:26 +05:30
Abhijeet Kasurde fad6443e58
Distribution: Add support for Linux Mint 18.3 (#52224)
* Distribution: Add support for Linux Mint 18.3
* Review comments

Fixes: #52210

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-18 08:28:04 +05:30
Zim Kalinowski b7482e6a6d fix version import in common (#52005) 2019-02-18 09:54:59 +08:00
Sayed Anisul Hoque 7d6a94e7dc Fixed typos (#52426) 2019-02-17 22:49:40 +01:00
Felix Fontein be3a47e2fe docker_common: improve image finding methods (#44692)
* Work around problem with Docker daemon that sometimes won't find image if prefixed with docker.io repo name.

* When tring library/xxx, docker-py also doesn't sometimes find the image.

* Add changelog.
2019-02-17 14:28:40 -05:00
Felix Fontein ef3d86255d docker_* modules: remove from validate-modules ignore list (#52402)
* Remove docker_* modules from validate-modules ignore list.

* Adjust types of cacert_path, cert_path and key_path.

* Fix type of update_failure_action in docker_swarm_service.
2019-02-16 07:14:29 -08:00
Abhijeet Kasurde db03f88b63
distribution: Add support for Cumulus Linux (#52309)
* Refactored code
* Added support for Cumulus Linux 2.5.4
* Added support for Cumulus Linux 3.7.3
* Test added

Fixes: #29969

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-15 22:30:51 +05:30
Dag Wieers 677c04c01d
Sanity fixes to parameter types (#52325) 2019-02-15 16:58:58 +01:00
Timo Runge 47190088b4 module_utils/mysql: Fixing unexpected keyword argument 'cursorclass' error after migratio… (#47809)
* Fixing unexpected keyword argument 'cursorclass' error after migration from MySQLdb to PyMySQL

* Adoptions for mysql.py as suggested by felixfontein.

* Adding changelog fragment.
2019-02-15 15:38:01 +00:00
David Soper 958653e282 Cisco Intersight module_utils and intersight_facts module (#51309)
* Cisco Intersight module_utils and intersight_facts module

* Add RETURN information and fix pylint, import, and pep8 issues.

* Review updates for specifying type of params/returns and not polluting ansible_facts.

* BSD one line license, validate_certs used, urls.fetch_urls replaces requests
2019-02-15 16:32:29 +01:00
Dag Wieers c2fb581414 Fix various sonarcloud issues
This fixes various reported bugs through sonarcloud at:
https://sonarcloud.io/project/issues?id=Rodney-Reis_ansible&resolved=false&types=BUG
2019-02-15 07:19:04 -08:00
Dag Wieers f9ab9b4d68 Assorted pylint fixes 2019-02-15 06:54:47 -08:00
Jordan Borean de118734e9
Ansible.Basic - add required_by to module spec (#51407)
* Ansible.Basic - add required_by to module spec

* fix typo in docs
2019-02-15 13:00:25 +10:00
Dag Wieers cd9471ef17 Introduce new 'required_by' argument_spec option (#28662)
* Introduce new "required_by' argument_spec option

This PR introduces a new **required_by** argument_spec option which allows you to say *"if parameter A is set, parameter B and C are required as well"*.

- The difference with **required_if** is that it can only add dependencies if a parameter is set to a specific value, not when it is just defined.
- The difference with **required_together** is that it has a commutative property, so: *"Parameter A and B are required together, if one of them has been defined"*.

As an example, we need this for the complex options that the xml module provides. One of the issues we often see is that users are not using the correct combination of options, and then are surprised that the module does not perform the requested action(s).

This would be solved by adding the correct dependencies, and mutual exclusives. For us this is important to get this shipped together with the new xml module in Ansible v2.4. (This is related to bugfix https://github.com/ansible/ansible/pull/28657)

```python
    module = AnsibleModule(
        argument_spec=dict(
            path=dict(type='path', aliases=['dest', 'file']),
            xmlstring=dict(type='str'),
            xpath=dict(type='str'),
            namespaces=dict(type='dict', default={}),
            state=dict(type='str', default='present', choices=['absent',
'present'], aliases=['ensure']),
            value=dict(type='raw'),
            attribute=dict(type='raw'),
            add_children=dict(type='list'),
            set_children=dict(type='list'),
            count=dict(type='bool', default=False),
            print_match=dict(type='bool', default=False),
            pretty_print=dict(type='bool', default=False),
            content=dict(type='str', choices=['attribute', 'text']),
            input_type=dict(type='str', default='yaml', choices=['xml',
'yaml']),
            backup=dict(type='bool', default=False),
        ),
        supports_check_mode=True,
        required_by=dict(
            add_children=['xpath'],
            attribute=['value', 'xpath'],
            content=['xpath'],
            set_children=['xpath'],
            value=['xpath'],
        ),
        required_if=[
            ['count', True, ['xpath']],
            ['print_match', True, ['xpath']],
        ],
        required_one_of=[
            ['path', 'xmlstring'],
            ['add_children', 'content', 'count', 'pretty_print', 'print_match', 'set_children', 'value'],
        ],
        mutually_exclusive=[
            ['add_children', 'content', 'count', 'print_match','set_children', 'value'],
            ['path', 'xmlstring'],
        ],
    )
```

* Rebase and fix conflict

* Add modules that use required_by functionality

* Update required_by schema

* Fix rebase issue
2019-02-15 10:57:45 +10:00
Matt Clay 3e778d3f8f Fix pycodestyle E117 issues. 2019-02-13 23:35:39 -08:00
Jordan Borean 7b8e814a10 Ansible.Basic: make module options case insensitive with dep warning (#51583)
* Ansible.Basic: make module options case insensitive with dep warning

* Add porting guide info
2019-02-13 21:55:43 -05:00
René Moser 9e71ec71a3
cloudstack: ensure return api_timeout is int (#52191) 2019-02-13 23:11:22 +01:00
Felix Fontein d7fd4d0550 docker_*: always use client.fail() over module.fail_json(), allow to always return data on failure (#51999)
* Always use client.fail() instead of module.fail_json().

* Allow to pass on results on module failure.

* Linting.
2019-02-13 14:10:23 -05:00
Juan Antonio Osorio 9f081ca04f identity: Add GSSAPI suport for FreeIPA authentication (#52031)
* identity: Add GSSAPI suport for FreeIPA authentication

This enables the usage of GSSAPI for authentication, instead of having
to pass the username and password as part of the playbook run.

If there is GSSAPI support, this makes the password optional, and will
be able to use the KRB5_CLIENT_KTNAME or the KRB5CCNAME environment
variables; which are standard when using kerberos authentication.

Note that this depends on the urllib_gssapi library, and will only
enable this if that library is available.

* identity: Add documentation for GSSAPI authentication for FreeIPA

This documentation describes how to use GSSAPI authentication with the
IPA identity modules.

* identity: Add changelog for GSSAPI support for IPA

This adds the changelog entry for the GSSAPI authentication feature for
the IPA identity module.
2019-02-13 15:38:13 +00:00
Pilou 51270be883 tower modules: check that 'verify_ssl' defined in ~/.tower_cli.cfg isn't ignored (#50687)
* Check that verify_ssl defined in tower_cli.cfg isn't ignored

* Avoid to override verify_ssl value defined in tower_cli.cfg

By default, tower-cli library enables SSL certificates check. But
verify_ssl false value defined in config files read by default by
tower-cli library (for example /etc/tower/tower_cli.cfg) was ignored
because overriden by the tower_verify_ssl parameter default value.

* fix a typo in comment
2019-02-13 10:26:43 +00:00
Ondra Machacek 797a5218fb kubevirt: Add new kubevirt_vm module (#50768)
This module is managing virtual machines using KubeVirt.

Signed-off-by: Ondra Machacek <omachace@redhat.com>
2019-02-13 10:17:01 +00:00
Amol Kahat 563725ba98 Fixed typo from adress to address (#52143)
Signed-off-by: Amol Kahat <akahat@redhat.com>
2019-02-13 13:57:13 +05:30
Matt Clay 0a461380a3 Fix incorrect use of `is` for comparisons.
See https://bugs.python.org/issue34850 for details.
2019-02-12 16:33:13 -08:00
Abhijeet Kasurde 47e1bf1862
VMware: Tag management to VMware object (#46945)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-12 16:53:33 +05:30
Piotr Wojciechowski 42f20091dd docker_swarm_facts: New module to retrieve Docker Swarm information (#50622)
* docker_swarm_facts: PR cleanup after rebasing

* docker_swarm_facts: Adding the features similar to docker_host_facts

* docker_swarm_facts: Minor documentation and documentation updates

* docker_swarm_facts: Minor documentation and documentation adjustments to changes in #51700

* docker_swarm_facts: Using AnsibleDockerSwarmClient class method to fail module if not run on swarm manager
module_utils\docker\swarm.py: Adjustment of error message to me bore descriptive if module fails because it is not run on swarm manager node
2019-02-12 00:59:31 -05:00
Will Thames 9babd16942 k8s handle absent resources when waiting (#51682)
* k8s wait - don't try to call to_dict on None

Need to ensure that the resource dict is correctly returned for absent
resources

* Cope with resources without a namespace

Some resources (e.g. ClusterRoleBinding) do not have a Namespace.
Handle the lack of a namespace key.
2019-02-11 21:43:42 +01:00
Rémy Léone accbcdeccb Add a Scaleway load-balancer module (#51741) 2019-02-11 15:28:55 +00:00
Bill Dodd e0538610bf Update GetBiosBootOrder to use standard spec resources (#51764)
* update GetBiosBootOrder to use standard spec resources

* handle case where BootOrder is present but BootOptions is missing
2019-02-11 14:50:10 +00:00
Fabian von Feilitzsch e81b74d6c8 Properly parse boolean env values as boolean (#51836) 2019-02-11 14:49:00 +00:00
Bill Dodd 3b20b186d7 remove non-standard GetManagerAttributes, SetManagerAttributes (#51898) 2019-02-11 14:33:15 +00:00
Felix Fontein 0c2bb3da04 docker modules: various adjustments (#51700)
* Move docker_ module_utils into subpackage.

* Remove docker_ prefix from module_utils.docker modules.

* Adding jurisdiction for module_utils/docker to $team_docker.

* Making docker* unit tests community supported.

* Linting.

* Python < 2.6 is not supported.

* Refactoring docker-py version comments. Moving them to doc fragments. Cleaning up some indentations.
2019-02-08 08:16:11 +00:00
Guillaume Martinez 8fd3591275 copyright: edit deprecated email (#51912) 2019-02-08 01:48:25 +01:00
Jordan Borean a39c4ad464
Final round of moving modules to new import error msg (#51852)
* Final round of moving modules to new import error msg

* readd URL to jenkins install guide

* fix unit tests
2019-02-08 10:07:01 +10:00
Jeremiah Mahler ffbc9d99de fix Amazon system-release version parsing (#51521)
Previously it was assumed that the Amazon system-release
number was the final value of the string.  This isn't always
the case.  Some releases have the name at the end.

  Amazon Linux release 2
  Amazon Linux release 2 (Karoo)

Fix by instead looking for a number in the string.

Fixes #48823
2019-02-07 17:58:34 -05:00
Jordan Borean c1e51ef486 Use common functions for handling import errors (#51851)
* Use common functions for handling import errors

* use refactored version of gitlab modules
2019-02-07 16:51:16 -05:00
Adam Miller 9bb05b72b2 correctly detect pkg_mgr on fedora/rhel/centos rpm-ostree installed (#49256)
Check the path /run/ostree-booted which I'm told by upstream that it
will always be present when a host system is Fedora/RHEL/CentOS
Atomic/CoreOS vs "traditional" distro instance to detect the
non-traditional instance and ensure pkg_mgr selection is correct

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-02-07 15:16:38 -05:00
Guillaume Martinez 959939b866 Refactor gitlab modules (#51141)
* gitlab_group: refactor module

* gitlab_user: refactor module

* gitlab_group, gitlab_user; pylint

* gitlab_project: refactor module

* gitlab_group, gitlab_project, gitlab_user: Enchance modules

- Add generic loop to update object
- Enchance return messages
- PyLint

* gitlab_runner: refactor module

* gitlab_hooks: refactor module

* gitlab_deploy_key: refactor module

* gitlab_group: enchance module and documentation

- Enchange function arguments
- Add check_mode break
- Rewrite module documentation

* gitlab_hook: enchance module and documentation

- Rewrite documentation
- Enchance function parameters
- Rename functions

* gitlab_project: enchance module and documentation

- Rewrite documentation
- Enchance function parameters
- Add try/except on project creation

* gitlab_runner: enchance module and documentation

- Rewrite documentation
- Fix Copyright
- Enchance function arguments
- Add check_mode break
- Add missing function: deletion

* gitlab_user: enchance module and documentation

- Rewrite documentation
- Enchance function parameters
- Add check_mode break
- Add try/except on user creation

* gitlab_deploy_key, gitlab_group, gitlab_hooks, gitlab_project,
gitlab_runner, gitlab_user: Fix residual bugs

- Fix Copyright
- Fix result messages
- Add missing check_mode break

* gitlab_deploy_key, gitlab_group, gitlab_hooks, gitlab_project, gitlab_runner, gitlab_user: pylint

* gitlab_runner: Add substitution function for 'cmp' in python3

* unit-test: remove deprecated gitlab module tests

- gitlab_deploy_key
- gitlab_hooks
- gitlab_project

Actually, they can't be reused because of the modification of the way that the module communicate with the Gitlab instance. It doesn't make direct call to the API, now it use a python library that do the job. So using a pytest mocker to test the module won't work.

* gitlab_deploy_key, gitlab_group, gitlab_hooks, gitlab_project, gitlab_runner, gitlab_user: add copyright

* gitlab_deploy_key, gitlab_group, gitlab_hooks, gitlab_project, gitlab_runner, gitlab_user: Support old parameters format

* module_utils Gitlab: Edit copyright

* gitlab_deploy_key, gitlab_group, gitlab_hooks, gitlab_project,
gitlab_runner, gitlab_user: Unifying module inputs

- Rename verify_ssl into validate_certs to match standards
- Remove unused alias parameters
- Unify parameters type and requirement
- Reorder list order

* gitlab_deploy_key, gitlab_group, gitlab_hooks, gitlab_project, gitlab_runner, gitlab_user: Unifying module outputs

- Use standard output parameter "msg" instead of "return"
- Use snail_case for return values instead of camelCase

* validate-module: remove sanity ignore

* BOTMETA: remove gitlab_* test

- This tests need to be completely rewriten because of the refactoring
of these modules
- TodoList Community Wiki was updated

* gitlab_user: Fix group identifier

* gitlab_project: Fix when group was empty

* gitlab_deploy_key: edit return msg

* module_utils gitlab: fall back to user namespace is project not found

* gitlab modules: Add units tests

* unit test: gitlab module fake current user

* gitlab_user: fix access_level verification

* gitlab unit tests: use decoration instead of with statement

* unit tests: gitlab module skip python 2.6

* unit tests: gitlab module skip library import if python 2.6

* gitlab unit tests: use builtin unittest class

* gitlab unit tests: use custom test class

* unit test: gitlab module lint

* unit tests: move gitlab utils

* unit test: gitlab fix imports

* gitlab_module: edit requirement

python-gitlab library require python >= 2.7

* gitlab_module: add myself as author

* gitlab_modules: add python encoding tag

* gitlab_modules: keep consistency between variable name "validate_certs"

* gitlab_modules: enchance documentation

* gitlab_runner: fix syntax error in documentation

* gitlab_module: use basic_auth module_utils and add deprecation warning

* gitlab_module: documentation corrections

* gitlab_module: python lint

* gitlab_module: deprecate options and aliases for ansible 2.10

* gitlab_group: don't use 'local_action' is documentation example

* gitlab_module: correct return messages

* gitlab_module: use module_util 'missing_required_lib' when python library is missing

* gitlab_module: fix typo in function name.

* gitlab_modules: unify return msg on check_mode

* gitlab_modules: don't use deprecated options in examples
2019-02-07 20:40:14 +01:00