Commit graph

8663 commits

Author SHA1 Message Date
Matt Clay
9da5908afb Fix ansible-test layout path generation. 2019-08-06 16:07:53 -07:00
Matt Clay
233efe0886 Add missing boilerplate. 2019-08-06 15:45:22 -07:00
Matt Clay
d651bda123
Relocate ansible-test code. (#60147)
* Initial move of `test/runner/` content.

`test/runner/lib/` -> `test/lib/ansible_test/_internal/`
`test/runner/`     -> `test/lib/ansible_test/_internal/data/`

* Initial move of `test/sanity/` content.

`test/sanity/` -> `test/lib/ansible_test/_internal/data/sanity/` (except `test/sanity/ignore.txt`)

* Initial move of `test/units/pytest/` content.

`test/units/pytest/` -> `test/lib/ansible_test/_internal/data/pytest/`

* Follow-up move of `test/runner/unit/` content.

`test/lib/ansible_test/_internal/data/unit/` -> `test/lib/ansible_test/tests/unit/`

* Initial move of `ansible.cfg` content.

`test/units/ansible.cfg` -> `test/lib/ansible_test/_internal/data/units/ansible.cfg`
`test/env/ansible.cfg` -> `test/lib/ansible_test/_internal/data/env/ansible.cfg`

* Follow-up move of `data` directory.

`test/lib/ansible_test/_internal/data/` -> `test/lib/ansible_test/_data/`

* Update import statements.

* Add missing __init__.py for unit tests.

* Fix path references and miscellaneous issues.
2019-08-06 14:43:29 -07:00
Matt Martz
923e21836b
Move plugin loader playbook dir additions back to Playbook instead of PlaybookCLI (#59557)
* Move plugin loader playbook dir additions back to Playbook instead of PlaybookCLI. Fixes #59548

* Restore cli additions
2019-08-06 15:58:15 -05:00
Nathan Swartz
acbffce079 Host dev upstream (#57086)
* Improve netapp_e_host module

Add host type strings for windows, windows cluster, linux and vmware to netapp_e_host module
Make host port information case-insensitive in netapp_e_host module
Fix port removal and default group.
Fix port reassignment in netapp_e_host module.
Fix port label or address change within existing host object in module netapp_e_host
Add unit and integration tests

* Created new unit test for netapp_e_host module
2019-08-06 15:01:22 -04:00
Wojciech Wypior
2af67f0dce fixes issue with RD encoding in names (#59990)
fixes issue with file download function on ASM file transfer endpoints
corrects doc fragments
removes not used parameters
corrects various sanity failures previously ignored across multiple modules
2019-08-06 10:11:02 -07:00
Nathan Swartz
a9aeabb456 Improve netapp_e_storagepool and add units. (#57095)
Refactored module to use eseries base class
Removed E322 and E326 for netapp_e_storage module from the ignore.txt file
Updated version_added quotes in netapp_e_storagepool
2019-08-06 10:02:14 -04:00
Nilashish Chakraborty
2c432f8bc7
Add vyos_l3_interfaces resource module (#59929)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-08-06 19:30:58 +05:30
Daniel Mellado Area
e3681c049c
Add junos vlans resource module (#59041) 2019-08-06 16:00:01 +02:00
Matt Clay
b101fda4c6 Use constants to construct ansible-test paths. 2019-08-05 20:39:05 -07:00
Matt Clay
fa2adf3b7b
More prep for ansible-test relocation. (#60114)
* Update pytest plugins.
* Fix update-bundled sanity test.
* Remove old validate-modules comment.
* Fix ansible-test plugin loading
* Update code coverage comments.
* Fix Makefile ansible-test reference.
* Remove incorrect path from lint output.
* Update ansible-test unit tests.
* Make ansible-test's own unit tests singular.
2019-08-05 16:38:21 -07:00
Alex Stephen
ac5228390c Removing validate-module exceptions on GCP modules (#60113)
* facts modules with new types
* remove ignores on sanity tests
* removing new modules
2019-08-05 16:17:06 -07:00
The Magician
4317a97c42 New Module: gcp_compute_autoscaler (#60096) 2019-08-05 18:38:00 -04:00
The Magician
26a2d84dba New Module: gcp_compute_snapshot (#60098) 2019-08-05 18:37:51 -04:00
The Magician
820cfbbb77 Bug fixes for GCP modules (#60089) 2019-08-05 18:26:14 -04:00
The Magician
8241fd88de Bug fixes for GCP modules (#60090) 2019-08-05 18:26:06 -04:00
The Magician
fcc869ab7a Bug fixes for GCP modules (#60091) 2019-08-05 18:25:57 -04:00
The Magician
0234937ca3 Bug fixes for GCP modules (#60092) 2019-08-05 18:25:49 -04:00
The Magician
c1a99c390c Bug fixes for GCP modules (#60088) 2019-08-05 18:16:26 -04:00
Matt Clay
b446ca100f
Prepare ansible-test code for relocation. (#60110)
* Fix imports in cli.py.

* Fix imports in executor.py.

* Remove old test/runner/ansible-test entry point.

Use the official bin/ansible-test entry point instead, which has been around since Ansible 2.5.

* Use bin/ansible-test on Shippable.
2019-08-05 14:56:38 -07:00
Matt Clay
9fd244319e
Clean up ansible-test references in tests. (#60108)
* Clean up comments in integration tests.

Tests reference soon to be outdated paths and implementation details.

* Remove unused test/runner/ reference in test.
2019-08-05 14:55:30 -07:00
The Magician
5e0bcc60b5 New Module: gcp_cloudtasks_queue (#60094) 2019-08-05 16:47:52 -04:00
Matt Clay
31c7a61f9d
Clean up old ansible-test references and code. (#60103)
* Remove obsolete ansible-test retry.py.
* Use ansible-test from bin/ intead of test/runner/.
2019-08-05 13:29:50 -07:00
Felix Fontein
aecdfd397e ecs_taskdefinition_facts: rename to ecs_taskdefinition_info (#60023)
* Rename ecs_taskdefinition_facts to ecs_taskdefinition_info.
2019-08-05 12:47:35 -07:00
Sam Doran
0892d48ebc
Do not install requests[security] for MongoDB tests (#60083)
Cleanup packages installed via pip for MongoDB tests

ci_complete
2019-08-05 15:01:58 -04:00
Matt Clay
d3da8e4a5b
Replace old shippable.py with new check_matrix.py. (#60022)
This new script does not depend on ansible-test and provides much more robust job matrix testing.

It is also run on every job in the matrix now, to detect issues with jobs being re-run after matrix changes are made.
2019-08-05 11:27:37 -07:00
Nathan Swartz
41235ac05a Improve netapp_e_hostgroup and add unit tests. (#57094)
* Improve netapp_e_hostgroup and add unit and integration tests.

netapp_e_hostgroup was refactored for maintainability and improved
documentation clarity.

* Remove ignore sanity check E338 for netapp_e_hostgroup module

* Add __future__ import (absolute_import, division, print_function) to test_netapp_e_hostgroup unit test.
2019-08-05 13:19:23 -04:00
Matt Clay
4df97c20b6 Handle quoted paths in ansible-test diff parsing. 2019-08-05 09:31:43 -07:00
Chris Archibald
be24db8886 New module na_ontap_object_store (#59048)
* New module object store

* fixes

* fix tests
2019-08-05 09:27:38 -04:00
Lukas Kämmerling
38848a4b0c hcloud: Add basic hcloud_route module (#59908) 2019-08-05 14:35:05 +02:00
Trishna Guha
e46237d705
Fix nxos_facts httpapi (#60055)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2019-08-05 18:01:29 +05:30
Lukas Kämmerling
8a5bde798a hcloud: Add hcloud_server_network module (#60061) 2019-08-05 14:06:22 +02:00
Lukas Kämmerling
0377c51c3a hcloud: Add hcloud_subnetwork module (#59781) 2019-08-05 11:13:28 +02:00
Trishna Guha
021b1810c9
Add nxos_vlans resource module (#59294)
* Add nxos_vlans resource module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* address review comments

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix CI failure and udpate tests

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add commands in module doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2019-08-05 12:50:16 +05:30
Mike Wiebe
9610f2b8ac NX-OS Telemetry Resource Module (#59126)
* Combined telemetry module commit

* Minor fixes

* Add back whitespace

* Add telemetry subscription support and simplify

* Remove comment line

* Make ansibot happy

* Create common build_args method

* More ansibot fixes

* Refactored integration tests, remove old files

* Add subscription tests

* Add integration tests

* Update module docs

* Test updates

* Address review comments

* Comment should be one line, not two

* Address Trishna comments

* State deleted should purge all config

* Remove misleading comment

* Doc fixes

* Fix source int bug and remove local debug msg

* Add additional integration test checks
2019-08-05 11:35:46 +05:30
Wojciech Wypior
c9a9621a02 fixes issue with recieve parameter idempotency (#59999)
fixes assert statements in unit tests
2019-08-02 13:29:40 -07:00
Matt Davis
8d1f658ce4
move CLI entrypoints under ansible package (#60004)
* needed so ansible-test can always find the right ones to copy to a target
* renamed the underlying scripts to be properly accessible as Python modules
2019-08-02 11:27:02 -07:00
Felix Fontein
f3e20346cb
Google: gcpubsub_facts -> gcpubsub_info (#57668)
* Rename gcpubsub_facts -> gcpubsub_info.

* Update porting guide and add changelog fragment.
2019-08-02 17:27:28 +02:00
Andrey Klychkov
64e3cb0fa8 Unit tests: remove unused imports (#59812)
* Unit tests: remove unused imports

* Unit tests: remove unused imports, fix
2019-08-02 17:18:14 +02:00
Dave Bendit
fc558fb85f [docker_container] Adding support for mounts option (#49808)
* [WIP][docker_container] Adding support for `mounts` option

Fixes #42054

* Adjusting to current standards.

* Add changelog.

* Adjust types.

* Cleanup.

* Add idempotency checks for mounts.

* Improve diff for mounts.

* Linting.

* Python 2.6 compatibility.

* Fix error message formatting.

* Move mounts and volumes tests into own file.

* Add set of mount tests.

* Golang's omitempty for bool omits false values.

* Simplify sanity checks. Correct order of volume_options sanitization and usage.

* Fix key.

* Fix check.

* Add tests where both volumes and mounts show up.

* Add collision test.
2019-08-02 17:11:14 +02:00
Felix Fontein
a7573102bc
docker_container: fix port bindings with IPv6 addresses (#59715)
* Pass IPv6 addresses for port bindings without square brackets.

* Add changelog.

* Add test.
2019-08-02 17:10:39 +02:00
Ruediger Pluem
f94772f807 Only error out if the gid exists with a different group name (#59769)
Only error out if the gid exists with a different group name as
otherwise it will error out if the group with this gid already
exists, like on a rerun of the playbook. This fixes a regression
introduced by 4898b0a4a2.
2019-08-02 15:51:10 +02:00
Sumit Jaiswal
b847327645
Resource module for ios_interfaces and Facts Update (#59716)
* ios interfaces resource
2019-08-02 14:34:05 +05:30
Markus Bergholz
18aae0a02b add new module with integration tests to manage gitlab project variables (#56574)
* add new module with integration tests to manage gitlab project variables

* fix invalid yaml in DOCUMENTATION variable and don't import * from ansible module

* remove extends_documentation_fragment and put imports after DOCUMENTATION/EXAMPLES/RETURN/ANSIBLE_METADATA

* fix author in documentation and remove import from display

* add alias file for integration test

* split long lines and try to fix the author key

remove tailing whitespace

* replace email address with github username

* adding the at style to username

* add metaclass and future import

* add state variable to be able to delete selected variables

* add test with state = absent

* update documentation. scheme is necessary

* use singular in exmaple section

* use key purge instead of purge_vars

use purge instead of purge_vars also in the integration test

* create gitlab object in the ansible main function

* remove usedless .format

* follow best practice fail message

* add return documentation, return information about which variables were added, updated or removed and catch gitlab api auth error

* use module_utils.api with api_url and api_token

* use dict instead of list for vars

* use project name instead of name as playbook key

* add ansible checkmode_support, reduce variables in gitlab_project_variables class, remove wrong/duplicated HAS_GITLAB_PACKAGE check

* use extends_documentation_fragment and don't pop elements from basic_auth_argument_spec

* use just project_variable as output variable

* update mutually_exclusive as suggested

* re-add api_token documentation, because it is not included in api basic auth

* remove useless statement

remove unnecessary if

* add one test with a changing value

* put type at first position

* keep item to reduce api calls, build array and keep indexes by replacing with None instead of poping

* more asserts

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* remove unused return key from documentation

msg is only returned when failed

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* remove error key, because it is not returned

* change also documentation from purged_vars to purge

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update test/integration/targets/gitlab_project_variable/tasks/main.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>

Update test/integration/targets/gitlab_project_variable/tasks/main.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>

* remove extra spaces

fix wrong spelling

* expand return value documentation with examples

* add check_mode test

reorder tests. first the check_mode test, later all other tests

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* fix existing keys in 'present' array

rework key handling (reduce code)

fix integration tests

use untouched instead of present to identify unchanged variable keys

fix wrong replacement

minor fixes on request

set aliases to unsupported, because the test succeed

remove posix group1 because it conflicts with unsupported

remove useless item from aliases

* rework gitlab connection
2019-08-02 09:08:37 +02:00
Felix Fontein
6d074d8a94
Move ome_* and idrac_* modules one level up (#59698)
* Move ome_* and idrac_* modules one level up.

* Fix paths.

* Fix package name.

* Oranize in different directories.

* Update BOTMETA.

* Update new ignore entries.

* Revert "Update BOTMETA."
Revert "Oranize in different directories."
Adjust ignores.txt.
2019-08-02 09:06:18 +02:00
Jesse Evers
e410dcbfed Add logic to handle multiple actions in an ALB listener rule, Fixes #41861 (#41975)
* added logic to handle multiple actions in an ALB listener rule (#41861)

* fix linting and pep8 issues

* added test for multiple actions using OIDC authentication

* added error messages related to old versions of botocore and multiple actions

* fix action validation error checks (need to check the exception string)

* added logic to make oidc configs idempotent (remove clientsecret for check)

* modified TargetGroupName to TargetGroupArn substitution to account for multiple rule actions

* refactored tests so that it can be run against different versions of botocore

* fix runme.sh to refelct changes to cloud testsuite

* add UseExistingClientSecret to oidc config (AWS api change)

* remove tests for OIDC auth action; add tests for redirect and fixed-response

* add in fixes from markuman and mjmayer

* remove documentation for cognito integration (not sure how to test); added example config for fixed-response and redirect actions

* renamed oidc/multiple action tests; leaving commented due to some AWS API changes

* pep8 fix

* more pep8 fixes

* Restructure elb_application_lb test suite

Move from runme.sh to virtualenv based roles

Update policies to fix tests

Don't log temp dir deletion, so many files in the diff!
2019-08-02 10:40:53 +10:00
Abhijeet Kasurde
056aac1e30 Minor fixes in galaxy command for collection (#59846)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-08-02 07:48:34 +10:00
Sam Doran
bb1256ca9a Disable mongodb_shard and mongodb_replicaset tests
They are causing failures when run as part of the  entire group shippable/posix/group1/
2019-08-01 14:40:31 -07:00
Sam Doran
ea209e1c2f Wait for Ansible Tower instance to be ready 2019-08-01 11:32:45 -07:00
Nathan Swartz
26fff6f5c3 Improved netapp module utility for E-Series. (#59527)
Add header option to request method in NetAppESeriesModule
Add multipart formdata builder function
Fix issue with url port change
2019-08-01 13:24:38 -04:00
Abhijeet Kasurde
025e30ea0c VMware: add support for http_proxy in connection API
This commit allows users to access a vCenter or a ESXi through a
HTTP CONNECT based proxy.

To do so, the users have to set the `proxy_host` and `proxy_port`
variables.

The can also use the `VMWARE_PROXY_HOST` and `VMWARE_PROXY_PORT`
environment variables.

This feature depends on pyvmomi > v6.7.1.2018.12.

Fixes: #42221

Co-Author: Abhijeet Kasurde <akasurde@redhat.com>
Co-Author: Gonéri Le Bouder <goneri@redhat.com>
2019-08-01 15:57:26 +02:00
itercheng
eea46a0d1b Support Ericsson device management (#59277)
* Support Ericsson device management

* modify code

* modify error

* delete redundant file

* delete file

* modified error

* modify additional file name

* delete code

* add blank line

* delete redundant code

* add platform_eric_eccli.rst

* modify syntaxError

* modify document

* modify error

* modify maintaners

* modify document

* add end_string
2019-08-01 16:55:10 +05:30
dx0xm
c35b512413 vmware: new module vmware_dvs_portgroup_find (#59567)
* vmware: new module to find portgroup(s) based on different criteria
2019-08-01 14:52:51 +05:30
Mario Lenz
3aa73cb6b8 VMware: Refactor vmware_cluster into several modules (#58468)
Refactor vmware_cluster into several modules (vmware_cluster, vmware_cluster_drs, vmware_cluster_ha and vmware_cluster_vsan) as discussed in #58023.

vmware_cluster lacks a lot of configuration options for DRS, HA and vSAN. Implementing them
all in vmware_cluster would make the module hard to maintain. Therefore, splitting it into several
modules and implementing the missing configuration options in them seems a good idea to me.

This is step one, refactoring vmware_cluster into several modules. Step two, implementing more
configuration options for DRS, HA and vSAN, will follow.
2019-08-01 10:35:29 +02:00
Jordan Borean
349b2bdf43
Rebalance Windows CI groups based on recent delays to 2016 (#59838)
* Change to test out server 2016 CI issues

* ci_complete
2019-08-01 07:44:49 +10:00
Jordan Borean
093e2460b2
Windows testing - share code for creating a network device (#59847) 2019-08-01 07:43:31 +10:00
Rhys Campbell
dacfd72bd6 Integeration tests for mongodb_shard and mongodb_replicaset modules (#53900) 2019-07-31 12:45:21 -07:00
Nilashish Chakraborty
730fa78ca4
Add vyos_interfaces resource module (#58589)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-31 23:06:53 +05:30
Gonéri Le Bouder
c4bb38d2b1 vcenter: disable ConfigParser interpolation (#59851)
Password can come with the '%' character. If we keep ConfigParser
interpolation enabled, it will try to modify the value.
Typical error looks like this one:

```
configparser.InterpolationSyntaxError: '%' must be followed by '%' or '(', found: '%Z,sq'
```
See: https://docs.python.org/3/library/configparser.html#interpolation-of-values
2019-07-31 09:53:11 -07:00
Maciej Delmanowski
75be309242 Don't warn if local user is found in user database (#56838)
If the 'local' parameter of the 'user' Ansible module is enabled, and
the user has been found in the local user database, don't emit
a warning, because this is an expected outcome.

Add changelog and integration tests

Co-authored-by: drybed <drybjed@gmail.com>
2019-07-31 12:14:22 -04:00
Kevin Breit
b09fbc3bf3 New module - meraki_webhook (#57855)
* Initial commit for meraki_webhook

* Split integration tests into two files to avoid delegate_to
2019-07-31 11:31:16 -04:00
Kevin Breit
d105c205ef meraki_snmp - Add support for network SNMP settings (#57708)
* meraki_snmp module supports network SNMP settings
- Network SNMP settings were added to the API
- Parameters are different so it's a new data structure
- Full suite of integration tests
- Commit includes some cleanup as well

* Add reset task for SNMPv3
2019-07-31 11:29:57 -04:00
Kevin Breit
516b39b79a meraki_organization - Add deletion support (#59415)
* Add support for deleting organizations
- Still working on integration tests

* Update documentation and verify check mode works
2019-07-31 11:29:42 -04:00
sushma-alethea
f2cb44633a Modules to manage ICX devices (#58969)
* new module

* new terminal

* new terminal

* new cliconf

* cliconf

* icx cliconf

* icx_cliconf

* icx test units module

* icx units module

* icx banner unit test

* PR changes resolved

* changes resolved

* Changes Resolved

* check_running_config changes resolved

* added notes

* removed icx rst

* new commit

* new changes

* deleted icx rst

* icx .rst

* modified platform_index.rst

* modified platform_index.rst

* changes resolved

* PR comments resolved

* Update platform_index.rst

PR comment resolved
2019-07-31 20:01:41 +05:30
Daniel Mellado Area
58a53fe0eb
Add junos_l3_interfaces (#59026) 2019-07-31 16:29:32 +02:00
Matt Clay
93931810c8
Run pytest with dedicated pytest.ini. (#59842)
Also disable the pytest cache plugin.
2019-07-31 00:28:39 -07:00
Matt Clay
f944bd2358 Update ansible-test to properly skip unit tests.
Unit tests will no longer run on "remote only" Python versions (2.6) for tests which are not "remote" (modules and module_utils).
2019-07-31 00:27:07 -07:00
Matt Clay
32fa4b15d1
More sanity test updates for collections. (#59841)
* Move action-plugin-docs ignores into ignore file.

* Update package-data sanity test.

The test now uses the file list provided by ansible-test.
2019-07-30 22:36:03 -07:00
Matt Clay
ef6be41bf1 Disable pylint import-error for collections.
This matches the Ansible configuration.
2019-07-30 19:19:54 -07:00
Matt Clay
2198ecb1d2
Improve checking for unusable sanity test ignores. (#59833)
* Check sanity ignore paths against test paths.

This prevents ignores from being added for paths which will never be tested by the test being ignored or skipped.

* Fix sanity ignore handling for no/all targets.

This allows checking of ignores for tests which do not use a target list.

It also allows checking of the full ignore list on every test run for tests that always use all targets.
2019-07-30 18:58:37 -07:00
Matt Clay
f61b044bf0 Support directories in sanity tests. 2019-07-30 18:22:09 -07:00
Jill R
57e4312a36
Add metaclass-boilerplate to elb_target lamda test function (#59832)
* Add metaclass-boilerplate to elb_target lamda test function

This change makes elb_target pass after #59831
2019-07-30 17:40:24 -07:00
Matt Martz
c06751fb26 Handle situation where DOCS.options is None (#59783) 2019-07-30 19:08:43 -04:00
Markus Bergholz
196347ff32 ability to use lambda target in elb_target_group (#57394)
* enable elb_lambda_target test
2019-07-30 15:35:36 -07:00
Matt Clay
e07c4f41d7 Standardize ansible-test sanity test filters. 2019-07-30 15:31:33 -07:00
Jordan Borean
652bfc7e19
win_template - use shared doc fragment for shared options (#59701)
* win_template - use shared doc fragment for shared options

* Change smart quote to em dash and fix whitespace issue
2019-07-31 08:05:24 +10:00
Sam Doran
691976c3d0
Fix podman_image integration tests (#59805)
Pin podman package at a specific version
2019-07-30 15:11:35 -04:00
Matt Clay
1351962eee Move "code smell" sanity test config loading. 2019-07-30 12:07:33 -07:00
Matt Clay
e1c2891188 Add paths_to_dirs function to ansible-test. 2019-07-30 10:46:39 -07:00
Matt Clay
53af57b08b Fix type discrepancy in ansible-test. 2019-07-30 10:46:05 -07:00
Matt Clay
9f41a4273e Remove redundant sanity test ignores. 2019-07-30 10:45:19 -07:00
Abhijeet Kasurde
2ebc4e1e7e inventory: Handle IndexError while parsing limit file (#59776)
Handle IndexError exception raised while parsing the limit file.

Fixes: #59695

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-30 13:02:17 -04:00
Gonéri Le Bouder
1ec155e773 vmware_guest: clone VM with attached CDROM
If a VM has an attached CDROM, `backing` attribute of the CDROM will
be defined.
As a result, we cannot just loop `vm_obj.config.hardware.device` and check
for the existance of the attribute to decide if the entry is a
harddrive.

Instead, we check the type of the device, and only keep the
`vim.vm.device.VirtualDisk` disk.

This issue is actually breaking our test-suite with regular environment
because we keep a Fedora ISO attached to the VM.
2019-07-30 14:09:07 +02:00
Lukas Kämmerling
5bddd2f04a Add hcloud_network module (#59366)
* Add hcloud_network module

* Apply suggestions from code review

Co-Authored-By: Matt Clay <matt@mystile.com>

* Add notice about dependency

* Adjust tests

* Apply suggestions from code review

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Allow changing of ip range

* Add Setup step
2019-07-30 14:00:33 +02:00
Abhijeet Kasurde
dbe618c084 podman_image: Disable unstable test
Disabling tests for podman_image until CI is green.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-30 11:43:03 +02:00
Ganesh Nalawade
127bd67f6e
Render elements in module doc and sanity test for sub-options (#59244)
* Render elements in module doc and sanity test for suboptions

*  Add support to render module elements value in ansible-doc output
   module html
*  Add validate-module sanity test of sunoptions.

* Add current validate module failures to ignore list

* Fix CI failure

* fix rebase conflict

* Fix CI issues

* Fix review comments

* Add validate-modules failure in ignore list
2019-07-30 12:07:21 +05:30
Matt Clay
5d7cc993dd
Clean up sanity test ignore handling. (#59749)
* Allow sanity tests to easily ignore themselves.

Useful for simple regex based sanity tests that error on their own script due to the regex or error message generated.

* Simplify no-smart-quotes sanity test.

Pruning of unversioned directories is handled by ansible-test.

* Remove directory pruning from boilerplate tests.

Files not passing these tests should be ignored instead.

* Add missing sanity ignore entries.
2019-07-29 14:37:44 -07:00
Adam Miller
e9d7156f53 podman-docker docker compat for ansible-test (#59539)
* podman-docker docker compat for ansible-test

Signed-off-by: Adam Miller <admiller@redhat.com>

* remove reprs, use ex.stderr instead

Signed-off-by: Adam Miller <admiller@redhat.com>

* remove u''s ... not needed

Signed-off-by: Adam Miller <admiller@redhat.com>

* Update test/runner/lib/docker_util.py

Co-Authored-By: Matt Clay <matt@mystile.com>

* Update test/runner/lib/docker_util.py

Co-Authored-By: Matt Clay <matt@mystile.com>

* make sanity tests happy

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-07-29 17:34:45 -04:00
Sam Doran
19299f3310
Order data in xml integration test (#59742)
A recent update to lxml for Python >= 3.6 now preserves key order. Change the test input so the input is sorted, making tests pass on previous versions of lxml as well as the latest version.
2019-07-29 16:18:46 -04:00
Jiri Hnidek
978fe81a6d Added unit tests for redhat_subscription module (#58665)
* Fixed the redhat_subscription module:
  - Option 'pool_ids' works in Python3 now
  - It tries to attach only pools IDs that are available
  - Optimization of code: do not call list --available, when
    no pool is requested
  - Simplified configure() method
  - Small changes to generate same commands on Python2 and Python3.
    Order of arguments/options and pool IDs have to be same to
    be able to run unit test using Python2 and Python3.
  - Added fragments file for redhat_subscribtion module
2019-07-29 16:11:29 -04:00
Andrey Klychkov
32de51adac Unit tests: remove unused imports (#59740) 2019-07-29 22:10:13 +02:00
Sam Doran
ed4a729fd6
Update constraints for coverage on Python 3.8 (#59733)
This fixes the unit tests hanging when run with Python 3.8 with coverage enabled
2019-07-29 16:05:29 -04:00
The Magician
4a7e11ba9a Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59324) 2019-07-29 12:26:39 -07:00
Matt Clay
66654475e1 Update ansible-test Python version handling.
Minimum version requirements for sanity tests have been standardized:

- All single version sanity tests now require Python 3.5 or later.
- All multiple version sanity tests continue to use all supported Python versions.
- All version neutral sanity tests continue to work on any supported Python version.

Previously some tests required 3.5 or later with most of the remaining tests requiring 2.7 or later.

When using the `--python` option to specify a Python version:

- Tests which do not support the specified Python version will be skipped with a warning.
- If the specified Python version is not available, any test attempting to use it will generate an error.

When not using the `--python` option to specify a Python version:

- Multiple version tests will attempt to run on all supported versions.
- Single version tests will use the current version if supported and available, or if no supported version is available.
- Single version tests will use the lowest available and supported version if the current version is not supported.
- Any versions which are not available or supported will be skipped with a warning.

Unit tests automatically skip unavailable Python versions unless `--python` was used to specify a version.
2019-07-29 11:54:03 -07:00
Matt Clay
ecddbdf0cb Isolate globals in import sanity test. 2019-07-29 11:13:03 -07:00
Shrikant Chaudhari
0b8354751b Added new module avi_user.py (#57116)
* Added new module avi_user.py and tests for that

* Updated documentation as per module argspec

* Updated as per review comments on IP address

* Updated documentation for types

* Fixed sanity check failure for __future__ import

* Updated documentation as per review comments.
2019-07-29 11:49:04 -04:00
Gonéri Le Bouder
93ea961205 vmware_guest: enable 3 extra tests
- network_with_dvpg
- network_with_portgroup.yml
- template_d1_c1_f0.yml
2019-07-29 15:28:52 +02:00
Tommy Brecher
4d775cbbf1 ec2_eip - added support for BYOIP and filtering reuse addresses by tag/value (#59180)
* change variable name from isinstance to is_instance (prevent overriding builtin function)

* Added support for:
  - Filtering existing Elastic IPs based on a tag name or it's value (when reuse_existing_ip_allowed is true)
  - Allocating new Elastic IPs from a given IPv4 pool (BYOIP support)

* yamllint corrections

* added examples for:
  -  tag_name,
  -  tag_value
  -  public_ipv4_pool

* remove aliases

* Added changelog fragment

* added integration tests for ec2_eip module

* removed space to trigger rebuild
2019-07-29 19:40:19 +10:00
Trishna Guha
6aaf0ea382
fix test typo nxos_lag_interfaces (#59710)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2019-07-29 12:40:23 +05:30
Paul Belanger
c562b53cb2 Fix nxos_facts integration tests (#59643)
This was incorrectly asserting the result of previous nxos_facts task.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-07-29 12:05:35 +05:30
Tom Moore
a589cac18a Windows: new win_netbios module (#58331)
* Initial commit win_netbios module

* Ansibot sanity improvements.

* Corrected file permissions.

* Windows: module description update

* Adding integration tests

* Added missing alias file

* Improvements made to tests and WMI efficiency.

* Correction from sanity check failures

* Shippable corrections

* Moved reboot flag.

* Slight tweak to return value conditoin
2019-07-29 07:56:53 +10:00
Toshio Kuratomi
0e9f002073 Fix build-ansible.py release-announcement
* When the release scripts were changed, this file to implement release
  announcements was left out

* Add announce.py to the compile skip lists as only the release engineers
  run this during package build.
2019-07-26 16:39:56 -07:00
Matt Clay
f274cefa59
Consolidate sanity test ignore entries. (#59665)
* Update empty-init test.
* Update future-import-boilerplate test.
* Update line-endings test.
* Update metaclass-boilerplate test.
* Update no-assert test.
* Update no-basestring test.
* Update no-dict-iteritems test.
* Update no-dict-iterkeys test.
* Update no-dict-itervalues test.
* Update no-get-exception test.
* Update no-main-display test.
* Update no-smart-quotes test.
* Update no-unicode-literals test.
* Update no-unwanted-files test.
* Update replace-urlopen test.
* Update required-and-default-attributes test.
* Update shebang test.
* Update test-constraints test.
* Update use-argspec-type-path test.
* Update use-compat-six test.
2019-07-26 15:26:39 -07:00
Sorin Sbarnea
7c6fb57b7d Implements extra_hosts for docker_image module (#59540)
* Implements etc_hosts for docker_image module

Allows custom hosts on docker_image module.

The of this option made impossible to use docker_image module to build
images that required a custom hostname in /etc/hosts. For running
containers this option was already present.

While the python-docker API uses extra_hosts term, our existing module
already uses etc_hosts argument, so it sounds better to have some
consistency between docker_container and docker_image.

Fixes: #59233

* Update test/integration/targets/docker_image/files/EtcHostsDockerfile

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update lib/ansible/modules/cloud/docker/docker_image.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update changelogs/fragments/docker_image_etc_hosts.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-07-26 16:39:21 -04:00
Andrey Klychkov
5b1a4f959a postgresql_set: improve CI tests (#59583) 2019-07-26 19:53:34 +02:00
Matt Clay
2f6de3aea4 Add missing decorator to ansible-test sanity.
This fixes sanity test errors so they show the proper error code instead of "bound method".
2019-07-26 09:04:37 -07:00
Kevin Breit
3cdc667888 New module - meraki_mx_l7_firewall (#55485)
* Initial commit for meraki_mx_l7_firewall module

* Add argument checking

* Sanity fixes

* Fix crash and improve integration tests

* Improved integration tests and coverage

* Reformat response data
- Module does not match argument structure of API
- PR reformats the response to match Ansible arg spec
- Improved integration tests

* Fix reformatting for diffs

* Create rename_* functions
- is_update_required() ignores the key id
- Meraki expects one of the keys to be id
- Function temporarily renames key to appId to get around this

* Tweak documentation and tests
- Tests now do an include so each task doesn't need delegate_to

* Fix which files I'm editing
2019-07-26 11:43:28 -04:00
Kevin Breit
f8f3986871 New module - meraki_nat (#52889)
* Initial commit for meraki_nat module
- Query fully works
- Present is still very much in development

* Add initial code for present functionality, not complete

* Add request documentation

* Add examples and return documentation.

* Added payload to requests
- Module seems to need new idempotency check

* Allow 1:1 and 1:many NAT to work
- New idempotency check method is probably required to work

* Make all three options work
- Module isn't idempotent

* Diff support
- Added integration tests
- Diff support isn't quite done

* Fix diff output

* Enable idempotency assertion in tests

* Add test assertions for code coverage

* Update documentation and tests
- Split tests to separate file to avoid delegate_to

* Fix blank line
2019-07-26 11:42:36 -04:00
Kevin Breit
db783eb2b9 New module - meraki_firewalled_services (#57289)
* Initial commit for module
- Module can query or modify network services on Meraki gear
- Check mode supported
- Integration tests included

* Small change to examples

* Move mutual exclusive to build in approach

* Sanity err

* Split integration tests into two files to avoid delegate_to

* Add the integration tests, woops
2019-07-26 11:39:20 -04:00
Andrey Klychkov
4e8df9a4b8 unit tests: remove unused imports (#59636) 2019-07-26 10:53:31 -04:00
Pilou
65013c4001 consul_session: ensure certificate is checked when HTTPS is used (#58693)
* consul_session: ensure SSL certificate is checked

* consul_session: don't ignore validate_certs param
2019-07-26 15:05:38 +02:00
Gonéri Le Bouder
8a821d57bd vmware_cluster_facts: fix the functional test
Fix the variable names.
2019-07-26 14:10:44 +02:00
Gonéri Le Bouder
964783fbd2 vmware_guest: speed up vmware_guest tests
- Use predictable VM name during the tests (test_vm1, test_vm2 and
  test_vm2). This to simplify the teardown of the newly created resource
  before the next test.
- Update the documentation to explain the new requirement
- Avoid VM creation with `with_items` when it's not mandatory. This to:
    - speed up the test execution, our hypervisors have limited resources
    - simplify the teardown
- Remove `create_d1_c1_f0_env.yml`, the test was just testing how Ansible
  pass environment variables.
- Correct the name for the `f0` variable (`f1`)
- Fix the DVS tests, the hosts can now reach the dvswitch1 vswitch
- Provision the VM with a poweroff status, this to improve the
  idempotency and sleep up the tests
- Avoid the use of `prepare_vmware_tests` to prepare virtual machines
  when we just need one machine
2019-07-26 14:07:01 +02:00
Nilashish Chakraborty
3da4c0dd3a
Update argspec to normalize across platforms (#59596)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-26 12:30:26 +05:30
Matt Clay
cf9999692a Fix ansible-test encoding issues.
This fixes `ansible-test sanity --list-tests` which was failing when `LC_ALL=C` was set.
2019-07-25 23:29:42 -07:00
Matt Clay
db7e9aa051
Use consolidated ignore.txt in ansible-test. (#59618) 2019-07-25 23:29:23 -07:00
Matt Clay
9e0a3fcc2a Use EOL comment for ansible-test PEP8 skip file. 2019-07-25 10:13:42 -07:00
Sam Doran
3ceeae0de9
Make docker swarm integration tests more reliable (#59473) 2019-07-25 12:49:30 -04:00
Matt Clay
b232a9337e Switch sanity ignores to EOL comments.
This will make automated conversion to consolidated ignores easier.
2019-07-25 09:19:14 -07:00
basos g
3c8838f0f7 Add check mode indicators at the beginning and the end of the playbook, play, and task (#49432)
* Add integration tests for default callback check mode markers
2019-07-25 12:05:43 -04:00
Will Thames
60c76be03c rds_instance: add point-in-time instance restore test (#59411) 2019-07-25 09:49:08 -04:00
Gonéri Le Bouder
ef59dd2ca2 vmware_guest_network: fix the network look up
Before this fix, the module was not able to look up a `VM Network` located at
`/DC0/network/VM Network`. As a consequence, the test module was failing
with a real environment (Non-govcsim).
2019-07-25 14:02:52 +02:00
Matt Martz
95f4282c42
Verify package data in setup.py installs all files (#59537)
* Add sanity test to ensure all non-py files are installed

* Fix mode and regex

* Fix role skel inventory package_data

* Add docs

* Update package_data for inventory files

* Address pylint concerns

* Another tweak to package_data

* Address review feedback

* Change index to 1

* add to ansible-only.txt
2019-07-24 13:58:13 -05:00
Nilashish Chakraborty
f2b0bfd4aa
Add iosxr_lacp resource module (#59281)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-24 22:55:42 +05:30
Sandeep Bandi
1d82d25ea2 Adding Avi ansible lookup module (#58667)
* Adding Avi ansible lookup module

(cherry picked from commit 77b8951f68cbc889e6595b2a359ca27b84a43c0d)

* Added description for examples

* Added debug logs and unit tests

* Fix __builtin__ import and restting super

* Fix pep8 errors

* Updated as per review comments on IP address
2019-07-24 11:35:04 -04:00
Chaitanya Deshpande
f988c23f82 Added unit tests for avi API utils (#58382)
* Added unit tests for ansibble_utils.py

* Removed unnecessary print statement

* Updated Ip address as review comment

* Updated as per review comments on IP address and test asserts
2019-07-24 11:05:28 -04:00
Gonéri Le Bouder
fb96f0b8ae vmware_content_library_info: init the functional test
`vmware_content_library_info` functional test is currently broken because it
assumes the vCenter content library is not empty.
With this commit, the test inits the vCenter content library database using
`prepapre_vmware_tests`, this before the functional test execution.
2019-07-24 16:47:25 +02:00
Gonéri Le Bouder
47496098e7 vmware_dvs_portgroup_facts: test depends on a dvswitch
Creates the missing dvswitch that is used by the test.
2019-07-24 16:46:48 +02:00
Strahinja Kustudic
5fc769f6b1 sysctl - Reload also when current system values differ (#56153)
Previously if `sysctl_set=no` (which is the default) this module only
checked for changes in the sysctl.conf file to decide whether it should
reload it or not. This means that if the values in the conf file are the
same as they are set with the module, but the current values on the
system are different, that this module wouldn't apply the changes on the
system and thus the value set with the module wouldn't be applied on the
OS. This isn't obvious and it doesn't make sense that the module works
like that by default, especially because there is a separate option
`reload`. Now sysctl will also check if the current value differs on the
system and if it does, it will reload the file again.
2019-07-24 10:04:15 -04:00
Abhijeet Kasurde
401e70c0a2
VMware: add facts about tags in vmware_cluster_facts (#56848)
Fixes: #46458

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-24 15:45:15 +05:30
Martin Krizek
1010363c0b
Preserve original variables when using a loop (#59426)
Fixes #59414
2019-07-24 11:35:14 +02:00
Matt Clay
ba90263c22 Fix ansible-test cloud testing for collections. 2019-07-24 00:17:11 -07:00
Matt Clay
3c68a2e5f0 Ignore deleted when querying git in ansible-test. 2019-07-23 23:36:08 -07:00
Matt Clay
51083537fa Fix incorrect collections coverage warning. 2019-07-23 22:06:17 -07:00
Jordan Borean
ba7097cba3
Collection test (#59488)
* Add missing __init__.py for collection unit tests

* Added more tests for collection install and remove default path
2019-07-24 12:38:32 +10:00
Abhijeet Kasurde
d9b9e07d0b
VMware: Add datatypes in documentation (#59221)
* Remove E337 warnings
* Update docs
* Fix minor typos

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-24 07:55:55 +05:30
Matt Clay
7c728118e6
Fix import sanity test for collections. (#59484) 2019-07-23 18:10:24 -07:00
Matt Clay
d65d8d6e13 Fix default pylint config for collections. 2019-07-23 17:14:10 -07:00
Toshio Kuratomi
8a880d6032 Fix the pytest match test for python-2.6 2019-07-23 14:07:37 -07:00
Matt Clay
44a262714c
Add common sanity ignore & skip to ansible-test. (#59416)
* Add common sanity ignore & skip to ansible-test.
* Switch ansible-doc sanity test to single version.
* Remove duplicate ignore entry.
2019-07-23 13:31:54 -07:00
Nathan Swartz
6a77533b57 Specify type-str for common NetApp E-Series documention options. (#59459) 2019-07-23 14:38:11 -05:00
Toshio Kuratomi
67fb3a8215 Fix root filter test
On python-2.6 the error message is different
2019-07-23 09:50:47 -07:00
Felix Fontein
266d6e77a9 Re-enable docker_container tests (#59425)
Mark dependent container's ipc_mode as shareable
2019-07-23 10:20:18 -04:00
Andrey Klychkov
333953117c Add human_to_bytes isbits arg unit tests&docstring
PR #58623

Co-Authored-By: Sviatoslav Sydorenko <webknjaz@redhat.com>
Co-Authored-By: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
2019-07-23 14:56:56 +02:00
Ganesh Nalawade
1092ee55d4
Add [junos_lag_interfaces] resource module (#59011)
* Add junos_lag_interfaces resource module

*  Add new resource module junos_lag_interfaces.
*  Targets model https://github.com/ansible-network/resource_module_models/pull/29
*  Deprecate junos_linkagg module

* Fix CI issues

* Fix junos integration test cases

* Fail if base lag interface is not configured
2019-07-23 11:53:15 +05:30
Trishna Guha
3bad4d6a50
Add nxos_lag_interfaces resource module (#59031)
* Add nxos_lag_interfaces resource module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* ix CI failure

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* module_utils nxos transport-provider fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* CI failure

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_lag_interfaces tests

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2019-07-23 11:11:37 +05:30
The Magician
04445f184b Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59322) 2019-07-22 22:07:48 -07:00
The Magician
c6c262a07e Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59131)
* Bug fixes for GCP modules
* ignore syntax
2019-07-23 10:01:47 +05:30
The Magician
b81239ce50 Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59323)
* Bug fixes for GCP modules
* ignore syntax
2019-07-23 10:00:22 +05:30
The Magician
5d412d89b1 Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59325)
* Bug fixes for GCP modules
* ignore syntax
2019-07-23 09:58:21 +05:30
Matt Clay
79eca9c8fb
Initial ansible-test support for collections. (#59197)
* Initial ansible-test support for collections.
* Include cloud config in delegation payload.
* Add missing types import and fix `t` shadowing.
* Fix plugin traceback when config_path not set.
* Fix encoding issues.
* Remove unused imports.
* More encoding fixes.
* Handle delegation outside exception handler.
* Inject ssh keys only if not already in place.
* More defensive approach to getting remote pwd.
* Add missing string format var.
* Correct PowerShell require regex.
* Rename `is_install` and `INSTALL_ROOT`.
2019-07-22 19:24:48 -07:00
Sam Doran
67c69f3540 Mark Docker tests unstable (#59408)
* Mark Docker tests unstable

- docker_swarm is unstable on RHEL 8
- docker_container is unstable on RHEL 7

* Disable docker_container test.
2019-07-22 16:40:45 -07:00
Jordan Borean
aa0de421d2
Ignore collection build release files in the root collection directory (#59121) 2019-07-23 07:52:30 +10:00
Jordan Borean
65049620ee
Generate galaxy.yml based on single source of truth (#59170)
* Generate galaxy.yml based on single source of truth

* Fix up tests and align file names

* Minor Makefile tweak

* Remove link in galaxy.yml file and make it a template file

* Moved collections docs to dev_guide

* change Makefile clean path

* Added readme to example meta file

* review fixes

* Use newer style for doc generation script

* Fix mistake in dev_guide index

* removed uneeded file, fixed links and added preview banner

* Moved banner for sanity test
2019-07-23 06:50:46 +10:00
PRASOON KARUNAN V
a20afb5822 Add support for test script parameters in win_pester (#58790)
* add parameter list argument

* add tests

* fix test and add doc

* correct test file

* fix typo

* fix tests

* fix typo in file name

* correct file name reverting the previous commit

* correct property name

* add checkmode message

* changes as per review comments

* variable casing and other review comment changes

* define $test_parameters_check_mode_msg variable
2019-07-23 05:46:26 +10:00
Matt Martz
284dafe476
Perfy McPerferton (#58400)
* InventoryManager start of perf improvements

* 0 not 1

* More startswith to [0] improvements

* Remove unused var

* The hash doesn't need to be a string, start as a list, make it into a tuple

* set actually appears faster than frozenset, and these don't need to be frozen

* Cache hosts lists, to avoid extra get_hosts calls, pass to get_vars too

* negligible perf improvement, it could help with memory later

* Try the fast way, fallback to the safe way

* Revert to previous logic, linting fix

* Extend pre-caching to free

* Address test failures

* Hosts are strings

* Fix unit test

* host is a string

* update test assumption

* drop SharedPluginLoaderObj, pre-create a set, instead of 2 comparisons in the list comprehension

* Dedupe code

* Change to _hosts and _hosts_all in get_vars

* Add backwards compat for strategies that don't do set host caches

* Add deprecation message to SharedPluginLoaderObj

* Remove unused SharedPluginLoaderObj import

* Update docs/comments

* Remove debugging

* Indicate what patterh_hash is

* That won't work

* Re-fix tests

* Update _set_hosts_cache to accept the play directly, use without refresh in get_hosts_remaining and get_failed_hosts for backwards compat

* Rename variable to avoid confusion

* On add_host only manipulate _hosts_cache_all

* Add warning docs around _hosts and _hosts_all args
2019-07-22 14:25:20 -05:00
Chris Archibald
6adf0c581e New feature to na_ontap_snapmirror (#59047)
* updates

* updating version added for connection type
2019-07-22 13:46:00 -04:00
Matt Clay
52ad0f3217 Update ansible-test sanity requirements.
Skip installation of packages on Python 2.x which are only used on 3.x.
2019-07-22 10:14:33 -07:00
Chris Archibald
b1360c0d94 bug fixes (#59049) 2019-07-22 11:05:56 -04:00
Trois-Six
6f9f67be18 virt_net: add way to get facts for only one specified network 2019-07-22 16:34:07 +02:00
Andrey Klychkov
59e647910d Add unit tests for bytes_to_human formatter
PR #58664

Co-Authored-By: Sam Doran <sdoran@redhat.com>
2019-07-22 15:45:07 +02:00
Evert Mulder
66d12f6f1e Only convert VirtualDiskFix for #57653 clone_with_convert is failing 2019-07-22 12:52:48 +02:00
Gonéri Le Bouder
e9b1e36d76 vcenter provider: avoid a TypeError exception
Avoid `TypeError: option values must be strings` with `ConfigParser`.
Default values must be string, not `None`.

The error happens when `test/integration/cloud-config-vcenter.ini` does
not have the `vmware_proxy_host` or `vmware_proxy_port` keys defined.
2019-07-22 11:19:39 +02:00
Martin Krizek
b7868529ee
Revert "Speed up VariableManager by preserving Templar state. (#45572)" (#59280)
This reverts commit 6069d09b9d.

Fixes #57351
2019-07-22 10:27:11 +02:00
Abhijeet Kasurde
791e565802
VMware: Additional testcase for mem_reservation (#59365)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-22 10:44:19 +05:30
Tyler Ramer
8d0f2e5725 Address regression causing bootproto=dhcp for manual IP addresses (#56376)
Commit b7724fdf85
appears to have caused a regression, where `ip4`, `gw4`, `ip6`, `gw6`
were converted to `ipv4.address`, `ipv4.gateway` etc.

This causes bootproto (or `ipv4.method`) to remain `dhcp`, as noted in https://github.com/ansible/ansible/issues/36615

This commit only reverts the key-value pairs to the original names,
which is in line with both expectation (manual ip addr == no dhcp) and
the language used in the playbook, which is, for example, "ip4" not
"ipv4.address"

Co-authored-by: Stuart Pollock <spollock@pivotal.io>
Co-authored-by: Tyler Ramer <tramer@pivotal.io>
2019-07-22 09:30:24 +05:30
Abhijeet Kasurde
1f49abb51c
VMware: Accept 0 as valid value for memory reservation (#59230)
vmware_guest accepts 0MB as valid value for memory reservation in
virtual machine hardware configuration. This fixes the regression
introduced via 193f69064f.

Fixes: #59190

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-22 09:03:25 +05:30
Jordan Borean
2f2b106423
Fix win_reg_stat for HKU hives (#59359) 2019-07-22 09:12:14 +10:00
Jordan Borean
015119df8c
Windows - Add common util for web requests (#54759)
* Windows - Add common util for web requests

* Use different method of retrieving options from module arg spec

* Added proper version_added for module options

* Fix linting errors

* Fix proxy issues and updated cred docs

* Fix FTP usage with proxy settings

* Removed uneeded function added in bad rebase

* Fix up client certificate auth

* fix new sanity checks

* Edit http agent code and update porting guide
2019-07-22 08:42:24 +10:00
Matt Clay
b378e885ed Make ansible-test TestMessage hashable. 2019-07-19 21:34:04 -07:00
Matt Clay
4f1d0f1b39 Skip using paths for ansible-doc sanity test. 2019-07-19 16:17:56 -07:00
The Magician
e7fba5cea0 New Module: gcp_mlengine_version (#59224) 2019-07-19 16:52:40 -04:00
The Magician
5b0214bcce New Module: gcp_appengine_firewall_rule (#58852) 2019-07-19 16:42:37 -04:00
The Magician
40ff1949fb New Module: gcp_mlengine_model (#59222) 2019-07-19 16:41:07 -04:00
Sam Doran
8edad83ae0
User - make groups and append mutually exclusive with local (#59309)
* Update intigration tests
2019-07-19 16:05:15 -04:00
The Magician
5c6aa9b9e8 Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59171)
* Bug fixes for GCP modules

* ignore syntax
2019-07-19 11:33:47 -07:00
The Magician
c5e26ab4da Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59172)
* Bug fixes for GCP modules

* ignore syntax
2019-07-19 11:33:04 -07:00
The Magician
b75e8d19be Bug fixes for GCP (as of 2019-07-09T06:06:53Z) (#59132)
* Bug fixes for GCP modules

* ignore syntax
2019-07-19 11:32:05 -07:00
Sloane Hertel
1d3f2c7764
disable s3_lifecycle tests (#59311) 2019-07-19 13:20:15 -04:00
Felix Fontein
4a574c4d0c Option parsing: warn if both an option and its alias are specified for a module (#53698)
* Print warning when both an option and its alias is specified.

* Improve output.

* Put warnings into self._warnings directly, resp. use self.warn() when handling subspecs.

* Add changelog.

* Add unit test.
2019-07-19 13:11:41 -04:00
Sam Doran
f231f21669
Handle situation where ansible_architecure may not be defined when gathering facts (#55466) 2019-07-19 11:33:05 -04:00
Nilashish Chakraborty
bb006db7c8
Add exclusive configuration mode support (#59289)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-19 19:03:35 +05:30
Abhijeet Kasurde
4b152235ff
Typo fixes (#59227)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-19 18:18:14 +05:30
Raul Mahiques
fd2116e26a Added state "remount" which will remount the device (#52649) 2019-07-19 08:59:27 +02:00
Toshio Kuratomi
87601969a3 Correct places where match was intended
pytest.raises has two parameters, message and match.  message is meant
to be the error message that pytest gives when the tested code does not
raise the expected exception.  match is the string that pytest expects
to be a match for the repr of the exception.  Unfortunately, it seems
that message is often mistakenly used where match is meant.  Fix those
cases.

message is also deprecated so removed our usage of it.  Perhaps we
should write a sanity test later that prevents the use of
pytest.raises(message) to avoid this mistake.

seealso: https://docs.pytest.org/en/4.6-maintenance/deprecations.html#message-parameter-of-pytest-raises

Also update the exception message tested for as we're now properly
detecting that the messages have changed.
2019-07-18 17:10:58 -07:00
Aljaž Košir
42073b6331 Add lambda_bucket_event module (#58059) 2019-07-18 10:54:01 -07:00
Jill R
1c1da3c11d
Re-enable ec2_vpc_vpn_facts test (#58893) 2019-07-18 09:17:15 -07:00
pratikgadiya12
393e4a41d0 Added support to create and delete multiple databases in MySQL (#58602)
* Added support to create/delete mulitiple databases in MySQL

Fixes: #58370

* Added additional tests cases and fixed documentation changes

* Code refactoring and added tests for better test coverage

- Removed db_exists usage from most of the code. Used existence_list
 and non_existence_list instead

- Added additional tests to cover all scenarios w.r.t creation and deletion
 on multiple databases

- Added tests for dump operations

* Minor fix

* Minor fix - create check mode test

* Added dump tests for better dump tests coverage

* Removed minor database connection details

* fixed error

* Added test case for import operations

* Code refactoring and review fixes

- Added dump all test case

* Fixed review comments

* Minor review comment fixes

* Altered db_create return value

* Removed db_list and altered "does exist" to just "exist"

* Kept db and db_list in module.exit_json

* Refactored tests

- Added removal of dump2 file

* Moved import tests to state_dump_import file

* Removed import tests from multi_db_create_delete

* Updated porting guide, added RETURN block

* Minor identation fix

* Added validation to check if databases are dumped
2019-07-18 16:56:32 +02:00
Hannes Ljungberg
0e8eb1d17f pip: Remove unused option use_mirrors and remove all ignore.txt entries
PR #58977

* Remove unused option use_mirrors

* Add changelog fragment
2019-07-18 16:38:37 +02:00
Sam Doran
d2edf1d435 User - Create parent directories if they do not exist in the specified home path (#51043)
* Create a user home directory if it has parents that do not exist

The useradd command line tool does not create parent directories. Check if the specified home path has parents that do not exist. If so, create them prior to running useradd, then set the proper permission on the created directory.

Add tests

Signed-off-by: Sam Doran <sdoran@redhat.com>

* Use dict for default user group in tests

Signed-off-by: Sam Doran <sdoran@redhat.com>

* Fix tests

Signed-off-by: Sam Doran <sdoran@redhat.com>
2019-07-18 10:19:11 -04:00
Sumit Jaiswal
b01b1d40cf
PR to add Unit TC for Checkpoint network module (#57710)
* cp_network unit TC

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-07-18 16:24:09 +05:30
Yunge Zhu
cb201bfba1 add xmltodict to azure requirements file (#55748)
* add xmltodict

* fix lint
2019-07-18 01:32:51 -04:00
Sebastiaan Mannem
d0538c0d7a postgresql_pg_hba: Exception when two lines with same weight are compared (#59198) 2019-07-18 10:50:19 +05:30
Abhijeet Kasurde
8a13b41823
VMware: Use managed object id to find VM (#59143)
* Based upon partial work of wilmardo
* Now, user can specify managed object id of virtual machine to find
an existing virtual machine

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-18 07:38:12 +05:30
Yunge Zhu
42c43a2822 add azure_rm_keyvaultkey_info module (#55754) 2019-07-18 06:55:51 +08:00
Matt Clay
13bbfacb04 Show ansible-test --explain errors in CI. 2019-07-17 15:34:00 -07:00
Andrey Klychkov
0e09800a9a Postgresql modules: tidying up of CI tests (#59099) 2019-07-17 11:00:40 -04:00
Brian Coca
a39b721db5
fixes to config manager (#58530)
* skip unreadable ansible.cfg

* all types should check for type

* patch access for tests and fix tests that relied on missing files not being checked
2019-07-17 10:39:30 -04:00
dx0xm
b8eba8e1f0 VMware: Add testcase for vmware_dvs_portgroup_facts (#59088)
* Tests for choosing specific DVS while gathering facts

Signed-off-by: dx0xm <52723266+dx0xm@users.noreply.github.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-17 18:31:52 +05:30
Hannes Ljungberg
6f94995b52 npm: Validate all option types (#58965)
* Add type validation for name, version and registry
* Add changelog fragment
* Remove ignore of E337 and E338
2019-07-17 09:34:58 +05:30