Matt Clay
787f722d94
Fix combined coverage file detection.
...
Resolves an issue introduced with https://github.com/ansible/ansible/pull/74719
2021-05-17 16:26:14 -07:00
Matt Clay
ce04056797
Expand delegation options for coverage commands.
2021-05-17 10:37:42 -07:00
Jordan Borean
e875e91363
ansible-test - use pwsh to generate stubs ( #74271 )
2021-05-17 10:00:06 -07:00
Mark Mercado
1906d75907
Adding DigitalOcean cloud support to ansible-test ( #74222 )
2021-05-12 16:07:21 -07:00
Matt Clay
51fd05e76b
Add support for testing with Python 3.10.
2021-05-10 08:23:15 -07:00
Matt Clay
e6d7aecbe4
Reorganize more ansible-test code. ( #74611 )
...
* Split out shell command.
* Relocate ansible-test integration code.
2021-05-06 17:59:07 -07:00
Matt Clay
065fc3ca17
Remove check for legacy core and extras dirs.
2021-05-06 17:58:25 -07:00
Matt Clay
07fb6f7547
Fix imports for the previous commit.
...
Also add a changelog entry.
2021-05-05 18:56:29 -07:00
Matt Clay
92c40f6365
Relocate change classification files.
2021-05-05 18:56:29 -07:00
Matt Clay
5dfc7ee078
Remove Shippable CI provider from ansible-test.
2021-05-05 17:42:13 -07:00
Matt Clay
df2ae06d46
Fix ansible-test imports and paths after refactor.
...
Also include a changelog entry covering this commit and the previous.
2021-05-05 16:20:15 -07:00
Matt Clay
bb3904d299
Reorganize command implementations.
...
This commit only renames existing files.
Changes to adapt imports will occur in a follow-up commit.
2021-05-05 16:20:15 -07:00
Matt Clay
fb0d5609cb
Code cleanup in ansible-test. ( #74529 )
...
* Fix get_available_python_versions calls.
* Make run_playbook vars optional.
* Use ansible_pipelining in inventory.
* Fix type hint.
* Fix order of conditional evaluation.
* Remove unused ibmi platform.
* Add changelog fragment.
2021-04-30 18:50:00 -07:00
Matt Clay
877e5b3dfe
Fix ansible-test AZP build lookup.
2021-04-27 18:32:46 -07:00
Matt Clay
c4e76a7f80
Add collection config support to ansible-test.
2021-04-27 12:09:34 -07:00
Matt Clay
cb7f4f1971
Fix pypi-test-container port conflict.
2021-04-26 14:41:02 -07:00
Matt Clay
6cfe36fa1f
Set ansible-test min controller Python to 3.8. ( #74395 )
...
- Version neutral sanity tests now require Python 3.8 or later.
- Unit tests for controller-only code now require Python 3.8 or later.
2021-04-23 00:26:19 -07:00
Matt Clay
14ff5e213c
Fix ansible-test docker container IP detection.
2021-04-22 11:54:54 -07:00
Matt Clay
e6af2d6827
Fix ansible-test coverage traceback when no data.
...
If no coverage directory exists, ansible-test coverage would traceback.
Now it silently continues just as if the directory was present but empty.
2021-04-20 14:33:05 -07:00
Matt Clay
7786dbbdc1
Split out module/module_utils unit test execution.
...
- Unit tests for `modules` and `module_utils` are now limited to importing only `ansible.module_utils` from the `ansible` module.
- Unit tests other than `modules` and `module_utils` are now run only on Python versions supported by the controller (Python 3.8+).
- Unit tests are now run in separate contexts (`controller`, `modules`, `module_utils`), each using separate invocations of `pytest`.
2021-04-19 15:44:58 -07:00
Matt Clay
277a06f641
Clean up ansible-test cloud plugins. ( #74322 )
...
- Improve code reuse.
- Add missing type hints, fix existing ones and convert them to PEP 484 style.
- Add missing imports and clean up existing ones.
- Add missing docstrings and clean up existing ones.
2021-04-16 18:49:22 -07:00
Matt Clay
b752d07163
Overhaul ansible-test container management.
...
This brings ansible-test closer to being able to support split controller/remote testing.
2021-04-12 12:40:36 -07:00
Matt Clay
becf941673
Add PyPI proxy container for tests on Python 2.6.
2021-04-08 15:47:23 -07:00
Sam Doran
4df9ea86c2
ansible-test - change diff mathching regexp so prefixes are optional
...
The `a/` and `b/` prefixes can be disabled in the `git diff` output by setting
`diff.noprefix` to `true`. The output is still a valid diff, but `ansible-test` would
raise an exception since without the prefixes, it thought the diff line was invalid.
2021-04-07 12:50:39 -07:00
Sam Doran
7b79b69369
ansible-test - ensure trailing separator is added for connection unit test target ( #74176 )
...
For connection units tests, if the `__init__.py` file is modified, the trailing separator was
not added, making the target invalid.
2021-04-07 13:27:09 -04:00
Matt Clay
b75844af45
Fix ansible-test coverage exporting.
...
ci_complete
ci_coverage
2021-03-30 14:30:15 -07:00
Mark Chappell
ed18fcac3b
Ensure unit test paths for connection and inventory plugins are based on the context ( #73877 )
2021-03-12 12:46:40 -08:00
Matt Clay
15064c7a42
Update resource_prefix
syntax for ansible-test.
2021-03-10 09:00:12 -08:00
Felix Fontein
29aef842d7
ansible-test: make sure tests are also run for the new plugin types ( #73599 )
...
* Make sure tests are also run for the new plugin types.
* New plugin types are not documentable.
2021-02-13 14:05:16 -08:00
Matt Clay
d092356fc5
Fix ansible-test handling of egg-info.
...
Resolves https://github.com/ansible/ansible/issues/67990
2021-02-13 01:05:00 -08:00
Felix Fontein
1f3a90270b
Import sanity test for plugins ( #72497 )
2021-02-12 14:09:50 -08:00
Matt Clay
f533d46572
Fix ansible-test constraints issues. ( #73578 )
...
* Silence Python 3.5 EOL notice in pip.
* Skip import test on compat/selinux.py utils.
* Improve Python version skip warning.
* Use Python 3.6 as minimum Python for sanity tests.
* Improve min Python handling for code-smell tests.
* Overhaul test-constraints sanity test.
* Merge sanity test constraints with requirements.
* Remove legacy content specific constraints.
* Add changelog fragment.
2021-02-11 16:45:53 -08:00
Matt Clay
8a175f59c9
Upgrade pylint used by ansible-test. ( #70155 )
...
* Upgrade pylint and deps in ansible-test.
* Enable pylint on Python 3.9.
* Update pylint config.
* Add ignore for vendored six.
* Add ignores for support plugins.
* Fix issue reported by pylint.
2021-02-10 15:52:41 -08:00
Matt Clay
1a2da990a4
Temporary fix for cryptography issues. ( #73530 )
2021-02-08 14:35:00 -08:00
Florian Heiderich
8f887b7adb
add self-signed https endpoint for ansible-test ( #73463 )
...
* introduce self-signed.ansible.http.tests
* forwarding of port 444
* forward port 8444 to port 444 on http test container
* Fix port forwarding for Windows under docker
* add changelog fragment
Co-authored-by: Jordan Borean <jborean93@gmail.com>
2021-02-05 05:12:22 +10:00
Matt Clay
a9b5bebab3
Overhaul ansible-test SSH key management. ( #73451 )
...
* Pass remote.sh to shell over stdin.
* Pass docker.sh to shell over stdin.
* Standardize SSH key management.
* Update docker containers.
2021-02-02 08:43:54 -08:00
Matt Clay
c7cb944315
Always use python exec wrapper in ansible-test.
2021-01-28 15:59:55 -08:00
Matt Clay
ded2d0b90e
Use sh
for ansible-test raw remote shell.
2021-01-28 09:00:55 -08:00
Matt Clay
418b9b781d
No longer warn about missing pip/python pair.
...
This warning was intended to help improve test environment configuration.
However, it has ended up producing mostly non-actionable warning noise instead.
In most situations a missing pip or python should result in test failures.
Reporting a missing pip also implies that it should be used by tests, which is not the case.
Tests should be invoking pip as a python module with the appropriate python interpreter instead.
2021-01-27 23:51:48 -08:00
Matt Clay
672941fb0d
Add test support for Python 3.8 on RHEL and FreeBSD. ( #73393 )
...
* Support Python 3.8 on RHEL 8.2+ in ansible-test.
* Support Python 3.8 on FreeBSD in ansible-test.
* Use libyaml with PyYAML on FreeBSD.
2021-01-27 21:35:29 -08:00
Matt Clay
1b157ef42f
Limit rstcheck sanity test to ansible-core. ( #73391 )
2021-01-27 21:06:00 -08:00
Matt Clay
73fadc5e97
Clean up code in ansible-test. ( #73379 )
...
* Relocate code to fix type dependencies.
* Fix missing and unused imports.
* Fix type hints.
* Suppress PyCharm false positives.
* Avoid shadowing `file` built-in.
* Use json.JSONEncoder directly instead of super().
This matches the recommended usage and avoids a PyCharm warning.
* Remove redundant regex escape.
* Remove redundant find_python call.
* Use tarfile.open directly.
* Add changelog fragment.
2021-01-26 14:02:08 -08:00
Matt Clay
4164cb26f0
Remove obsolete tower
plugin from ansible-test.
2021-01-13 12:37:21 -08:00
Matt Clay
21f1811ddf
Cleanup provisioning code in ansible-test. ( #73207 )
...
* Remove unused code in ansible-test.
* Remove obsolete endpoint logic from ansible-test.
* Remove obsolete region selection in ansible-test.
* Remove obsolete port logic in ansible-test.
* Clean up ansible-test remote providers.
2021-01-12 16:18:28 -08:00
Matt Clay
77942acefc
Refactor ansible-test cryptography install code.
2021-01-07 09:04:33 -08:00
Matt Clay
37d09f2488
Update ansible-test pylint Python support. ( #72972 )
...
* Update ansible-test pylint Python support.
* Python 3.8 is now officially supported.
* Python 3.9 is now skipped with a warning.
2020-12-15 10:27:32 -08:00
Matt Clay
36ab3d1189
Fix cryptography constraints in ansible-test. ( #72914 )
2020-12-09 10:46:05 -08:00
Matt Martz
6bc1e9f5dd
Address additional ansible_core rename issues ( #72906 )
...
* Update __requires__ to reference the correct ansible_core package name
* ansible-test updates to handle the correct egg_info for ansible_core
2020-12-08 12:22:55 -06:00
Felix Fontein
f94ba68d8f
ansible-test sanity: fix UnicodeDecodeError for --python 2.7 --docker
( #72623 )
...
* Store target paths as unicode.
* Add changelog fragment.
2020-12-04 12:12:14 -05:00
Matt Clay
221c50b57c
Use AZP config for integration-aliases test.
...
No changelog entry since this test is limited to the ansible/ansible repo.
2020-12-03 15:35:58 -08:00