We are thrilled to announce the release of: tripleo-validations 12.3.6: A collection of Ansible playbooks to detect and report potential issues during TripleO deployments This release is part of the ussuri stable release series. The source is available from: https://opendev.org/openstack/tripleo-validations Download the package from: https://tarballs.openstack.org/tripleo-validations/ Please report issues through: https://bugs.launchpad.net/tripleo/+bugs For more details, please see below. 12.3.6 ^^^^^^ New Features * RHEL-8.3 kernel disabled the Intel “TSX” (Transactional Synchronization Extensions) feature by default as a preemptive security measure, but it breaks live migration from RHEL-7.9 (or even RHEL-8.1 or RHEL-8.2) to RHEL-8.3. Operators are expected to explicitly define the TSX flag in their KernelArgs for the compute role to prevent live-migration issues during the upgrade process. This also impacts upstream CentOS systems. Changes in tripleo-validations 12.3.5..12.3.6 --------------------------------------------- c1ec034 [ussuri-only] molecule-requirements constraints e889268 Migrate back haproxy validation to tripleo-validations 7c937a0 Compute TSX validation 8a659c4 Add Validation Development Workflow Documentation aa54732 Introduce new Ansible validation_init role. eea038f Remove workaround for tox-ansible and global molecule config 3bab48c Quick documentation content reorganization ccecdcb Trigger molecule tests when modifying CI scripts a6d9d13 Add shared configuration for all molecule test 8c3b847 Enabling indentation rule for yamllint. 90858c7 Remove the post-update groups. Diffstat (except docs and test files) ------------------------------------- .config/molecule/Dockerfile | 35 +++ .config/molecule/config.yml | 70 +++++ .yamllint | 6 +- CONTRIBUTING.rst | 57 +++- README.rst | 10 +- _skeleton_role_/molecule/default/Dockerfile | 37 --- _skeleton_role_/molecule/default/molecule.yml | 49 --- .../developer_guide.rst} | 349 +++++++++++++++------ .../modules/modules-tripleo_haproxy_conf.rst | 14 + .../roles/role-check_for_dangling_images.rst | 8 +- library/tripleo_haproxy_conf.py | 108 +++++++ molecule-requirements.txt | 20 +- playbooks/check-uc-hostname.yaml | 1 - playbooks/compute-tsx.yaml | 31 ++ playbooks/tripleo-haproxy.yaml | 26 ++ .../compute-tsx-validation-5d976a3fc5166536.yaml | 13 + role-addition.yml | 136 +------- .../molecule/default/molecule.yml | 49 +-- .../molecule/ceph-ansible-installed/Dockerfile | 37 --- .../molecule/ceph-ansible-installed/molecule.yml | 53 +--- roles/ceph/molecule/default/Dockerfile | 37 --- roles/ceph/molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 35 --- .../molecule/default/molecule.yml | 48 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 37 +-- .../check_rhsm_version/molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 51 +-- .../molecule/rhsm_mismatch/Dockerfile | 37 --- .../molecule/rhsm_mismatch/molecule.yml | 53 +--- .../check_uc_hostname/molecule/default/Dockerfile | 35 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/config_OK/Dockerfile | 37 --- .../molecule/config_OK/molecule.yml | 53 +--- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 53 +--- .../molecule/deprecated_drivers/Dockerfile | 37 --- .../molecule/deprecated_drivers/molecule.yml | 53 +--- .../molecule/deprecated_params/Dockerfile | 37 --- .../molecule/deprecated_params/molecule.yml | 53 +--- .../molecule/required_missing/Dockerfile | 37 --- .../molecule/required_missing/molecule.yml | 53 +--- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- roles/compute_tsx/README.md | 64 ++++ roles/compute_tsx/defaults/main.yml | 26 ++ roles/compute_tsx/molecule/default/converge.yml | 79 +++++ roles/compute_tsx/molecule/default/molecule.yml | 3 + roles/compute_tsx/tasks/main.yml | 82 +++++ roles/compute_tsx/vars/main.yml | 23 ++ roles/container_status/molecule/default/Dockerfile | 37 --- .../container_status/molecule/default/molecule.yml | 50 +-- roles/controller_token/molecule/default/Dockerfile | 37 --- .../controller_token/molecule/default/molecule.yml | 50 +-- .../controller_ulimits/molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../ctlplane_ip_range/molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- roles/dhcp_validations/molecule/default/Dockerfile | 37 --- .../dhcp_validations/molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- roles/image_serve/molecule/default/Dockerfile | 37 --- roles/image_serve/molecule/default/molecule.yml | 36 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- roles/node_disks/molecule/default/Dockerfile | 37 --- roles/node_disks/molecule/default/molecule.yml | 50 +-- roles/node_health/molecule/default/Dockerfile | 37 --- roles/node_health/molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- roles/nova_status/molecule/default/Dockerfile | 37 --- roles/nova_status/molecule/default/molecule.yml | 50 +-- roles/nova_svirt/molecule/default/Dockerfile | 37 --- roles/nova_svirt/molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 38 +-- .../molecule/deprecated_services/Dockerfile | 37 --- .../molecule/deprecated_services/molecule.yml | 38 +-- .../molecule/down_services/Dockerfile | 37 --- .../molecule/down_services/molecule.yml | 38 +-- roles/ovs_dpdk_pmd/molecule/default/Dockerfile | 37 --- roles/ovs_dpdk_pmd/molecule/default/molecule.yml | 50 +-- roles/pacemaker_status/molecule/default/Dockerfile | 37 --- .../pacemaker_status/molecule/default/molecule.yml | 50 +-- roles/package_version/molecule/default/Dockerfile | 37 --- .../package_version/molecule/default/molecule.yml | 50 +-- roles/rabbitmq_limits/molecule/default/Dockerfile | 37 --- .../rabbitmq_limits/molecule/default/molecule.yml | 50 +-- roles/repos/molecule/default/Dockerfile | 37 --- roles/repos/molecule/default/molecule.yml | 50 +-- roles/stack_health/molecule/default/Dockerfile | 37 --- roles/stack_health/molecule/default/molecule.yml | 50 +-- roles/stonith_exists/molecule/default/Dockerfile | 37 --- roles/stonith_exists/molecule/default/molecule.yml | 50 +-- roles/switch_vlans/molecule/default/Dockerfile | 37 --- roles/switch_vlans/molecule/default/molecule.yml | 50 +-- roles/system_encoding/molecule/default/Dockerfile | 37 --- .../system_encoding/molecule/default/molecule.yml | 50 +-- roles/tls_everywhere/molecule/default/Dockerfile | 37 --- roles/tls_everywhere/molecule/default/molecule.yml | 35 +-- roles/tripleo_haproxy/defaults/main.yml | 21 ++ .../tripleo_haproxy/molecule/default/converge.yml | 71 +++++ .../tripleo_haproxy/molecule/default/molecule.yml | 3 + roles/tripleo_haproxy/tasks/main.yml | 56 ++++ roles/undercloud_debug/molecule/default/Dockerfile | 37 --- .../undercloud_debug/molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../molecule/default/Dockerfile | 37 --- .../molecule/default/molecule.yml | 50 +-- .../non-persistent-token-format/Dockerfile | 37 --- .../non-persistent-token-format/molecule.yml | 50 +-- roles/validation_init/README.md | 47 +++ roles/validation_init/defaults/main.yml | 28 ++ .../files/_skeleton_role_}/defaults/main.yml.j2 | 2 +- .../files/_skeleton_role_}/handlers/main.yml | 2 +- .../molecule/default/converge.yml.j2 | 2 +- .../_skeleton_role_/molecule/default/molecule.yml | 3 + .../_skeleton_role_/molecule/default/prepare.yml | 25 ++ .../_skeleton_role_/molecule/default/verify.yml | 24 ++ .../files/_skeleton_role_}/tasks/main.yml.j2 | 2 +- .../files/_skeleton_role_}/vars/main.yml.j2 | 2 +- .../validation_init/molecule/default/converge.yml | 62 ++++ .../validation_init/molecule/default/molecule.yml | 3 + roles/validation_init/molecule/default/prepare.yml | 96 ++++++ roles/validation_init/molecule/default/verify.yml | 137 ++++++++ roles/validation_init/tasks/main.yml | 180 +++++++++++ roles/validation_init/templates/README.md.j2 | 39 +++ tox.ini | 6 +- zuul.d/base.yaml | 6 +- zuul.d/layout.yaml | 3 +- zuul.d/molecule.yaml | 337 ++++++++++++++------ zuul.d/playbooks/pre.yml | 19 -- zuul.d/playbooks/run.yml | 2 +- 166 files changed, 2306 insertions(+), 4747 deletions(-) Requirements updates -------------------- diff --git a/molecule-requirements.txt b/molecule-requirements.txt index 29dbebe..00c01d2 100644 --- a/molecule-requirements.txt +++ b/molecule-requirements.txt @@ -1,10 +1,10 @@ -# this is required for the molecule jobs -ansi2html -ansible -jinja2>=2.8.0,<3 -molecule>=3.0,<3.1 -pytest -pytest-cov -pytest-html -pytest-xdist -selinux # MIT +# # this is required for the molecule jobs +ansi2html>=1.5.0 # LGPLv3+ +ansible==2.8,!=2.8.9,!=2.9.12,<2.10.0 # GPLv3+ +jinja2>=2.8.0,<3 # BSD-3-Clause +molecule>=3.0,<3.1 # MIT +pytest>=5.3.0 # MIT +pytest-cov>=2.9.0,<2.10.0 # MIT +pytest-html>=2.1.1 # MPL 2.0 +pytest-xdist>=1.34.0 # MIT +selinux>=0.2.0 # MIT