Commit graph

8897 commits

Author SHA1 Message Date
Matt Clay
d36919856f
Update integration tests. (#60447)
* Remove unnecessary ANSIBLE_CONFIG override.
* Fix pull integration test.
* Fix inventory_foreman integration test.
2019-08-12 16:23:47 -07:00
Sam Doran
c485a1b91e
Fix sanity tests based on newer version of shellcheck (#60423)
- change egrep to grep -E
- store exit codes and check them directly
- ignore SC1091
2019-08-12 16:24:28 -04:00
Matt Martz
697b566971
Update units to pass on macOS (#60435)
* Update units to pass on macOS. Fixes #27810

* raising=False
2019-08-12 15:13:07 -05:00
The Magician
6cb5b67b22 Bug fixes for GCP modules (#60115) 2019-08-12 14:34:20 -04:00
The Magician
be459c00bf Bug fixes for GCP modules (#60337) 2019-08-12 14:31:35 -04:00
The Magician
687da46a85 Bug fixes for GCP modules (#60338) 2019-08-12 13:41:41 -04:00
Marius Gedminas
c71622b31a user: createhome=no home=/no/such/dir (#60310)
Fixes #60307.

This bug was introduced in commit d2edf1d435
("User - Create parent directories if they do not exist in the specified
home path (#51043)") and did not make it into any releases.
2019-08-12 10:37:45 -04:00
Chris Archibald
13403b3688 update to command (#60141) 2019-08-12 10:30:00 -04:00
Chris Archibald
5df9075386 New Module: na_ontap_ports (#59814)
* new module

* fixes
2019-08-12 10:23:24 -04:00
Nathan Swartz
abc5654738 Fix netapp_e_iscsi_target chap secret size and clearing functionality. (#57135) 2019-08-12 09:52:40 -04:00
Nilashish Chakraborty
09f712c7f3
Add iosxr_lldp_global resource module (#60074)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-08-12 18:03:23 +05:30
Andrey Klychkov
3929dc00a1 unittests: remove unused imports (#60404) 2019-08-12 13:35:39 +02:00
Gonéri Le Bouder
a3407682ed ansible-test: fix the vcenter+vcsim support
The vcenter provider allow one to use the `VMWARE_TEST_PLATFORM` to
manually select a test platform. The test platforms are:

- `govcsim`
- `static`
- and `worldstream`.

Before this commit, the `govcsim` value was ignored.

Example:

```shell
$ VMWARE_TEST_PLATFORM=govcsim ansible-test integration --python 3.7 needs/target/prepare_vmware_tests/
```
2019-08-12 11:55:38 +02:00
Miguel Angel Muñoz González
60a1545092 Fortinet's new module for fortios_switch_controller_vlan (#59630)
* Fortinet's new module for fortios_switch_controller_vlan

* Update fortios_switch_controller_vlan.py

* Update fortios_switch_controller_vlan.py
2019-08-12 14:58:02 +05:30
Miguel Angel Muñoz González
f1a4ab0aa5 Fortinet's new module for fortios_switch_controller_virtual_port_pool (#59601)
* Fortinet's new module for fortios_switch_controller_virtual_port_pool

* Update fortios_switch_controller_virtual_port_pool.py

* Update fortios_switch_controller_virtual_port_pool.py
2019-08-12 14:56:11 +05:30
Miguel Angel Muñoz González
079a4408ab Fortinet's new module for fortios_switch_controller_switch_profile (#59683)
* Fortinet's new module for fortios_switch_controller_switch_profile

* Update fortios_switch_controller_switch_profile.py

* Update fortios_switch_controller_switch_profile.py
2019-08-12 14:55:19 +05:30
René Moser
602aded6ec
vultr: vultr_block_storage_facts to info (#60230) 2019-08-12 10:36:21 +02:00
Ganesh Nalawade
8cbfa75038
Add [junos_lacp] model (#59705)
* Add [junos_lacp] model

*  Add new resource module junos_lacp.
*  Targets model https://github.com/ansible-network/resource_module_models/pull/28

* Fix CI issues

* Fix CI failures
2019-08-12 13:54:44 +05:30
sushma-alethea
622a493ae0 icx: new module icx_ping (#59975)
* new module

* new module

* new terminal

* new terminal

* new cliconf

* new cliconf

* cliconf

* cliconf

* icx cliconf

* icx cliconf

* icx_cliconf

* icx test units module

* icx test units module

* icx units module

* icx units module

* icx banner unit test

* icx banner unit test

* PR changes resolved

* changes resolved

* Changes Resolved

* check_running_config changes resolved

* added notes

* added notes

* removed icx rst

* new changes

* new changes

* deleted icx rst

* icx .rst

* icx .rst

* modified platform_index.rst

* modified platform_index.rst

* modified platform_index.rst

* modified platform_index.rst

* changes resolved

* changes resolved

* PR comments resolved

* PR comments resolved

* Update platform_index.rst

PR comment resolved

* Update platform_index.rst

PR comment resolved

* new module icx_ping

* new changes

* Fixed bot error
2019-08-12 12:01:15 +05:30
Nilashish Chakraborty
f4502a8f1c
Set eth0 to dhcp explicitly (#60305)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-08-12 11:36:54 +05:30
Ganesh Nalawade
fdf48ed0b4
Add [junos_lacp_interfaces] resource module (#59708)
* Add [junos_lacp_interfaces] resource module

*  Add new resource module junos_lacp_interfaces.
*  Targets model https://github.com/ansible-network/resource_module_models/pull/36

* Fix sanity test failure
2019-08-12 11:24:34 +05:30
Jordan Borean
35b87b8633
Move windows test to another group (#60391) 2019-08-12 10:00:09 +10:00
Maxim Babushkin
dda80c46e9 openssh_keypair - Add key `comment` to return output (#59268)
If the comment will be provided during the key creation, it will be
diplayed in the return values.
Same will be on the comment change.
2019-08-11 13:47:34 +02:00
Maxim Babushkin
27e414200f openssh_keypair - Add public key and key comment validation (#57993)
- Split the key validation to separate private and public.
- In case public key does not exist, recreate it.
- Validate comment of the key.
- In case comment changed, update the private and public keys.
2019-08-10 18:57:35 -04:00
Matt Clay
473bd6bb0a Relax boilerplate sanity tests.
This will avoid requiring boilerplate for documentation only python files.
2019-08-09 18:49:57 -07:00
Matt Clay
3fac6a0adb Fix ansible-test TypeVar type annotations. 2019-08-09 17:29:41 -07:00
The Magician
30ad73f1c1 Bug fixes for GCP modules (#60339) 2019-08-09 19:17:44 -04:00
Felix Fontein
8b68feb67e
acme_certificate: allow to download alternate certificate chains (#56334)
* Improve link handling.

* Also fetch alternate certificate chains.

* Add retrieve_all_alternates option.

* Simplify code.

* Forgot when condition.

* Add tests for retrieve_all_alternates.

* Fixes.

* Moved utility function for link parsing to module_utils.

* Fix grammar.
2019-08-09 23:54:48 +02:00
Felix Fontein
3290b8343c
docker: fix sanity errors (#60047)
* Remove sanity check errors.

* More linting.

* Forgot to update places.

* Remove choices which aren't provided in argspec.
2019-08-09 23:50:11 +02:00
Alex Stephen
2e90efd4a7 Changing GCP Facts modules to Info Modules (#60172)
* file changes, porting guide, changelog fragment, renaming autoscaler, removing rst links
* Apply suggestions from code review

Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-08-09 15:13:08 -05:00
Chris Archibald
b6202dde32 Allow firmware update for (SP, ACP, Shelf, Disk) (#58597)
* update

* Revert "update"

This reverts commit 84848f8291.

* correct module

* fixes
2019-08-09 16:04:46 -04:00
Sam Doran
2d266fbc87
Fix unit tests to work with pytest >= 5.0 (#60246)
pytest made a change in the way the message from ExceptionInfo objects was returned.

https://docs.pytest.org/en/latest/changelog.html#pytest-5-0-0-2019-06-28
2019-08-09 14:58:46 -04:00
Matt Clay
5a50fb35df Add sanity test for obsolete files.
This will help prevent accidental merging of content to recently obsoleted directories when adding new files.

It may also help contributors who have modified obsolete files understand where their changes should now be made.
2019-08-09 11:22:59 -07:00
Matt Clay
cb68110296
Clean up ansible-test inventory templates. (#60321)
* Move ansible-test inventory templates.
* Remove obsolete inventoy.remote.template file.
2019-08-09 11:06:21 -07:00
Yaakov Selkowitz
93d9d64038 facts: fix double-counting of CPUs on POWER systems (#58360)
On POWER systems, /proc/cpuinfo provides a 'processor' entry as a
counter, and a 'cpu' entry with a description (similar to 'model name'
on x86). Support for POWER in get_cpu_facts was added via the 'cpu'
entry in commit 8746e692c1.  Subsequent
support for ARM64 in commit ce4ada93f9
used the 'processor' entry, resulting in double-counting of cores on
POWER systems.

When unit tests were later written for this code in
commit 55306906cf, the erroneous values
were just accepted in the test instead of being diagnosed.

Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2019-08-09 13:01:29 -04:00
Matt Clay
2a9964ede8
Code cleanup in ansible-test. (#60318)
* Move ansible-test units code into separate dir.
* Fix --explain on "code smell" sanity tests.
* Add --strict-markers to pytest invoctaion.
* Fix classification of units code changes.
2019-08-09 09:38:19 -07:00
Matt Clay
6c09b5c659
Unit test cleanup. (#60315)
* Clean up option parsing unit tests.
* Remove unused unit test marker and import.
2019-08-09 08:31:13 -07:00
Nathan Swartz
d61df0a9ba Lun mapping upstream dev (#57096)
* Fix hosts with same lun number conflict in netapp_e_lun_mapping.

This patch fixes an issue of when multiple hosts are created and then
subsequently volume(s) are mapped to them using the same specified number.

* Fix netapp_e_host module bug when lun=0

* Add thin-volumes to the netapp_e_lun_mapping update_mapping_info method.
2019-08-09 08:25:38 -04:00
Chris Archibald
48021a4200 add modify to snapshot policy (#59149) 2019-08-09 07:56:31 -04:00
Jordan Borean
dbd082efe4
Ansible.AccessToken - Added shared util for managing a Windows access token (#60302)
* Ansible.AccessToken - Added shared util for managing a Windows access token

* Fix tests when running in CI

* More fixes for older servers

* More fixes for Server 2008
2019-08-09 21:10:44 +10:00
Felix Fontein
49e16922b2 Remove no longer necessary check (since elements is procesed for path). (#59953) 2019-08-09 09:40:26 +02:00
Ganesh Nalawade
309a58eafd
Add [junos_l2_interfaces] resource module (#59693)
* Add [junos_l2_interfaces] resource module

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

* Fix CI failures

* Fix CI issues
2019-08-09 13:09:19 +05:30
Matt Clay
df59f06d6a
Additional ansible-test path fixes. (#60300)
* Add missing ansible-test injector symlink.
* More ansible-test path fixes.
* Expand bin-symlinks docs.
2019-08-08 23:51:03 -07:00
Matt Clay
3777c2e93d Fix plugin names when loading all plugins. (#59950)
* Fix plugin names when loading all plugins.

Add an integration test to verify plugin __package__ and __name__ are correct.

* Make sure filter and test names are unique.

* Remove __package__ test.

On Python 2.x __package__ is not set, but it is on Python 3.x.
2019-08-09 07:23:12 +01:00
Abhijeet Kasurde
d3624cf4a4
VMware: test - add missing datacenter parameter (#60273)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-08-09 11:17:44 +05:30
Matt Clay
39b3fc0926 Update ansible-test layout and payload handling. 2019-08-08 21:34:38 -07:00
Matt Clay
07051473f8 Disable failing inventory_docker_machine test. 2019-08-08 20:39:04 -07:00
Abhijeet Kasurde
647b78a09c
VMware: Check if datastore is valid (#58872)
Check validation of datastore selected using autoselect_datastore API.

Fixes: #58541

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-08-09 07:56:52 +05:30
Matt Clay
57dc7ec265
Prepare ansible-test for inclusion in setup.py (#60294)
* Cache ansible version lookup.
* Fix method of determining ANSIBLE_ROOT.
* Clean up based on PyCharm inspections.
* Generate minimal PKG-INFO without setup.py.
* Use ANSIBLE_LIB_ROOT where possible.
* Use import instead of subprocess to get version.
* Fix install layout type.
* Correct required paths message for installs.
* Update list of files copied during delegation.
* Fix ansible-test entry point.
* Fix pylint issue.
* Fix version lookup on Python 2.x.
* Fix pylint issue.
* Remove unwanted print statement.
2019-08-08 16:14:19 -07:00
Andrew Gaffney
b38cb37728
Transform octal escape sequences in mtab fields (#60122) 2019-08-08 16:31:42 -05:00
Sam Doran
9cb47832d1 Pin openshift <=0.9.0 to prevent test failures (#60245) 2019-08-08 14:28:40 -05:00
Sam Doran
aa717661af Move assertion in unit test inside loop (#60232) 2019-08-08 14:27:49 -05:00
Toshio Kuratomi
b0ec91e69e Autointerpreter table (#60148)
* Some framework for docs

* Separate CSS file for our site-specific CSS.
* Override the read-the-docs theme for tables so that tables don't
  always horizontally scroll
* Add a |br| substitution that lets us line break inside of tables
* Add |_| non-breaking-space substitution which is also for formatting
  tables
* Configure rstcheck to ignore all substitutions which are being added
  by sphinx in the conf.py

* Fix table of auto interpreter options

The table was being hardcoded at a certain width to work around a
read-the-docs theme bug.  Fix the bug instead and format the table using
better sphinx practices.

* Remove unused substitutions

We had substitutions defined that were never used in our documentation.
Remove those.

Also add to the rstcheck whitelist three substitutions which are defined
by sphinx itself, version, release, and today.
2019-08-08 13:56:07 -05:00
Matt Clay
97a0810e0f
Move ansible-test entry point. (#60281) 2019-08-08 09:18:31 -07:00
Jiri Hnidek
577bb88ad8 Added support for syspurpose to redhat_subscribtion module (#59850)
* Added several unit tests
* Added documentation for new syspurpose option and suboptions
* Simplified specification of module arguments
* Added new changelog file with fragments
2019-08-08 11:43:05 -04:00
Nathan Swartz
10543c8a4c Facts dev upstream (#57082)
* Improved netapp_e_facts module.

Added the following facts:
  - storage system segment size
  - cache block size capabilities
  - workload tags
  - storage array hosts
  - host groups
  - list of mapped volumes for each initiator

* Remove proxy specific facts from netapp_e_facts module

* Add unit tests for netapp_e_facts module.
2019-08-08 11:36:23 -04:00
Ganesh Nalawade
6f0aae256d
Add [junos_lldp_interfaces] model (#59720)
* Add [junos_lldp_interfaces] model

*  Add new resource module junos_lldp_interface
*  Targets model https://github.com/ansible-network/resource_module_models/pull/40
*  Deprecate junos_lldp_interface module

* Fix CI issues
2019-08-08 18:23:54 +05:30
Trishna Guha
87a568da0b
Add nxos_lacp resource module (#59717)
* Add nxos_lacp resource module

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

* Add commands in module doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2019-08-08 16:52:16 +05:30
Nilashish Chakraborty
a595c60d4c
Add eth0 in prepare_vyos_tests (#60212)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-08-08 16:45:01 +05:30
Jordan Borean
534a40c5cd
Move win target back a group (#60257) 2019-08-08 12:03:32 +10:00
Matt Clay
5f67b5a757 Move ansible-test coverage config to test/lib/ 2019-08-07 18:32:46 -07:00
Matt Clay
2e7d36a3f9
Fix placement and handling of ansible-test cloud config (#60253)
* Move cloud templates.
* Update paths for cloud config templates.
* Fix cloud config paths.
* Fix cloud-config classification.
2019-08-07 18:32:30 -07:00
Jordan Borean
81cb6f366a
Added group 7 to Windows groups - ci_complete (#60240) 2019-08-08 10:13:28 +10:00
ximon18
2cca9176a7 Added a Docker Machine dynamic inventory plugin (#54946)
* Added my Docker Machine dynamic inventory plugin (from https://github.com/ximon18/ansible-docker-machine-inventory-plugin) to begin the process of proposing it for inclusion in Ansible core. There are no integration tests yet. The docker_swarm inventory plugin has such tests but has some concerning note in its 'aliases' file about disabling docker due to test instability and also I wouldn't know at his point how to get Docker Machine installed on the integration test platform.
2019-08-07 18:14:14 -04:00
Jordan Borean
3a3727d200
Remove Python 2.6 from Windows tests (#60235) 2019-08-08 07:32:09 +10:00
silverwizard
5d8302120b Removed breaking type check from nagios module (#49568)
* Removed extraneous type check from nagios module, in order to allow python 3.x

* Removed now useless import types

* Added changelog fragment

* Update changelog.

* Rebased and removed check due to module adding earlier guardrails

* Updated changelog to mention earlier fix adding now completely removed guardrails

* Remove superfluous type checks. Fix docs type.

* Update ignore.txt.
2019-08-07 22:43:14 +02:00
Nilashish Chakraborty
7b90e8aec4
Add iosxr_lacp_resource module (#59724)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-08-08 00:13:06 +05:30
Sam Doran
47796af64f
Change dummy package name in yum/dnf tests to not collide with an actual package (#60225)
When targeting 'foo*' in tests, it pulled in packages other than the dummy packages in our testing repo that have many dependencies, some of which were causing tests to fail.

Also change 'bar' package name to avoid the same issue in the future.
2019-08-07 14:26:55 -04:00
Matt Clay
278044358c Split up ansible-test sanity test requirements. 2019-08-07 09:34:26 -07:00
Matt Clay
a93a0c8fd6
Relocate validate-modules for easier testing. (#60214)
* Relocate module validator code and tests.
* Fix validate-modules entry point and imports.
* Fix paths and test entry points.
* Fix up unit tests.
* Fix shebang and execute bit.
2019-08-07 09:34:11 -07:00
Martin Krizek
164881d871 Remove UnsafeProxy (#59711)
* Remove UnsafeProxy

Move the work from UnsafeProxy to wrap_var and add support for bytes.
Where wrap_var is not needed, use AnsibleUnsafeBytes/AnsibleUnsafeText
directly.

Fixes #59606

* item is not always text

* Address issues from reviews

* ci_complete
2019-08-07 10:39:01 -05:00
Nathan Swartz
e80f8048ee Fix netapp_e_volume wait-for-initialization to complete issue. (#58304)
* Fix netapp_e_volume wait-for-initialization to complete issue.

* Add unit tests for wait_for operations in netapp_e_volume module.
2019-08-07 11:28:39 -04:00
Wojciech Wypior
d00aaf66d7 fixes assert statements in tests (#59998) 2019-08-07 06:52:41 -07:00
Wojciech Wypior
ce1f25cffd adds module to manage apm acls (#59992) 2019-08-07 06:48:55 -07:00
Wojciech Wypior
77b323459f adds more modules to bigip provision (#59996) 2019-08-07 06:45:27 -07:00
Wojciech Wypior
7b97abf6a2 adds apm module to manage network access components for APM (#59993) 2019-08-07 06:44:57 -07:00
Wojciech Wypior
47e3ed8100 adds module to manage device self signed certificates (#59994) 2019-08-07 06:44:41 -07:00
Wojciech Wypior
0d92abad7d adds module to manage snat translations (#59995) 2019-08-07 06:43:10 -07:00
Jill R
4308b87d72 Don't truncate cidr_ipv6 addresses in ec2_group.py (#59106)
* Better cidr_ipv6 validation in ec2_group.py

* Improve warning/error handling, add changelog

* Update unit test for ipv6 validation

* Fix logic that was causing non /128 cidrs with host bits to not be handled
2019-08-07 08:39:55 -04:00
Marat Sharafutdinov
8751319820 Add wait_sleep parameter for the k8s module (#59714) (#59854) 2019-08-07 21:27:54 +10:00
sushma-alethea
92187ae53e icx: new module icx_command (#59903)
* new module

* new cliconf

* cliconf

* icx cliconf

* icx test units module

* icx units module

* icx banner unit test

* added notes

* new changes

* icx .rst

* modified platform_index.rst

* modified platform_index.rst

* changes resolved

* PR comments resolved

* Update platform_index.rst

PR comment resolved

* new module

* new cliconf

* cliconf

* icx cliconf

* icx test units module

* icx units module

* icx banner unit test

* added notes

* new changes

* icx .rst

* modified platform_index.rst

* modified platform_index.rst

* changes resolved

* PR comments resolved

* Update platform_index.rst

PR comment resolved

* new module icx_command

* PR issue

* new PR fix
2019-08-07 13:27:24 +05:30
Matt Clay
9e31cf7270 Avoid pylint error on Python 3.7. 2019-08-06 17:19:01 -07:00
Matt Clay
18867847f4
Split up "code smell" sanity tests. (#60174)
* Relocate ansible-only sanity tests.

* Get "code smell" sanity tests from multiple dirs.

- `test/lib/ansible_test/_data/sanity/code-smell/` - General purpose tests used for both Ansible and Ansible Collections.
- `test/sanity/code-smell/` - Tests specific to Ansible, will not be used for Ansible Collections.
2019-08-06 17:17:57 -07:00
Matt Clay
709a8c5026 Fix ansible-test classification of sanity changes. 2019-08-06 17:17:31 -07:00
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
Matt Davis
d28f25d118
patch ansible-connection collection plugin loading (#59119) 2019-07-16 13:46:15 -07:00
Matt Clay
d4dec59cb0 Fix collection loader builtin handling. (#58897)
- Support more import statements:

  from ansible_collections.ansible.builtin.plugins.module_utils import basic
  from ansible_collections.ansible.builtin.plugins.module_utils.basic import AnsibleModule

- Add unit tests for more import statements.
- Raise ImportError instead of returning None if load_module fails.
2019-07-16 13:40:22 -07:00
Toshio Kuratomi
019d078a5a
Move common build code from _build_helpers (#55986)
We have some common code used by several docs scripts.  Migrate that
into the build-only shared code repository.

* Move lib/ansible/utils/_build_helpers.py to the directory for common
  build code
* Migrate docs/bin/dump_config.py to a build-ansible subcommand
* Migrate dump_keywords to the build-ansible framework
  * Make the script more maintainable by using functions and good
    variable names
  * Port to Python3 idioms
  * Fix bug so that private attributes will be undocumented
* Move generate_man to a build-ansible subcommand
* Port plugin_formatter to a build-ansible subcommand
* Rework command_plugins so that docs scripts can target Python-3.4+ and
  releng-only subcommands can use more recent versions of Python.
  The architecture is now that command_plugins/* need to be importable
  on Python-3.4.  The init_parsers() method needs to run on Python-3.4.
  But the main() method can utilize features of more recent Python as
  long as it fits within those parameters.
* Update docs build requirements

Port the plugin_formatter to build-ansible framework
2019-07-16 12:19:01 -07:00
Matt Clay
cb0dfc9793 Prepare pylint test for collections support. 2019-07-16 11:24:16 -07:00
Chris Archibald
8bf069114f New Module: Vscan Enable (#57953)
* new module

* fix netapp.py

* updates

* fixes
2019-07-16 13:40:56 -04:00
Sam Doran
d17e7a91b1
Add test for meta: end_play (#59118)
- Set ansible_python_interpreter for hosts using local connection
2019-07-16 12:41:48 -04:00
Wojciech Sciesinski
e8a7d89180 Correct a documentation of the jenkins_plugin module (#59139) 2019-07-16 11:46:18 -04:00
Matt Clay
2ed78b650f Update to ansible-test to prepare for collections.
Changes to simplify merging of collections support.
2019-07-16 08:04:07 -07:00
Abhijeet Kasurde
de66abe521
VMware: Add support for storagePod (#58627)
* User now can be specify datastore cluster for deploying OVF
* Added find_resource_pool_by_cluster API

Fixes: #57849

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-16 13:14:21 +05:30
Matt Clay
4b9391f32a Clean up ansible-test target handling. 2019-07-15 20:33:23 -07:00
Matt Clay
4255ee8e5a Prepare ansible-test for collections support.
Another round of changes to prepare ansible-test for supporting collections to help keep later PRs a manageable size.
2019-07-15 17:46:29 -07:00
Matt Clay
f81238012b Clean up pylint issues in test infra. 2019-07-15 14:45:30 -07:00
Martin Krizek
4898b0a4a2 group: detect duplicate GIDs when local=yes (#58469) 2019-07-15 12:52:15 -04:00
Alvaro Olmedo Rodriguez
a1dcba63b3 java_keystore - Prefer SHA256 and solve SHA256 keytool in java11 version (#57302) 2019-07-15 12:44:30 -04:00
Andrey Klychkov
2a07123fdd jboss module: add check mode support and integration tests (#58959)
* git war file and wildfly archive from S3
* create setup_wildfly_server role for integration tests
2019-07-15 12:17:08 -04:00
Noe Gonzalez
3a5d13b0d7 VMware: Fix vmware_guest cloning bug (#58737)
* fix vmware_guest cloning bug
* added tests for resizing disks during clone
2019-07-15 10:09:54 +05:30
n3pjk
a135c483ce Add OAuth and Multi-Record Query for SNOW (#58410)
* Add SNOW OAuth Support and Multi-record Query

* Add OAuth documentation to snow_record_find

* Fix lint and verification issue for PR 58410

* Fix E309 and E324 errors in PR 58410

* Fix E307, need advice on E309

* Fix E309 for PR 58410

* Re-add instance, username and password documentation

* Fix data type mismatch in documentation

* Remove doc_fragment overlap

* Refactor service now module space

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-13 20:34:36 +05:30
Matt Clay
d910c971b4
Minor ansible-test code cleanup. (#59052)
* Minor ansible-test code cleanup.
* Fix type annotations.
2019-07-12 21:58:19 -07:00
The Magician
d1587bca41 Bug fixes for GCP modules (#58902) 2019-07-12 18:50:49 -04:00
Chris Archibald
f3aac3a112 MOTD was not idempotent (#57372)
* fix issue

* fix issues

* fix issues

* fix issues
2019-07-12 16:47:41 -04:00
The Magician
51e1b090db Bug fixes for GCP modules (#58901) 2019-07-12 16:21:43 -04:00
The Magician
119b8521a6 Bug fixes for GCP modules (#58904) 2019-07-12 16:21:31 -04:00
Matt Clay
6645054329
Code cleanup for test infrastructure. (#59046)
* Remove useless object inheritance in test code.
* Remove unnecessary pass statements from test code.
* Comment on why certain pylint rules are ignored.
* Add more pylint test contexts.
* Fix import order.
* Remove unused variables.
* Remove unnecessary pass statement.
* Fix bad continuations.
* Remove unnecessary elif.
* Allow legitimate broad except statements.
* Allow legitimate protected access.
* Clean up names to make pylint pass.
2019-07-12 13:17:20 -07:00
Toshio Kuratomi
dd2755e0b4 Fix pylint warnings for update-bundled 2019-07-12 12:35:56 -07:00
The Magician
6fb7a2b7cc Bug fixes for GCP modules (#58903) 2019-07-12 15:11:22 -04:00
The Magician
5cd0e2f19f Bug fixes for GCP modules (#58900) 2019-07-12 15:08:08 -04:00
Ganesh Nalawade
70db07fa82 Fix junos_interfaces integration test failure (#59035)
* Fix junos_interfaces failure

*  Remove lo0 interface by default since
   vsrz zuul env seems to add it intermittently
   as part of device intial config

* Add missing change for replace case
2019-07-12 13:55:28 -04:00
Pavan Bidkar
7b8edbf9dd VMWare: New Module for content library CRUD operations (#58716) 2019-07-12 09:34:05 -07:00
Matt Clay
3f2b766d10 Add future and metaclass boilerplate to test code.
Continue to ignore:

- test/integration/
- test/legacy/
- test/units/
2019-07-12 09:18:24 -07:00
Gonéri Le Bouder
f98a4ef2f7 vmware: ro=False datastores for the functional test
https://github.com/ansible/ansible/issues/58541 prevents us from using
read-only datastore. So for now, we mount everything read-write.
2019-07-12 16:23:17 +02:00
Pavan Bidkar
6bd6bf98e5 VMware: New Module for VMWare content Library info (#58703)
* Changes as per review comments and renamed file to vmware_content_library_info
* Removing password field from publish info dictionary
* Removed current password field from publish info
* Modified vmware_content_library_info module with review comments.
* Review comments. Moved test .yml files under tasks folder
* Moved test files under module name folder. Handled library_get call under try catch to throw proper error message
* Fixed precheck failure bare except. Catching Exception
2019-07-12 15:50:30 +05:30
Gonéri Le Bouder
31baab85f9 ansible-test: vcenter through a HTTP proxy
Give the ansible-test user the ability to target a lab behind a HTTP proxy.
2019-07-12 10:56:36 +02:00
Abhijeet Kasurde
617972499f
VMware: Correct network_exists_by_name API call (#59006)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-12 11:22:06 +05:30
Ganesh Nalawade
f09bd91ad0
Add junos_interfaces resource module (#58871)
* Add junos_interfaces resource module [junos_interfaces]

*  Add new resource module junos_interfaces.
*  Targets model https://github.com/ansible-network/resource_module_models/pull/8
*  Depcreate junos_interface module

* Fix CI failures

* Fix integration test failures

* Fix CI failures

* Fix review comments
2019-07-12 09:05:48 +05:30
Matt Clay
6327a6114b Add ansible-test units --num-workers option. 2019-07-11 17:15:16 -07:00
Matt Clay
43c3b9fb0e Simplify ansible-test cwd setup. 2019-07-11 17:15:16 -07:00
Chris Archibald
9cb78b4826 New options to volume (#58531)
* updates to volume

* fix ansibot

* fix issues

* Revert "fix issues"

This reverts commit 54988709ae.
2019-07-11 17:42:00 -04:00
Matt Clay
bc3a599678 Fix invalid type hints in ansible-test. 2019-07-11 14:25:57 -07:00
Jordan Borean
bcc23e70e6
win_dns_client - fix bug in devel and added tests (#58971)
* win_dns_client - fix bug in devel and added tests

* Fix sanity issue
2019-07-12 05:36:12 +10:00
Chris Archibald
59feb63d19 Add uid, and gid to volume clone (#57371)
* and new features

* fix issues

* fix issues

* fix issues

* add unit tests
2019-07-11 13:57:36 -04:00
Brian Coca
a7b14ec1be
Fix strat inv (#58982)
* Fix strategy functions that update inventory

* added tests
2019-07-11 13:49:49 -04:00
Matt Clay
86ad4c99ba Reorganize util code in ansible-test.
Code in util.py that depends on CommonConfig is now in util_common.py.
2019-07-11 08:54:13 -07:00
Chris Archibald
6e3d54ae81 Set vscan_fileop_profile for na_ontap_cifs (#57373)
* new features

* update unit tests
2019-07-11 10:49:35 -04:00
Sam Doran
36da7e462a
Better fix for invalid data in 'options' field (#58353) 2019-07-11 10:19:18 -04:00
pratikgadiya12
e8f4ebb22c nmcli: Argument vlanid (int) is changed internally to string (#58963)
* Argument vlanid (int) is changed internally to string
* Modified test case to check vlan id

Fixes: #58949
2019-07-11 18:02:02 +05:30
Toshio Kuratomi
33d2728879 Rename python files in hacking/ directory to have .py suffix
ansible-test only passes files which have the .py suffix for sanity
tests on python files.  This change will allow sanity tests to run on
the Python files in hacking/

* Rename test-module to test-module.py
* Symlink test-module for backwards compat since end users may be using
  test-module
* Fix test-module sanity errors that are now triggered
* Rename ansible_profile to ansible-profile.py
* Rename build-ansible
2019-07-10 22:17:35 -07:00
Toshio Kuratomi
146a7f8ff6 Split the metaclass == type and from future boilerplate code.
The metaclass boilerplate is safe to apply en masse.  The future import
boilerplate needs code to be inspected to be sure that there aren't any
py2isms that need to be fixed.  Split these two checks so that we can
fix them independently

Be explicit about which files are grandfathered so we can fix them up one by one
2019-07-10 22:17:35 -07:00
Gonéri Le Bouder
909f7f2ce5 vmware_dvswitch_nioc: fix the integration test (#58920)
Correct the name of the vcenter variables.
2019-07-11 08:06:27 +05:30
Chris Archibald
ee24e6c5be Qtree was not idempotent (#58596)
* fixes

* fixes
2019-07-10 20:18:17 -04:00
flowerysong
c513c1e2d3 aws_s3: Improve ETag handling (#46332)
* cosmetic: Remove useless call to ec2_argument_spec()

* aws_s3: Improve ETag handling

* Extract ETag calculation into a utility function for reuse by
  aws_s3_sync.
* Reduce code duplication in put/get by restructuring the logic
* Only calculate ETag when overwrite == different
* Fail gracefully when overwrite == different and MD5 isn't available
  (e.g. due to FIPS-140-2).

* aws_s3: clean up integration tests

Clean up tests, add tests for overwrite settings in both directions.
2019-07-10 14:05:12 -07:00
Pilou
b58c64e3b1 consul_session: ensure empty result is handled (#58694) 2019-07-10 15:15:18 -04:00
anshulbehl
00d7aed56b
Changing LBName used by same task inside azure_rm_loadbalancer (#58936)
fixes #58933
2019-07-10 14:20:35 -04:00
Matt Clay
c79afb1cba Move ansible-test unit coverage code into plugin. 2019-07-10 10:09:46 -07:00
Matt Clay
520af5cb47 Sanity test fixes for future collections support. 2019-07-10 07:03:48 -07:00
Paul Belanger
9e1b19e364 Fix nxos_install_os test cases typo (#58825)
This should be ansible_connection, not connection_type. We can also
update local testing logic.

Remove nxos_install_os/tasks/network_local.yaml as it is nolonger used.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-07-10 19:11:53 +05:30
Sam Doran
c68bf5997f
Add version 2.13 to the removed_in list (#58924) 2019-07-10 09:38:31 -04:00
Pilou
ef1cf2d2e8 consul_session: ensure scheme parameter is used (#58692)
* Ensure an error occurs when unknown scheme is used
* consul_session: don't ignore 'scheme' parameter
2019-07-10 09:16:17 -04:00
Martin Krizek
7346b699ee
Use templated loop_var/index_var when looping include_* (#58866)
Fixes #58820
2019-07-10 13:49:24 +02:00
Gonéri Le Bouder
ad49057330 fix the vm name 2019-07-10 12:19:55 +02:00
Tomorrow9
fcc0b71c74 add new module vmware_guest_sendkey 2019-07-10 12:19:55 +02:00
Andrey Klychkov
41b7b1c6e9 jboss module: actualize doc formatting (#58913)
* jboss module: actualize doc formatting, remove exceptions from ignore.txt
2019-07-10 15:38:53 +05:30
rajaspachipulusu17
753f998262 Pluribus Networks ipv6 security reguard vlan module with UT (#58319) 2019-07-10 14:39:53 +05:30
Andrey Klychkov
63b606ee94 postgresql_user: add integration tests (#58864)
* postgresql_user: add separate integration tests

* postgresql_user: add separate integration tests, add always block

* postgresql_user: add separate integration tests, include -> import_tasks, jinja checks

* postgresql_user: add separate integration tests, fix formatting

* postgresql_user: add separate integration tests, fix formatting

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-07-10 10:59:28 +02:00
Chris Archibald
8731fc7a86 returning invalid security (#58595) 2019-07-10 00:40:31 -04:00
Matt Clay
9e67953b2e
Fix collection loader and add unit tests. (#58701)
* Use `compile` before `eval` in collection loader.

This fixes two issues:

1. File names are available when tracing execution, such as with code coverage.
2. Future statements are not inherited from the collection loader.

* Add unit tests for collection loading.

These tests verify several things:

1. That unit tests can import code from collections when the collection loader is installed.
2. That tracing reports the correct file and line numbers (to support code coverage).
3. That collection code does not inherit __future__ statements from the collection loader.

* Update unit test handling of the collection loader.

Since the collection loader is installed simply by importing ansible.plugins.loader,
we may already have a collection loader installed when the test runs. This occurs if
any other tests are collected which use that import during collection. Until that code
is moved into an initialization function to avoid loading during import, the unit tests
will need to replace any existing collection loaders so that they reflect the desired
configuration.

* Insert into sys.modules before calling exec.

This is a requirement of PEP 302.

It will prevent recursion errors when importing the current module or using a relative import.

* Use the correct value for __package__ in modules.

This allows using relative imports in collections.

* Add warning about modifying code for trace test.

* Add test for relative import in collection.

* Add __init__.py to collection to satisfy pylint.

The relative-beyond-top-level rule in pylint may not be appropriate for collections.
However, until that rule is disabled for collections this will keep tests passing.
2019-07-09 17:31:33 -07:00
Matt Clay
1e1463401d
Prepare ansible-test for supporting collections. (#58886)
This is a small but incomplete set of the initial changes for supporting testing of collections with ansible-test.
2019-07-09 17:31:04 -07:00