Commit graph

322 commits

Author SHA1 Message Date
Rick Elrod
cace616aab
Filter BLACKLIST_EXTS in PluginLoader (#69029)
Change:
Rather than hardcoding .pyo and .pyc, filter on all BLACKLIST_EXTS in
the non-legacy logic of PluginLoader (_find_fq_plugin). The two harcoded
extensions are part of BLACKLIST_EXTS already and this simply adds the
rest of the blacklisted extensions to the check.

In addition, check .endswith() instead of an exact match of the suffix,
like everywhere else that uses BLACKLIST_EXTS. This allows for
blacklisting, for example, emacs's backup files which can appear after
any extension, leading to things like `foo.py~`.

Test Plan:
Ran `ansible-playbook` against a collection where a `foo.py~` module was
getting executed instead of `foo.py` which also appeared in the same
directory. `foo.py~` is no longer executed.

Tickets:
Fixes #22268
Refs #27235

Signed-off-by: Rick Elrod <rick@elrod.me>
2020-04-22 17:20:12 -05:00
Martin Krizek
acdc9eb76d
native types: literal_eval all the things (#68938)
With https://github.com/pallets/jinja/pull/1190 merged our short-circuit
is no longer valid (has it ever been?) as now data like ' True ' may go
through our ansible_native_concat function as opposed to going through
intermediate call to Jinja2's native_concat before. Now we need to always
send data through literal_eval to ensure native types are returned.
2020-04-17 14:59:52 +02:00
Jordan Borean
79fff7da69
Expose to_<str> as a public function (#68965)
* Expose to_<str> as a public function

* Fix sanity checks

* Move docstring to start of util
2020-04-17 07:54:00 +10:00
Jordan Borean
702949e64c
windows - fix up env var quoting for unicode single quotes (#68968)
* windows - fix up env var quoting for unicode single quotes

* Add sanity ignore check for smart quotes
2020-04-16 20:24:23 +10:00
Matt Martz
40d9650f20
Migrate apt_repo to community.general. Fixes #68637 (#68641) 2020-04-02 11:06:12 -05:00
Matt Clay
0fb5593abf
Add initial ansible-test tests for collections. (#68533) 2020-03-29 09:04:27 -07:00
Sandra McCann
8042d226e4
fix make webdocs warnings (#68411) 2020-03-25 13:13:56 -05:00
Brian Coca
a9d2ceafe4
prevent ansible_facts injection (#68431)
- also only replace when needed
 - switched from replace to index
 - added test to verify bogus_facts are not accepted

CVE-2020-10684
2020-03-24 15:46:56 -04:00
Matt Clay
5a1b59adf9 Rename tests (#68356)
* Rename `tests` test to match plugin type.

* Rename `test_infra` test to avoid confusion.

This test target is not a test for test plugins.

* Rename `vars_prompt` test to avoid confusion.

* Update sanity ignores.
2020-03-23 11:14:21 -05:00
Matt Clay
815a36d7a9 Fix sanity test ignores. 2020-03-23 11:14:21 -05:00
Alicia Cozine
69543b47c9 fix last 7 docs errors on post-migration test runs (#68115)
* address toc-tree-glob-pattern-no-match errors

* address Include-file-not-found error

* address 2.10 porting guide errors, add warning to page

* updates individual plugin type pages

* Add ignores.

Co-authored-by: Alicia Cozine <acozine@users.noreply.github.com>
Co-authored-by: Matt Clay <matt@mystile.com>
2020-03-23 11:14:21 -05:00
Ansible Core Team
c788ee69d9 Migrated to wti.remote 2020-03-23 11:14:21 -05:00
Ansible Core Team
cc2feea51b Migrated to vyos.vyos 2020-03-23 11:14:21 -05:00
Ansible Core Team
40714dfca9 Migrated to openvswitch.openvswitch 2020-03-23 11:14:21 -05:00
Ansible Core Team
ab914b9ab6 Migrated to azure.azcollection 2020-03-23 11:14:21 -05:00
Ansible Core Team
fe0f4750e1 Migrated to purestorage.flashblade 2020-03-23 11:14:21 -05:00
Ansible Core Team
d9920706d7 Migrated to purestorage.flasharray 2020-03-23 11:14:21 -05:00
Ansible Core Team
7449ec1546 Migrated to google.cloud 2020-03-23 11:14:21 -05:00
Ansible Core Team
fb696bf66b Migrated to cyberark.bizdev 2020-03-23 11:14:21 -05:00
Ansible Core Team
b82d084e90 Migrated to skydive.skydive 2020-03-23 11:14:21 -05:00
Ansible Core Team
dd5a8dec21 Migrated to hetzner.hcloud 2020-03-23 11:14:21 -05:00
Ansible Core Team
36a545553e Migrated to dellemc_networking.os6 2020-03-23 11:14:21 -05:00
Ansible Core Team
bc40fe0b6f Migrated to dellemc_networking.os9 2020-03-23 11:14:21 -05:00
Ansible Core Team
0b633b3703 Migrated to dellemc_networking.os10 2020-03-23 11:14:21 -05:00
Ansible Core Team
d1f86d7151 Migrated to ovirt.ovirt 2020-03-23 11:14:21 -05:00
Ansible Core Team
02541a15b2 Migrated to awx.awx 2020-03-23 11:14:21 -05:00
Ansible Core Team
35063de590 Migrated to junipernetworks.junos 2020-03-23 11:14:21 -05:00
Ansible Core Team
8ee0187388 Migrated to openstack.cloud 2020-03-23 11:14:21 -05:00
Ansible Core Team
6ce86295c0 Migrated to f5networks.f5_modules 2020-03-23 11:14:21 -05:00
Ansible Core Team
675129ae19 Migrated to cisco.ucs 2020-03-23 11:14:21 -05:00
Ansible Core Team
3149db0869 Migrated to cisco.nxos 2020-03-23 11:14:21 -05:00
Ansible Core Team
ae8fb5e371 Migrated to cisco.mso 2020-03-23 11:14:21 -05:00
Ansible Core Team
8a3f3e41f8 Migrated to cisco.meraki 2020-03-23 11:14:21 -05:00
Ansible Core Team
5aa37733c3 Migrated to cisco.iosxr 2020-03-23 11:14:21 -05:00
Ansible Core Team
7e04b5ba8b Migrated to cisco.ios 2020-03-23 11:14:21 -05:00
Ansible Core Team
8a2e2e8af2 Migrated to cisco.intersight 2020-03-23 11:14:21 -05:00
Ansible Core Team
ab5a3b4305 Migrated to cisco.asa 2020-03-23 11:14:21 -05:00
Ansible Core Team
3f1cea89fb Migrated to cisco.aci 2020-03-23 11:14:21 -05:00
Ansible Core Team
14b0ab63ac Migrated to arista.eos 2020-03-23 11:14:21 -05:00
Ansible Core Team
6da1ec1d8c Migrated to check_point.mgmt 2020-03-23 11:14:21 -05:00
Ansible Core Team
f0cf2c159b Migrated to netapp.ontap 2020-03-23 11:14:21 -05:00
Ansible Core Team
cae9d633b0 Migrated to netapp.elementsw 2020-03-23 11:14:21 -05:00
Ansible Core Team
0a9205b7c0 Migrated to netapp.aws 2020-03-23 11:14:21 -05:00
Ansible Core Team
bdd82adf61 Migrated to netbox.netbox 2020-03-23 11:14:21 -05:00
Ansible Core Team
09d8d46983 Migrated to fortinet.fortios 2020-03-23 11:14:21 -05:00
Ansible Core Team
48d4e9370e Migrated to ansible.windows 2020-03-23 11:14:21 -05:00
Ansible Core Team
829eb0f1d1 Migrated to ansible.posix 2020-03-23 11:14:21 -05:00
Ansible Core Team
9a7a574ffc Migrated to ansible.netcommon 2020-03-23 11:14:21 -05:00
Ansible Core Team
6d910034a0 Migrated to ansible.amazon 2020-03-23 11:14:21 -05:00
Ansible Core Team
8f7e9f73ce Migrated to servicenow.servicenow 2020-03-23 11:14:21 -05:00
Ansible Core Team
bb3494356a Migrated to community.windows 2020-03-23 11:14:21 -05:00
Ansible Core Team
40218535ee Migrated to community.vmware 2020-03-23 11:14:21 -05:00
Ansible Core Team
f8c4936c10 Migrated to community.vmware_rest 2020-03-23 11:14:21 -05:00
Ansible Core Team
46b865c7d6 Migrated to community.mongo 2020-03-23 11:14:21 -05:00
Ansible Core Team
0ed8af9021 Migrated to community.crypto 2020-03-23 11:14:21 -05:00
Ansible Core Team
fb6bc5058a Migrated to community.kubernetes 2020-03-23 11:14:21 -05:00
Ansible Core Team
43f47d553e Migrated to community.grafana 2020-03-23 11:14:21 -05:00
Ansible Core Team
4e488d8435 Migrated to community.general 2020-03-23 11:14:21 -05:00
Ansible Core Team
58e8a91f4d Migrated to community.amazon 2020-03-23 11:14:21 -05:00
Ansible Core Team
32bf1b8115 Migrated to frr.frr 2020-03-23 11:14:21 -05:00
Ansible Core Team
38c652712c Migrated to containers.podman 2020-03-23 11:14:21 -05:00
Matt Clay
2c0be65f44
Relocate netbox module_utils unit tests. (#68056)
* Relocate netbox module_utils unit tests.

This puts them where migration expects them.

* Update sanity ignores.
2020-03-05 16:01:55 -08:00
Matt Clay
4fb7e62003
Include more test support plugins. (#68015)
* Include more test support plugins.

Also add missing module_utils `__init__.py` files.

* Update sanity ignores.
2020-03-04 12:20:02 -08:00
Matt Clay
8339704831
Create a dedicated windows-minimal test target. (#67987)
* Create a dedicated windows-minimal test target.

The windows-minimal target is a copy of the win_ping test, taking the place of that test as the windows minimal test run on multiple python versions.

It includes a private copy of the win_ping module so it will work after migration.

This will keep tests passing during the migration prep process.

* Update sanity ignores.
2020-03-03 18:36:37 -08:00
Matt Clay
7c493577ba
Unit test cleanup to assist with migration. (#67920)
* Move linode unit tests to match module layout.

* Fix location of netapp module_utils unit tests.

* Update sanity ignores.
2020-03-02 10:40:34 -08:00
Martin Nečas
4ef7bd4c79
ovirt: update botmeta deprecated (#67826)
* ovirt: update botmeta deprecated

* correct deprecate option

* remove duplication

* add removed_module

* add removed_module to external_provider

* add imports and metaclass

* update misc ovirt

* update sanity tests to have correct misc ovirt name

Signed-off-by: mnecas <necas.marty@gmail.com>

* remove unnecessary sanity ignore
2020-03-02 10:18:35 +00:00
Jordan Borean
97d2d4512f
Separated ps module_util test targets, added WebRequest tests (#67914)
* Separated ps module_util test targets, added WebRequest tests

* Simplify header test
2020-03-02 16:12:08 +10:00
Jordan Borean
c66ee7e994
Split C# module utils to their own test target (#67910)
* Split C# module utils to their own test target

* Fix up outstanding sanity ignores
2020-03-02 15:16:31 +10:00
Matt Clay
7c8b046b5f
Fourth batch of incidental integration tests. (#67873)
* Copy in incidental posix tests.

* Update incidental test aliases.

* Update target names.

* Add support plugins.

* Fix paths.

* Update ignores.

* Update integration-aliases sanity test.

* Add incidental tests to CI.
2020-02-28 20:37:50 -08:00
Matt Clay
04666c9fa1
Clean up unit tests to assist with migration. (#67875)
* Split out cache plugin unit tests.

* Rename unit tests to match code under test.

* Relocate unit test code to match code under test.

* Another rename.

* Update sanity ignores.
2020-02-28 20:29:41 -08:00
Abhijeet Kasurde
b6c2056ea2
mongodb_user: fix doc formatting (#67763)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-02-28 09:04:27 +05:30
Abhijeet Kasurde
0cd22abe8c
mongodb: Fix documentation (#67806)
* Added correct datatypes of parameter
* Fixed doc formatting

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-02-28 08:51:06 +05:30
Matt Clay
f735fd672a
Third batch of incidental integration tests. (#67830)
* Copy in incidental windows tests.

* Update incidental test aliases.

* Add support plugins.

* Update target references.

* Update sanity ignores.

* Update integration-aliases test.

* Add to CI.
2020-02-27 16:05:47 -08:00
Abhijeet Kasurde
ed306c7991
influxdb: Fix documentation (#67807)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-02-27 13:43:16 +01:00
Andrew Klychkov
10feb24870
mongodb_shard: fix doc formatting (#67750) 2020-02-27 08:04:12 +05:30
Matt Clay
b68e55da26
Remove test/legacy/ directory. (#67786)
* Remove `test/legacy/` directory.

* Remove references to `test/legacy/` directory.

* Update the remaining valid legacy reference.

* Remove outdated legacy references.
2020-02-26 11:48:30 -08:00
Matt Clay
e3591223a0
Second batch of incidental integration tests. (#67765)
* Update incidental test aliases.

* Rewrite target references for renamed targets.

* Add incidental tests to CI.

* Update sanity tests for incidental cloud tests.

* Initial copy of incidental tests.

* Copy contrib files into test.

* Update paths in test.

* Add support plugins.

* Update plugin to work around missing deps.

* Update sanity ignores.

* Fix matrix entries.

* Remove debug echo.
2020-02-25 23:18:50 -08:00
GomathiselviS
726d6455d8
eos static_routes module added (#65480)
* Adding files for RM static_routes

* Added Integration tests

* Added Unit testcases

* Addressed review comments

* corrected lint errors

* corrected documentation errors

* Lint errors

* corrected test/sanity

* corrected documentation for deprecation

* corrected case sensitivity

* Again Documentation eroor

* Lint errors again

* corrected deprecated module in ignoretxt

* added new gethered,rendered,parsed state checks to unit test

* New code broke the old flow-fixed

* Lint errs

* Added check for running_config

* Add rtt testcase

* Fixed unit tcs

* lint errors

* lint errors

* Modified replaced operation behavior

* updated documentation and tests for delete opration

* fixed shippable errors

* review comments and flake8 error fix

* syntax errors fixed
2020-02-25 07:50:27 -05:00
Matt Clay
4e571248a9
First batch of incidental integration tests. (#67717)
* Initial copy of incidental network tests.

* Update incidental test aliases.

* Add incidental tests to CI.

* Rewrite module references in tests.

This should not be necessary once module redirection is supported.

* Rewrite target references for renamed targets.

* Add support collections for incidental tests.

* Add ignores for test support code.

* Remove echo used for debugging.
2020-02-24 17:31:14 -08:00
Xu Yuandong
dbaa421f9d
Some cloudengine modules miss "import __future__" and "mateclass", update to add them. (#67634)
* update doc missing future & mateclass.

* update ignore.txt.

* add a changelog.

* update changelog.
2020-02-22 17:35:18 +01:00
Xu Yuandong
347e19178d
Some cloudengine modules miss "import __future__" and "mateclass", update to add them. (#67635)
* update doc, missing future & metaclass type.

* update ignore.txt

* add a changelog.

* update changelog.

* rename changelog.

* update changelog.
2020-02-21 11:54:45 +01:00
Felix Fontein
4373863f25
Module validation: sanity check mutually_exclusive, required_if, required_xxx ... (#66961)
* required_if checks should have three or four parts.

* Validate mutually_exclusive, required_together, required_one_of, required_if and required_by.

* Simplify code.

* Improve messages.

* Add changelog.

* Sanity check.

* Update docs.

* Update ignore.txt.

* Don't continue with tests when terms are not strings.

* Remove ignore.txt entry.

* Make sure validate-modules doesn't choke on things already flagged by schema test.

* Check required_if requirements list for strings.
2020-02-19 12:26:42 -05:00
Rohit
9eb7709c61
Vyos static route module added (#62193)
* Vyos static route module added

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* sanity fixes

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* empty config traceback fix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* sanity check fix

* model specific changes and SI test cases updated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* new state changes and SI test cases updated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* sanity fixes

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* UT cases added

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* replaced operation fix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* review comments incorporated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* shippable fix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* sanity fix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* delete opr updated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* comments incorporated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>
2020-02-18 07:32:26 -05:00
Abhijeet Kasurde
b6753b46a9
Replace 'message' in module parameters (#60051)
* 'message' parameter is replaced by 'commit_message' in grafana_dashboard
* 'message' parameter is replaced by 'notification_message' in datadog_monitor

This change is required since 'message' as parameter name is used internally by
Ansible core engine.

Fixes: #39295 #45362 #47132 #59617

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2020-02-18 13:00:16 +01:00
Markus Fischbacher
98bc53d3cb
zabbix_action - allowing string for esc_period (#66841)
* allowing string for esc_period

* add changelog fragment

* Update zabbix_action.py

* remove now unneeded test
2020-02-15 12:57:02 +00:00
Jordan Borean
446a0c1b08
win_package - Refactor with msp, appx support (#66931)
* win_package - Refactor with msp, appx support

* Added msi test for ALLUSERS

* Added some msix tests, refactored tests

* Added remaining msix tests

* Enable msix sideloading for tests

* Added remaining exe path tests

* Added basic msp tests

* Remove url options now the util no longer has them

* Fix file version check for older Windows hosts

* Remove no_proxy ansible-test setting

* Use same mechanism of become to copy the file with explicit creds
2020-02-13 16:44:19 +10:00
Felix Fontein
f6815040fd
add_file_common_arguments: fix defaults and tpyes, improve sanity checking (#67243)
* Make validate-modules stop ignore FILE_COMMON_ARGUMENTS.

* Add types to FILE_COMMON_ARGUMENTS and update document fragment to match it.

* Update ignore.txt.

* Add changelog.
2020-02-12 01:44:11 -05:00
Matt Clay
cad0110228
Rename kubevirt inventory plugin test. (#67326)
* Rename kubevirt inventory plugin test.

This maintains association of the test with the plugin.

* Update ignores.
2020-02-11 16:43:41 -08:00
Matt Clay
89c8eb5a08
Split up lookup integration tests. (#67294)
* Split up lookup integration tests.

* Rename lookup_paths integration test.

This will avoid confusing it for a test of the `paths` lookup plugin, which does not exist.

* Fix lookup_pipe integration test.

The test now verifies it receives the correct output.

Adding a second task also causes code coverage to be properly registered for the lookup plugin.

* Rename ini lookup test to match plugin name.

* Update sanity ignore path.
2020-02-10 16:41:45 -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
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 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
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
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
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
Mark Chappell
35652ca788 Add tests to make sure that the documented 'elements' matches that defined in argument_spec (#66385)
* Add tests to make sure that the documented 'elements' matches that defined in argument_spec

* Mass-add test/sanity/ignore.txt
2020-01-28 12:33:03 -05:00
Mark Chappell
5ff899662d Add sanity test to require elements entry when argument type=list (#66386)
* Require elements entry for lists

* Bulk add initial test/sanity/ignore.txt
2020-01-28 10:23:22 -05:00
Felix Fontein
8cff585891
Schema validation for argument_spec (#65747)
* Start of schema for argument_spec

* Add changelog.

* Remove superfluous import.

* Update ignore.txt

Co-authored-by: Matt Martz <matt@sivel.net>
2020-01-27 17:26:46 +01:00
Toshio Kuratomi
0da13469d3 Add a script to update the intersphinx inventory (#66646)
* Add a script to update the intersphinx inventory files

* We're about to add intersphinx inventories for separate ansible docs
  so we need an easy way to update them.  Also, we should be updating
  these cache files for other upstreams occassionally as well.  With a
  script, we can add updating them to a release process.
* Now that we don't know what the version of the cache is, change the
  filenames to not contain versions.

* Update the intersphinx cache files with the latest upstream versions

Results of running:

hacking/build-ansible.py update-intersphinx-cache -o docs/docsite -c docs/docsite/rst/conf.py

* Add a comment to the configuration file which says how to structure the intersphinx mapping and why.

* Update docs/docsite/rst/conf.py

Co-Authored-By: Sandra McCann <samccann@redhat.com>

Co-authored-by: Sandra McCann <samccann@redhat.com>
2020-01-22 17:20:02 -05:00