summaryrefslogtreecommitdiff
path: root/test/lib/ansible_test/_util/controller/tools/yaml_to_json.py
diff options
context:
space:
mode:
authorMatt Clay <matt@mystile.com>2022-12-16 09:58:58 -0800
committerGitHub <noreply@github.com>2022-12-16 09:58:58 -0800
commitc37870a7355d839e33bbe8e7839a9663fb922c75 (patch)
tree33e5e4bd0ce3ef4996ac81861ef98df7690a1daa /test/lib/ansible_test/_util/controller/tools/yaml_to_json.py
parentcfbd819db326bed9629898f517d09787d79115b2 (diff)
downloadansible-c37870a7355d839e33bbe8e7839a9663fb922c75.tar.gz
[stable-2.12] ansible-test - Improve container management. (#79611)
* ansible-test: Set max number of open files in containers to 10240 (#75498) (cherry picked from commit e50ad6f118125dc2a8cc51aac6048763e2fe701b) * ansible-test - Add RHEL 9 support. (#76217) * Move RHEL pip package install into function. * Add RHEL 9 support to bootstrap script. * ansible-test - Add RHEL 9 support. * Add install and uninstall instructions for RHEL9 to paramiko tests * Skip incidental_inventory_docker_swarm on RHEL 9. * Update dnf tests for rhel9 * Fix prepare_http_tests on RHEL 9. * fix RHEL9 Python discovery tests to match distro map * Skip subversion test on RHEL 9.0b. Co-authored-by: Matt Martz <matt@sivel.net> Co-authored-by: Matt Davis <mrd@redhat.com> (cherry picked from commit 730194e2b61e3d3b3037c8da49ecc5a09e64adea) * fix support containers under podman (#76292) * `podman inspect` falls back to a same-named image if the named container is not present; since eg `http-test-container` is both the name of the image and container, it wasn't working properly under podman in many instances. Switching to `docker|podman container inspect` limits the query to containers only for both podman and docker, allowing the support container detection/creation to work properly. (cherry picked from commit abac141122d3c3beac29dae7f04551fb05ed9c74) * ansible-test - Code cleanup. (#76540) * Add missing typing imports. * Remove unnecessary non-capturing group. * Whitespace. * Add type hints. * Ignore PyCharm false positives. * Remove Python 2.x plugin loading logic. * Remove Python 2.x exception handling. * Remove Python 2.x display logic. * Add changelog. (cherry picked from commit 4e70156d7ece970a41f8d0e7245002ea9a7df0ab) * ansible-test - Fix type hints. (cherry picked from commit d2daa67b0079a69bee9be139bea1242e22427686) * ansible-test - Fix plugin loading. This fixes a traceback when loading plugins that use dataclasses. (cherry picked from commit 7e814dd4db22d94ee61aaa57b7be630a9cdb598e) * ansible-test - Remove AIX provisioning support. (#76747) * ansible-test - Remove AIX provisioning support. * Remove `skip/aix` integration test aliases. * Remove build for AIX binary module. (cherry picked from commit 3a891827b71fd91fe39f7821ebc3235ba4044f48) * ansible-test: fix typo in validate-modules (#76765) The correct error strategy for the to_text method is surrogate_or_strict Signed-off-by: Dimitri Savineau <dsavinea@redhat.com> (cherry picked from commit a0f6747f077898a97a0d8f9849e11377a58d7117) * ansible-test - Improve help for unsupported cwd. (#76866) * ansible-test - Improve help for unsupported cwd. * The `--help` option is now available when an unsupported cwd is in use. * The `--help` output now shows the same instructions about cwd as would be shown in error messages if the cwd is unsupported. * Add `--version` support to show the ansible-core version. * The explanation about cwd usage has been improved to explain more clearly what is required. Resolves https://github.com/ansible/ansible/issues/64523 Resolves https://github.com/ansible/ansible/issues/67551 (cherry picked from commit de5f60e374524de13fe079b52282cd7a9eeabd5f) * ansible-test - Validate collection ns and name. Resolves https://github.com/ansible/ansible/issues/62079 (cherry picked from commit 26b43f425f6c04732818f600e1cf4bcb9a56f89a) * ansible-test - Add default for Windows remotes. (cherry picked from commit 18ed2c64e57816f0a8ecd2fbda3e5538b45da5ea) * ansible-test - Clean up future boilerplate. (#76874) * ansible-test - Clarify need for empty __init__.py * ansible-test - Update code-smell boilerplate. * Update code-smell boilerplate for core. * Update future boilerplate test for ansible-test. All ansible-test code (except for targets) and core-specific sanity tests now use the same boilerplate. The test also checks for unwanted `__future__` and `metaclass` boilerplate. * Relocate target tools to the correct directory. Several tools used on target Python versions were incorrectly placed in the controller directory. (cherry picked from commit d19b506ce8c5ee43865b1cead2246fc07cc8902b) * ansible-test - Remove obsolete display of MAXFD. Use of ``subprocess.MAXFD`` only worked on Python 2.x, which is no longer supported. (cherry picked from commit dc6b0d48575e0119cdbb0fd7f66c8dd30b414bdb) * ansible-test - Code cleanup and refactoring. (#77169) * Remove unnecessary PyCharm ignores. * Ignore intentional undefined attribute usage. * Add missing type hints. Fix existing type hints. * Fix docstrings and comments. * Use function to register completion handler. * Pass strings to display functions. * Fix CompositeAction handling of dest argument. * Use consistent types in expressions/assignments. * Use custom function to keep linters happy. * Add missing raise for custom exception. * Clean up key/value type handling in cloud plugins. * Use dataclass instead of dict for results. * Add custom type_guard function to check lists. * Ignore return type that can't be checked (yet). * Avoid changing types on local variables. (cherry picked from commit a06fa496d3f837cca3c437ab6e9858525633d147) * ansible-test - Simplify type hints. (cherry picked from commit af2b1361ffdc95cf1ca46a13f22ec43c6f9ec080) * Support podman-remote in ansible-test (#75753) (cherry picked from commit 7cb581ed2cb1d4591d094df37a40c9155ea446da) * docker_util: Handle error in JSON parsing (#77298) While getting hostname from container, podman command fails to return JSON so wrap exception and return hostname as 'None' Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com> (cherry picked from commit 1100289a45e5b5444bc5af59052fc2d63452eff6) * ansible-test - Remove RHEL 9.0b support. Support can be restored once RHEL 9 has been released. (cherry picked from commit 55f90ba31fd3626fb5be9fcb91ff05d6a42740b2) * ansible-test - Don't fail if network cannot be disconnected (#77472) * Don't fail if network cannot be disconnected * add clog frag (cherry picked from commit 66c58449782d94cb5acb01b8d1ef8a207307a496) * ansible-test - Backport `InternalError` NOTE: This is a partial backport, including only one new class. (cherry picked from commit b9606417598217106e394c12c776d8c5ede9cd98) * ansible-test - Fix subprocess management. (#77641) * Run code-smell sanity tests in UTF-8 Mode. * Update subprocess use in sanity test programs. * Use raw_command instead of run_command with always=True set. * Add more capture=True usage. * Don't expose stdin to subprocesses. * Capture more output. Warn on retry. * Add more captures. * Capture coverage cli output. * Capture windows and network host checks. * Be explicit about interactive usage. * Use a shell for non-captured, non-interactive subprocesses. * Add integration test to assert no TTY. * Add unit test to assert no TTY. * Require blocking stdin/stdout/stderr. * Use subprocess.run in ansible-core sanity tests. * Remove unused arg. * Be explicit with subprocess.run check=False. * Add changelog. * Use a Python subprocess instead of a shell. * Use InternalError instead of Exception. * Require capture argument. * Check for invalid raw_command arguments. * Removed pointless communicate=True usage. * Relocate stdout w/o capture check. * Use threads instead of a subprocess for IO. (cherry picked from commit 5c2d830dea986a8c7bd8c286b86bdce326cd7eb1) * ansible-test - Add support for remote Ubuntu VMs. (cherry picked from commit 6513453310cdfc42c44a4b879535a8f0795c0295) * ansible-test - Fix remote completion validation. (cherry picked from commit e2200e8dfc5b2a51db4f77800090fe859811f80b) * ansible-test - Add multi-arch remote support. (cherry picked from commit 2cc74b04c49338b48af070ddd811b25b5d801c12) * ansible-test - Enhance the shell command. (#77734) * ansible-test - Add shell --export option. * ansible-test - Support cmd args for shell command. Also allow shell to be used without a valid layout if no delegation is required. * ansible-test - Improve stderr/stdout consistency. By default all output goes to stdout only, with the exception of a fatal error. When using any of the following, all output defaults to stderr instead: * sanity with the `--lint` option -- sanity messages to stdout * coverage analyze -- output to stdout if the output file is `/dev/stdout` * shell -- shell output to stdout This fixes issues two main issues: * Unpredictable output order when using both info and error/warning messages. * Mixing of lint/command/shell output with bootstrapping messages on stdout. * ansible-test - Add changelog fragment. (cherry picked from commit fe349a1ccd658d86cfcf10eecdce9d48ece6176c) * ansible-test - Fix remote args restriction. The platform-specific and global fallbacks were not working with the `--remote` option. This regression was introduced by https://github.com/ansible/ansible/pull/77711 (cherry picked from commit 76ead1e7680a0341261d45e17aeb57774935e5b4) * ansible-test - Fix shell target options handling. (cherry picked from commit f93331410122227f82140c7704023e3f7c4e7a56) * Refactor ansible-test integration tests. (#78168) * Relocate update-ignore.py for easier re-use. * Add script to ease collection testing. * Skip ignore rewrite if file does not exist. * Add integration test for the shebang sanity test. * Fix ansible-test-no-tty integration test. Previously the test only verified a TTY was not used if a TTY already existed. This prevented the test from verifying behavior when run in CI. Now the test creates a PTY before invoking ansible-test. * Clean up ansible-test-docker integration test. (cherry picked from commit f70cc2fb7e58d524977df0762b748ec93315eef5) * ansible-test - Fix TTY and output handling. (#78350) (cherry picked from commit a3c90dd0bcb4aecfc64a4a584e52aec77ee61158) * ansible-test - Parse content config only once. (#78418) (cherry picked from commit f2abfc4b3d03a2baa078477d0ad2241263a00668) * ansible-test - Fix self-test change handling. (#78521) (cherry picked from commit 99016653a29cc2c1c5aa05324ed92dabf5e9f1fc) * ansible-test - Fix integration test target filter. (#78862) - Allow disabled, unsupported, unstable and destructive integration test targets to be selected using their respective prefixes. - Allow unstable tests to run when targeted changes are made and the ``--allow-unstable-changed`` option is specified (resolves https://github.com/ansible/ansible/issues/74213). (cherry picked from commit d3d7785472ce18ee79c2abb893be1cf40ff563dd) * [stable-2.13] ansible-test - Improve container management. (#79538) * ansible-test - More flexible become support. (cherry picked from commit 5666c6d6a3207f279cbb3ce0b0bd070ab5a9ecd4) * ansible-test - Add support for more remotes. (cherry picked from commit 24d91f552cad2a485f286f3c34cbba2005599ab4) * ansible-test - Enable ACLs on FreeBSD remotes. This allows integration tests to switch from one unprivileged user to another, sharing files between the users using ACLs. (cherry picked from commit b63812bc08fd00fd772c28a2604f77f487d23104) * ansible-test - Enable ACL support on more remotes. (#78299) (cherry picked from commit 8bb20fe06b458e6d7c4290dcb86cced3bce9d825) * ansible-test - Install `acl` on Alpine remotes. (#78303) (cherry picked from commit 8565deaae393a136ada071c27a8b7791d3640e41) * ansible-test - Use sudo for all remotes. (#78310) (cherry picked from commit f3f4ad93325725b91902984b419502e8b4b97188) * ansible-test - Fix Ubuntu 20.04 bootstrapping. (#78551) (cherry picked from commit d683c5bd212375c9ffc785ab65ee6e68ea913c8b) * ansible-test - Verify executables are executable. (#78606) (cherry picked from commit ece85abbc46e087187caf6e05b1515b97c578531) * ansible-test - Use --tmpfs to run containers. (#78605) (cherry picked from commit 4187707f035a5dde9d02e99e5dec40d71b06d5d1) * ansible-test - Remove Fedora 35 support. (#78720) (cherry picked from commit 38a82a5cc43ed4b48cf5fbc3addc5d2993c37eef) * ansible-test - Fix container error handling. (#78739) (cherry picked from commit 79f67ed56116be11b1c992fade04acf06d9208d1) * ansible-test - Improve container management. (#78550) See changelogs/fragments/ansible-test-container-management.yml for details. (cherry picked from commit cda16cc5e9aa8703fb4e1ac0a0be6b631d9076cc) * ansible-test - Fix container detection. (#79530) (cherry picked from commit 80d2f8da02052f64396da6b8caaf820eedbf18e2) * Update test matrix symlinks. (#78737) * Add remote platform symlinks. These were already supported by ansible-test. This change adds the symlinks for use in the CI test matrix. * Remove obsolete AIX test symlink. AIX was already removed from ansible-test. (cherry picked from commit 62221a3be214082610ba33c62e82bc3a778be7fb) * Use patched containers without VOLUME instruction. * Make test suite compatible with older ansible. * Fix compatibility with Python 3.8. (cherry picked from commit 1d7436935f00379d00682c9ec1059b3a1c279fce) * ansible-test - fix warning to include image name (#79560) (cherry picked from commit 0a12d8a5bc820e5d12805af41b80351d0b635e63) * ansible-test - Fix target PyPI proxy config. (cherry picked from commit dcc08eec35fde72845d121859abf1ffef1e9030f) * ansible-test - Fix `--prime-containers` and `--explain` (#79581) * Remove unused code. * Fix explain errors. * Fix `--prime-containers` with docker on cgroup v2. (cherry picked from commit da3b1d3f50bfbe118f2200e3e2ef109d87da4c2e) * ansible-test - Support RSA SHA-1 for SSH clients. (cherry picked from commit 75b60b17ee1ff18ded04cf07b71e4ee32e673a0b) * ansible-test - Limit paramiko to < 2.9.0 (cherry picked from commit d6588293fb6f83ba008c80c4d2854b320152d909) * Add more retries to ansible-test-container test. (cherry picked from commit f6c0e22f98e3ad1e0a98837053ed03a27d8a1fcf) * ansible-test - Improve container startup handling. Also improve the ansible-test-container integration test: - Add coverage for the no-probe code path. - Add work-arounds for centos6 containers (to support backporting). - Avoid systemd debug when the container doesn't use cgroup. (cherry picked from commit 04fc98c794d425a42f83a062c163c981d8751512) * Fix shebang test. A false positive is generated by the test and a fix was never backported to stable-2.12. Co-authored-by: Andrew Klychkov <aklychko@redhat.com> Co-authored-by: Matt Davis <nitzmahone@users.noreply.github.com> Co-authored-by: Dimitri Savineau <dsavinea@redhat.com> Co-authored-by: Matt Martz <matt@sivel.net> Co-authored-by: Abhijeet Kasurde <akasurde@redhat.com> Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
Diffstat (limited to 'test/lib/ansible_test/_util/controller/tools/yaml_to_json.py')
-rw-r--r--test/lib/ansible_test/_util/controller/tools/yaml_to_json.py3
1 files changed, 1 insertions, 2 deletions
diff --git a/test/lib/ansible_test/_util/controller/tools/yaml_to_json.py b/test/lib/ansible_test/_util/controller/tools/yaml_to_json.py
index 1164168e3e..e2a15bf00c 100644
--- a/test/lib/ansible_test/_util/controller/tools/yaml_to_json.py
+++ b/test/lib/ansible_test/_util/controller/tools/yaml_to_json.py
@@ -1,6 +1,5 @@
"""Read YAML from stdin and write JSON to stdout."""
-from __future__ import (absolute_import, division, print_function)
-__metaclass__ = type
+from __future__ import annotations
import datetime
import json