Commit graph

9876 commits

Author SHA1 Message Date
Matt Clay
415409c6e3 Rename azure_rm_virtualmachineimage_facts test. 2020-02-07 21:30:20 -08:00
Matt Clay
64567cf4f6 Split tasks for prepare_http_tests.
This allows setup of a platform to run even when modules for another platform are not present.
2020-02-07 21:30:01 -08:00
Matt Clay
80561ccef0 Improve sanity test handling in CI after migration. 2020-02-07 21:29:39 -08:00
Matt Clay
7724fb8f33 Split handler tasks for setup_remote_tmp_dir.
This allows a platform handler to run even when the module required for the other platform is not present.
2020-02-07 21:29:20 -08:00
Matt Clay
a0242b2173 Improve unit test handling in CI after migration. (#67217)
* Improve unit test handling in CI after migration.

* Fix undefined var in bash 4.3 and earlier.

See https://git.savannah.gnu.org/cgit/bash.git/tree/CHANGES?id=3ba697465bc74fab513a26dea700cc82e9f4724e#n878
2020-02-07 21:28:46 -08:00
Felix Fontein
f725dce936
Clean up FILE_COMMON_ARGUMENTS (#66389)
* Clean up FILE_COMMON_ARGUMENTS.

* postgresql_pg_hba doesn't declare the backup option.

* uri doesn't declare the remote_src option.

* Add documentation.

* maven_artifact seems to use directory_mode, which it doesn't declare.

* Update changelogs/fragments/66389-file-common-arguments.yml
Update docs/docsite/rst/porting_guides/porting_guide_2.10.rst

ci_complete

Co-Authored-By: Jill R <4121322+jillr@users.noreply.github.com>
2020-02-07 18:56:01 -05:00
Gonéri Le Bouder
802cc60242 vmware_guest_tools_wait: add timeout parameter
Add a new `timeout` parameter to `vmware_guest_tools_wait`.

Also, a functional test to cover the module.
2020-02-07 17:48:29 -05:00
Paul Belanger
4863efd0df
Remove yaml stdout_callback plugin from network-integration tests (#67203)
With the move to collections, yaml is no longer in ansible base. Switch
back to default stdout.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2020-02-07 13:24:42 -05:00
Gonéri Le Bouder
4a1115785f vmware_guest_network/test: disable the test
The test fails in the CI with a timeout of vmware_guest_tools_wait. It's
still unclear if this comes from:

- the ESXi environment
- the VM configuration, e.g: the amount of the RAM
- the ISO image itself

Ideally, we should have a light VM with the vmware-tools.
2020-02-06 19:59:23 -05:00
Paul Belanger
bf4dac10fa
Revert "WIP: testing ansible-base (#67149)" (#67175)
I didn't properly update the commit message via github UI. Revert, to
open a new PR.

This reverts commit 2794142eb3.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2020-02-06 14:26:10 -05:00
Paul Belanger
2794142eb3
WIP: testing ansible-base (#67149)
Currently, yaml stdout_callback is not in base.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2020-02-06 13:40:02 -05:00
Todd Lewis
640bf31f87
user - allow 'groups', 'append' with 'local' (#62134) 2020-02-06 12:32:44 -05:00
Paul Belanger
c3635532d3
Revert "Allow httpapi for EOS resource modules (#66871)" (#67131)
This looks to be causing issues for our new ansible.netcommon
collection. Revert for now, until we can properly address.

This reverts commit 53c7f8cbde.
2020-02-06 10:20:08 -05:00
Andrew Klychkov
637eed5a5c
postgresql modules: fix sanity issues (#67046)
* postgresql modules: fix sanity issues

* add changelog

* fix changelog
2020-02-06 16:05:42 +01:00
Matt Clay
5e68bb3d93
Add code coverage target analysis to ansible-test. (#67141)
* Refactor coverage file enumeration.
* Relocate sanitize_filename function.
* Support sets when writing JSON files.
* Generalize setting of info_stderr mode.
* Split out coverage path checking.
* Split out collection regex logic.
* Improve sanitize_filename type hints and docs.
* Clean up coverage erase command.
* Fix docs and type hints for initialize_coverage.
* Update type hints on CoverageConfig.
* Split out logic for finding modules.
* Split out arc enumeration.
* Split out powershell coverage enumeration.
* Raise verbosity level of empty coverage warnings.
* Add code coverage target analysis to ansible-test.
2020-02-05 22:16:15 -08:00
Matt Martz
0e46af17a5
Nuke all removed_module stubs (#67139)
* Nuke all removed_module stubs

* Remove ignores and botmeta entry
2020-02-05 16:29:27 -06:00
Ruediger Pluem
80c4b86abe
group - correctly determine if a local group exists. (#59772)
Fixes #58619
Add integration test
2020-02-05 12:34:41 -05:00
Markus Bergholz
822077fefd
Asg mixed instance types (#67045)
* merge from origin pr 55067

* handle update existing asg with mixed-instance-policy

* fix documentation and append output

* update output documentation

* update documentation version added

* add integration test for mixed instance policy using launch template

* add changelog fragment

* Update lib/ansible/modules/cloud/amazon/ec2_asg.py

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* Update lib/ansible/modules/cloud/amazon/ec2_asg.py

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* Update lib/ansible/modules/cloud/amazon/ec2_asg.py

Co-Authored-By: Jill R <4121322+jillr@users.noreply.github.com>

* add warning about botocore version and add expand example documentation

* Update changelogs/fragments/67045-ec2_asg_mixed_instance_policy.yml

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* Update lib/ansible/modules/cloud/amazon/ec2_asg.py

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* Update lib/ansible/modules/cloud/amazon/ec2_asg.py

Co-Authored-By: Mark Chappell <mchappel@redhat.com>

* remove useless line

Co-authored-by: Yi-Tse Hong <yitse.hong@soocii.me>
Co-authored-by: Mark Chappell <mchappel@redhat.com>
Co-authored-by: Jill R <4121322+jillr@users.noreply.github.com>
2020-02-05 09:04:15 +01:00
Jordan Borean
78470c43c2
Removed deprecated items in Windows modules (#67105) 2020-02-05 09:02:04 +10:00
GomathiselviS
4ac89b8ac7
Added Fix - Allow nxos_l2_interfaces to append the allowed vlans list (#66517)
* Added Integration tests

* Corrected lint errors

* Added fix for bug # 54400

* Revert "Added fix for bug # 54400"

This reverts commit bf42db4269.

* Revert "Adding files for RM static_routes"

This reverts commit dafdd92d43.

* Revert "Added Integration tests"

This reverts commit 129dc87682.

* Bug Fix 65332

* Added testcase for #66517

* Removed unnecessary commit

* fixing conflicts

* fixing conflicts

* addressed mikeweibe's comments

* Corrected lint errors

* Added idempotent tc for add vlans

* Added replaced and overridded tcs for trunk vlan add
2020-02-04 15:14:04 -05:00
Matt Clay
f4a80bb600
Code cleanup and refactoring in ansible-test. (#67063)
* Code cleanup in ansible-test.
* Split out encoding functions.
* Consoldate loading of JSON files.
* Split out disk IO functions.
* Simplify file access.
* Add functions for opening files.
* Replace open calls with appropriate functions.
* Expose more types from typing module.
* Support writing compact JSON.
* Add verbosity argument to display.warning.
* Add changelog entry.
* Update files overlooked during rebase.
* Use `io.open` instead of `open`.
* Fix file opening for imp.load_module.
* Remove use of `r+` mode to access files.
* Add missing import.
* Fix httptester on Python 2.x.
* Clarify changelog fragment.
* Consolidate imports. Remove extra newlines.
* Fix indirect imports.
2020-02-04 11:21:53 -08:00
Erwin Oegema
3b32f95fb3
user - warn if "append" is set but not "groups" (#65795)
This fixes people unknowingly changing the primary group rather than adding a secondary group.

* Add integration test
2020-02-04 12:35:05 -05:00
Felix Fontein
fe454d27a1
Fix removed_in_version to support honor suboptions (#66918)
* Add unit tests.
* Fix reporting for removed_in_version.
* Add changelog.
2020-02-04 10:14:55 -05:00
Brian Scholer
fc7980af9a
Fix UNC path support in the powershell shell plugin (#66604)
* Fix UNC path joining in the powershell shell plugin, add test

* Remove testy bits and a redundant line

* Fix style nits

* Update to use os.ntpath

* Add changelog for #66604
2020-02-04 16:34:11 +10:00
Jordan Borean
3ada0b2f65
win_uri: fix up tests (#67064) 2020-02-04 09:57:44 +10:00
Felix Fontein
23b2bb4f4d
docker_container: change behavior for one-port container ranges to be same as docker CLI (#66382)
* Adjust docker_container behavior for one-port container ranges to be similar to docker CLI.

* Add changelog.

* Add documented examples for ports:.
2020-02-03 23:27:40 +01:00
Andrew Klychkov
21ae66db2e
postgresql_user_obj_stat_info: new module (#66892)
* postgresql_user_obj_stat_info: new module

* fix sanity

* add schema parameter

* add CI tests

* add RETURN section

* add example with schema

* fix CI

* fix example comments

* skip aix

* fixes part 1

* fixes part 2

* fix CI

* fix CI

* fix doc formatting
2020-02-03 23:06:31 +01:00
Nathaniel Case
53c7f8cbde
Allow httpapi for EOS resource modules (#66871)
* Redo tests to be transport agnostic

cli -> eos config

* Redirect connection for httpapi

* Fix tests

* Handle missing platform imports
2020-02-03 08:04:08 -05:00
Felix Fontein
8f10db8552
Do fail instead of regenerate for password protected and invalid keys. (#65638) 2020-02-02 07:54:28 -05:00
Felix Fontein
d6fb9da8ed
openssl_* modules: allow direct input and output for some files (#65400)
* Allow to return generated object.

* Use slurp module instead of file lookup + b64encode.

* Rename return_xxx_content -> return_content.
2020-02-02 12:42:52 +01:00
Andrew Klychkov
3baea92ec9
Bugfix of 54239: mysql_variables not supporting variables name with dot (#66806)
* Bugfix of 54239: mysql_variables not supporting variables name with dot

* add changelog

* add CI tests
2020-02-01 12:39:52 +05:30
Toshio Kuratomi
f5e194cbcd
Move random_mac into its own file (#67000)
* Move random_mac into its own file

This is likely to be the only filter which is not included in
ansible-base.  So it needs to be in its own file.
2020-01-31 14:33:16 -08:00
Nathaniel Case
3dbc03d58a
Try to load action plugin from the same collection as the module (#66701)
* Try to load network action plugin from the same collection as the module

* Alter tests to match

Just make sure the action plugin is as qualified as the module it is paired with
2020-01-31 12:49:37 -05:00
Andrew Klychkov
54520c4685
mysql_user: priv parameter can also be a dictionary (#66801)
* mysql_user: add priv_dict parameter

* add changelog

* priv can be string or dictionary

* fix example
2020-01-31 16:32:31 +01:00
Mark Chappell
813091cf94
Migrate ec2_vol_info to AnsibleAWSModule (#66979)
* Migrate ec2_vol_info to AnsibleAWSModule

* Enable ec2_vol_info tests

* Add changelog

* Update lib/ansible/modules/cloud/amazon/ec2_vol_info.py

Co-Authored-By: Sloane Hertel <shertel@redhat.com>
2020-01-31 09:55:10 -05:00
Felix Fontein
f1a30164c5
Fix 'container_default_behavior: no_defaults'. (#66601) 2020-01-31 10:45:59 +01:00
Jordan Borean
2a9ec8975f
win_unzip - LiteralPath fix (#66972)
* win_unzip - LiteralPath fix

* Fix up Python sanity issues
2020-01-31 12:59:46 +10:00
Matt Clay
d584584474 Reorganize ansible-test coverage code.
This change moves all code for the `ansible-test coverage` command into the `coverage` directory.

Each subcommand is split into a separate file.

Only minor spelling changes were made aside from code relocation.
2020-01-30 14:41:21 -08:00
Gonéri Le Bouder
2ea159eefd vmware_cluster_facts does not set hosts key
Since https://github.com/ansible/ansible/pull/61006 `vmware_cluster_info`
exposes a new key called `hosts`. The deprecated module
`vmware_cluster_facts` keeps the previous behaviour, and so we must keep
its test-suite unchanged.
2020-01-30 16:45:02 -05:00
Mark Chappell
5d4d9d40af
ansible-test - Add 'get' to the list of bad choices for state (#66921)
* ansible-test - Add 'get' to the list of bad choices for state

* Changelog fragment
2020-01-30 22:38:47 +01:00
Jordan Borean
811c54a7a4
validate-modules - support deprecated_aliases (#66965)
* validate-modules - support deprecated_aliases

* Removed changelog fragment
2020-01-31 07:35:16 +10:00
Matt Clay
4452f506a8
Split up filter integration tests. (#66962)
* Split out json_query filter tests.
* Split out urlsplit filter tests.
* Split out ipaddr filter tests.
* Split out urls filter tests.
* Split out mathstuff filter tests.
* Clean up core filter tests.
2020-01-30 12:49:54 -08:00
Sam Doran
5112feeace
Make get_bin_path() always raise an exception (#56813)
This makes it behave in a more idiomatic way

* Fix bug in Darwin facts for free memory
    If the vm_stat command is not found, fact gathering would fail with an unhelpful 
    error message. Handle this gracefully and return a default value for free memory.

* Add unit tests
2020-01-30 12:54:25 -05:00
Felix Fontein
5fdc9a61f0
docker_container: pass volumes only for anonymous volumes (#66600)
* Simplify code.

* Only pass anonymous volumes.

* Add changelog and update porting guide.

* Add integration tests.
2020-01-30 14:08:25 +01:00
Matt Clay
49d8d5ae33 Fix ansible-test tar format handling. 2020-01-29 20:31:54 -08:00
Yanis Guenane
4fd2dce7f3
Testing: Add support for AIX platform (#65802) 2020-01-29 15:56:51 -08:00
Sviatoslav Sydorenko
eec6afd116 Explicitly set junit_family=xunit1 @ pytest config
This change hides the deprecation warning and protects from
failures in pytest==6.0.0

Ref:
* https://github.com/ansible/ansible/pull/66445#discussion_r372530176

Co-Authored-By: Matt Clay <matt@mystile.com>
2020-01-30 00:05:02 +01:00
Matt Clay
479845a05c
Expand Shippable test matrix. (#66912)
* Add 2 CI groups for AWS.
* Add 1 CI group for vmware.
* Add 1 CI group for CS.
* Add 1 CI group for posix.
2020-01-29 14:43:27 -08:00
Rick Elrod
e2a57414f4 Remove with statement for pytest-mock unit tests
As per:
https://github.com/pytest-dev/pytest-mock#note-about-usage-as-context-manager
pytest-mock is not meant to be used within a `with` context or as a
decorator. Instead, pytest-mock will automatically unpatch the mocked
methods when each test is complete.

In newer pytest-mock, this use actually throws an exception and causes
the tests to fail.

This hasn't been hit in Ansible's CI yet, because the docker image
that the tests run in uses an older version of pytest-mock. However,
there is no constraint on the upper bound of pytest-mock in
test/lib/ansible_test/_data/requirements/constraints.txt which means
that when running the tests locally, outside of that docker image, the
tests never pass.

This patch removes the `with` context in each such case.

Signed-off-by: Rick Elrod <rick@elrod.me>
2020-01-29 13:29:40 -08:00
Mark Chappell
1156962cde
Forbid state=(list|info) in modules via ansible-test sanity check
PR #66898

This change introduces a new sanity check with code
`parameter-state-invalid-choice` in the `ansible-test sanity`
validator. It enforces modules not to support `list` or `info`
as their `state`.

Co-Authored-By: Sviatoslav Sydorenko <webknjaz@redhat.com>
Co-Authored-By: Felix Fontein <felix@fontein.de>
2020-01-29 21:06:36 +01:00