We eagerly announce the release of: validations-common 1.2.0: A common Ansible libraries and plugins for the validations framework The source is available from: https://opendev.org/openstack/validations-common Download the package from: https://tarballs.openstack.org/validations-common/ For more details, please see below. Changes in validations-common 1.1.1..1.2.0 ------------------------------------------ f07c8e7 New location of the default log directory. ecc6795 functools provide reduce instead of the ansible 92f51ea Update Validations Framework IRC channels 2e3e7f3 Renamed variable to something more illuminating. 4b87cf2 Bump molecule to 3.3.1 4ee2789 Trigger molecule jobs when modifying the following files 3a5e0de Rename local variable component to validation_component for Upstream CI dbb069f Remove Jinja2 constraint 8cf7b42 Licences are now listed for all requirements. 1d2149e Unblocking the openstack-tox-docs job. 1167633 Adds dockerignore to the repo 2ae6e68 Reqcheck job for upstream validations-common 48c99bd Temporary fetch logs adjustement to detect log folder f1ce73f File validation extended to callback_plugins, main loop optimized 4fc2ef2 Added the 'CALLBACK_NEEDS_WHITELIST' attribute. 1f3c0d2 Remove workaround for tox-ansible and global molecule config 01842ab Fix callback_type for validation_json.py 4a05320 Add testing for custom callback feature 5de26bd Fix targeting hosts to 'localhost' instead of 'all' 771eacc Sync is no longer loopy 6dfba51 Artifacts directory path is now set in a variable bafce83 Simple tests for validation_json callback. 29575dd Test for callback initiation. e15b080 Bump pre-commit repositories 6243262 Add shared configuration for all molecule test cc8369c Fetch all Validations, json and log files with CI role b41537f Superfluous imports are now mocked d64b830 Remove RoleNames ansible-lint custom rule c37b9cf Update validations role to be used by tripleo CI and devstack tests 97d6863 Update of validate-files script 10361e1 Use new CLI for functionnal tests and remove validation.py script c6508ad Disabling strict mode for ConfigParser in read_ini a38d34d ConfigParser exeption message should be returned cb75103 Version bumps to prepare for rhel9 transition 62eb4c0 Fixed exception handling of the print_tuple_table method. 7e40c9f Adding backup-and-restore validation group 2470d54 Except block now covers specific errors c6503e5 Make check_latest_packages_version roles more generic ba6977f add basic standalone job w/ validate-services true 27174b1 Tests for validation.py module and helper classes d67b2a0 Fallback on PWD for the Validation json log instead of getcwd b50b40c Improved test coverage for library/advanced_format.py 50eea5e Improved test coverage for library/warn.py caeb26b Cover report omits test files ab26d82 [Testing Infra] Apply here the improvements done to tripleo-validations 5b21243 Re-add documentation for http_json callback 8225fdd .gitignore now excludes JSON molecule logs 0249d81 packages var renamed to packages_list 3f80ee6 Introduce tox-ansible to validations-common dbacdea Test class for http_json callback. 7732eb0 Make callback write to default if /var/log/validations does not exist 1dd5941 Branching is now considered, line numbers are printed 97b3a86 Puts DISABLE_PIP_VERSION_CHECK on a separate line d9434d8 Docs are now built in pdf b8ef2c0 Python 2.7 environment, mimicking the one used by RDO bc6b582 Fixes issues caused by dict unpacking in (90e6133) 3b06d88 cli help rework and cleanup 6b11677 Validations now gather only the subset of facts they need fd06efd explanation why plugins don't respect normal naming coventions 7cfd0cb Test infrastructure for library scripts along with few samples. a92c1d2 Add validation-common documentation structure bcc35b8 Restrict execution to localhost only 4c610b3 Make the measuring code coverage test working 8d587ce Simple tests for validation_output callback. 8ad5cf3 Simple tests for validation_stdout callback. 273f41f Simple tests for fail_if_no_hosts callback. 88751f3 Infrastructure for callback unit tests 67a918d Add external http logging callback 32e4898 Fix list index out of range 0a5c58a Update TOX_CONSTRAINTS_FILE 4df9a80 Remove useless python import 775f74b Restrict Ansible dependency ba5db95 Remove workaround for broken dogpile.cache and lower-constraints file 95ca84c Exit with zero status when denials are not found in audit log e943a4e Add default value for validation.py inventory a83cc51 make selinux check only for rhel distribution c5faf55 Add dedicated stdout callback for VF library fe2d98e Correct the validate_selinux working_dir 2660470 Fix validation and group arguments to accept comma lists 51f2738 Exclude non failing gathering facts action in simplified result 844b877 Install CI roles into share/ansible/roles f365a07 Remove ensure-docker role execution a89c63b Use the UBI8 image for testing aac3975 Convert docker molecule usage to podman d633131 Updated/corrected service_status 399f6e5 Add missing exec bit 9d84a07 Add molecule tests runs back in the CI 7f3c565 Fix lower-constraints errors for validations-common 208a585 Revert "Make mock import python 2.7 compatible" Diffstat (except docs and test files) ------------------------------------- .ansible-lint | 13 + .ansible-lint_rules/RoleNames.py | 57 -- .config/molecule/Dockerfile | 35 + .config/molecule/config.yml | 70 ++ .coveragerc | 4 +- .dockerignore | 66 ++ .gitignore | 6 +- .pre-commit-config.yaml | 27 +- .reqcheck_override.yaml | 6 + .stestr.conf | 2 +- .zuul.yaml | 239 ++++++- CONTRIBUTING.rst | 19 + README.rst | 106 ++- ansible-test-env.rc | 1 - bindep.txt | 17 +- .../modules/modules-check_package_update.rst | 14 + .../modules/modules-validations_read_ini.rst | 14 + .../roles/role-advanced_format_512e_support.rst | 6 + .../roles/role-check_latest_packages_version.rst | 6 + lower-constraints.txt | 118 ---- molecule-requirements.txt | 22 +- playbooks/molecule/pre.yml | 91 +++ playbooks/molecule/run-local.yml | 14 + playbooks/molecule/run.yml | 39 ++ playbooks/reqcheck.yaml | 45 ++ requirements.txt | 4 +- roles/fetch_validations/defaults/main.yaml | 1 + roles/fetch_validations/tasks/main.yaml | 40 +- roles/validations/defaults/main.yaml | 45 +- roles/validations/tasks/list.yaml | 6 + roles/validations/tasks/main.yaml | 58 +- roles/validations/tasks/run.yaml | 36 + roles/validations/tasks/show.yaml | 6 + roles/validations/tasks/validations.yaml | 41 +- roles/validations/vars/main.yaml | 29 + scripts/run-local-test | 32 +- setup.cfg | 6 +- test-requirements.txt | 2 +- tools/http_server.py | 54 ++ tools/test-setup.sh | 8 - tools/validate-files.py | 115 ++-- tox.ini | 92 ++- validations_common/__init__.py | 4 + validations_common/callback_plugins/__init__.py | 13 + validations_common/callback_plugins/http_json.py | 94 +++ .../callback_plugins/validation_json.py | 30 +- .../callback_plugins/validation_stdout.py | 99 +++ validations_common/library/check_package_update.py | 294 ++++++-- validations_common/library/validations_read_ini.py | 8 +- validations_common/playbooks/512e.yaml | 2 +- validations_common/playbooks/check-cpu.yaml | 5 +- .../playbooks/check-disk-space-pre-upgrade.yaml | 2 +- validations_common/playbooks/check-disk-space.yaml | 2 +- validations_common/playbooks/check-ftype.yaml | 2 +- .../playbooks/check-latest-packages-version.yaml | 4 +- validations_common/playbooks/check-ram.yaml | 4 +- .../playbooks/check-selinux-mode.yaml | 4 +- validations_common/playbooks/dns.yaml | 2 +- validations_common/playbooks/no-op.yaml | 2 +- validations_common/playbooks/ntp.yaml | 2 +- validations_common/playbooks/service-status.yaml | 1 + validations_common/playbooks/validate-selinux.yaml | 3 +- .../molecule/default/Dockerfile | 37 - .../molecule/default/molecule.yml | 45 +- .../roles/check_cpu/molecule/default/Dockerfile | 37 - .../roles/check_cpu/molecule/default/molecule.yml | 44 +- validations_common/roles/check_cpu/tasks/main.yml | 7 + .../check_disk_space/molecule/default/Dockerfile | 37 - .../check_disk_space/molecule/default/molecule.yml | 44 +- .../defaults/main.yml | 10 +- .../molecule/default/Dockerfile | 37 - .../molecule/default/converge.yml | 59 +- .../molecule/default/molecule.yml | 45 +- .../molecule/default/prepare.yml | 39 +- ...e-1.0.0-1.20210331045404.4c29590.el8.x86_64.rpm | Bin 0 -> 6992 bytes ...e-1.0.0-2.20210401064344.c8ee186.el8.x86_64.rpm | Bin 0 -> 7060 bytes ...e-1.0.1-1.20210401074356.drh345o.el8.x86_64.rpm | Bin 0 -> 7128 bytes .../check_latest_packages_version/tasks/main.yml | 12 +- .../roles/check_ram/molecule/default/Dockerfile | 37 - .../roles/check_ram/molecule/default/molecule.yml | 44 +- validations_common/roles/check_ram/tasks/main.yml | 7 + .../check_selinux_mode/molecule/default/Dockerfile | 37 - .../molecule/default/molecule.yml | 44 +- .../roles/check_selinux_mode/tasks/main.yml | 37 +- .../roles/dns/molecule/default/Dockerfile | 37 - .../roles/dns/molecule/default/molecule.yml | 44 +- .../roles/haproxy/molecule/default/Dockerfile | 37 - .../roles/haproxy/molecule/default/molecule.yml | 45 +- .../roles/ntp/molecule/default/Dockerfile | 37 - .../roles/ntp/molecule/default/molecule.yml | 45 +- .../service_status/molecule/default/Dockerfile | 37 - .../service_status/molecule/default/molecule.yml | 51 +- .../service_status/molecule/docker/Dockerfile | 37 - .../molecule/docker/{playbook.yml => converge.yml} | 0 .../service_status/molecule/docker/molecule.yml | 53 +- .../service_status/molecule/podman/Dockerfile | 37 - .../molecule/podman/{playbook.yml => converge.yml} | 0 .../service_status/molecule/podman/molecule.yml | 45 +- .../service_status/molecule/systemd/Dockerfile | 37 - .../service_status/molecule/systemd/converge.yml | 44 ++ .../service_status/molecule/systemd/molecule.yml | 51 +- .../validate_selinux/molecule/default/Dockerfile | 37 - .../validate_selinux/molecule/default/molecule.yml | 45 +- .../roles/validate_selinux/tasks/main.yml | 4 +- .../xfs_check_ftype/molecule/default/Dockerfile | 37 - .../xfs_check_ftype/molecule/default/molecule.yml | 46 +- .../callback_plugins/test_fail_if_no_hosts.py | 94 +++ .../callback_plugins/test_validation_output.py | 743 +++++++++++++++++++++ .../callback_plugins/test_validation_stdout.py | 201 ++++++ validations_common/validation.py | 187 ------ 150 files changed, 4940 insertions(+), 1922 deletions(-) Requirements updates -------------------- diff --git a/molecule-requirements.txt b/molecule-requirements.txt index c55af13..e631256 100644 --- a/molecule-requirements.txt +++ b/molecule-requirements.txt @@ -2,11 +2,10 @@ -ansible -ansi2html -docker -# https://github.com/sqlalchemy/dogpile.cache/issues/178 -dogpile.cache>=0.6.5,<0.9.1 # MIT -pytest -pytest-cov -pytest-html -pytest-xdist -mock -molecule>=3.0,<3.1 +ansible>=2.8,!=2.8.9,!=2.9.12,<2.10.0 # GPLv3+ +ansi2html # LGPLv3+ +jinja2>=2.8.0 # BSD-3-Clause +mock # BSD +molecule>=3.3.1,<4 # MIT +molecule-podman # MIT +pytest # MIT +pytest-cov # MIT +pytest-html # Mozilla Public License 2.0 +pytest-xdist # MIT @@ -14 +12,0 @@ selinux # MIT -jinja2>=2.8.0,<3 diff --git a/requirements.txt b/requirements.txt index 56b58c8..6dd5b47 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,2 +6,2 @@ pbr>=3.1.1 # Apache-2.0 -PyYAML>=3.12 # MIT -PrettyTable>=0.7.2 +PyYAML>=3.13 # MIT +PrettyTable>=0.7.2 # BSD-3-Clause diff --git a/test-requirements.txt b/test-requirements.txt index 0b513ef..b4c85b4 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6 +5,0 @@ openstackdocstheme>=1.20.0 # Apache-2.0 -hacking>=3.0,<3.1.0 # Apache-2.0 @@ -15,0 +15 @@ pre-commit # MIT +validations-libs>=1.0.4 # Apache-2.0
participants (1)
-
no-reply@openstack.org