We are ecstatic to announce the release of: tripleo-validations 12.2.0: A collection of Ansible playbooks to detect and report potential issues during TripleO deployments This release is part of the ussuri 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. Changes in tripleo-validations 12.1.0..12.2.0 --------------------------------------------- 6a8f9e9 Update to hacking 3.0 4fc31e0 Convert all of the fedora28 container usage to CentOS8 191f7ca Update hacking for Python3 444e08f Migrate molecule jobs from centos 7 to 8 1fcd825 tripleo-validations failing on lower constraints a0e1319 Don't write playbook stats in binary mode 2ff7cbc Drop eventlet from lower constraints adedd2f Use unittest.mock instead of third party mock 7547548 Don't validate token_flush for non-persistent token formats d6d890d Skeleton role, get with the decade 8734d01 update centos-7 to centos-8 for validations b1110c9 tripleo-validations failing on lower constraints b026524 Updated/corrected service_status 2a89e16 Add basic molecule tests for uncovered roles 1481998 Add custom ansible-lint rule for Role Names 4b15671 Bump pbr==3.1.1 in lower constraints Diffstat (except docs and test files) ------------------------------------- .ansible-lint_rules/RoleNames.py | 57 ++++ _skeleton_role_/defaults/main.yml.j2 | 2 +- _skeleton_role_/handlers/main.yml | 2 +- _skeleton_role_/molecule/default/Dockerfile.j2 | 5 +- .../default/{playbook.yml.j2 => converge.yml.j2} | 3 +- _skeleton_role_/molecule/default/molecule.yml | 15 +- _skeleton_role_/molecule/default/verify.yml | 2 +- _skeleton_role_/tasks/main.yml.j2 | 2 +- _skeleton_role_/vars/main.yml.j2 | 2 +- bindep.txt | 14 +- callback_plugins/validation_json.py | 2 +- lower-constraints.txt | 16 +- molecule-requirements.txt | 4 +- requirements.txt | 6 +- .../molecule/default}/Dockerfile.j2 | 2 +- .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 2 +- .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/ceph-ansible-installed/Dockerfile | 37 +++ .../{playbook.yml => converge.yml} | 0 .../molecule/ceph-ansible-installed/molecule.yml | 19 +- roles/ceph/molecule/default/Dockerfile | 37 +++ .../default/{playbook.yml => converge.yml} | 0 roles/ceph/molecule/default/molecule.yml | 13 +- .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile | 37 +++ .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile.j2 | 2 +- .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 3 +- .../container_status/molecule/default/converge.yml | 26 ++ .../container_status/molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../controller_token/molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 15 +- .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile.j2 | 37 +++ .../dhcp_validations/molecule/default/converge.yml | 26 ++ .../dhcp_validations/molecule/default/molecule.yml | 46 +++ roles/dns/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/dns/molecule/default/molecule.yml | 15 +- roles/haproxy/molecule/default/Dockerfile | 37 +++ .../default/{playbook.yml => converge.yml} | 0 roles/haproxy/molecule/default/molecule.yml | 19 +- .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ roles/image_serve/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/image_serve/molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ roles/node_disks/molecule/default/Dockerfile.j2 | 37 +++ roles/node_disks/molecule/default/converge.yml | 26 ++ roles/node_disks/molecule/default/molecule.yml | 46 +++ roles/node_health/molecule/default/Dockerfile.j2 | 37 +++ roles/node_health/molecule/default/converge.yml | 26 ++ roles/node_health/molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ roles/nova_status/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/nova_status/molecule/default/molecule.yml | 17 +- roles/ntp/molecule/default/Dockerfile.j2 | 37 +++ roles/ntp/molecule/default/converge.yml | 26 ++ roles/ntp/molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ roles/ovs_dpdk_pmd/molecule/default/Dockerfile.j2 | 37 +++ roles/ovs_dpdk_pmd/molecule/default/converge.yml | 26 ++ roles/ovs_dpdk_pmd/molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 37 +++ .../pacemaker_status/molecule/default/converge.yml | 26 ++ .../pacemaker_status/molecule/default/molecule.yml | 46 +++ .../rabbitmq_limits/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../rabbitmq_limits/molecule/default/molecule.yml | 15 +- roles/repos/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/repos/molecule/default/molecule.yml | 15 +- roles/service_status/defaults/main.yaml | 2 + .../service_status/molecule/default/Dockerfile.j2 | 37 +++ roles/service_status/molecule/default/converge.yml | 25 ++ roles/service_status/molecule/default/molecule.yml | 48 +++ roles/service_status/molecule/docker/Dockerfile.j2 | 37 +++ roles/service_status/molecule/docker/converge.yml | 59 ++++ roles/service_status/molecule/docker/molecule.yml | 56 ++++ roles/service_status/molecule/docker/prepare.yml | 65 ++++ roles/service_status/molecule/podman/Dockerfile.j2 | 37 +++ roles/service_status/molecule/podman/bolt_state.db | Bin 0 -> 131072 bytes roles/service_status/molecule/podman/converge.yml | 46 +++ roles/service_status/molecule/podman/molecule.yml | 48 +++ roles/service_status/molecule/podman/prepare.yml | 39 +++ .../service_status/molecule/systemd/Dockerfile.j2 | 37 +++ roles/service_status/molecule/systemd/converge.yml | 44 +++ roles/service_status/molecule/systemd/molecule.yml | 48 +++ roles/service_status/molecule/systemd/prepare.yml | 39 +++ roles/service_status/tasks/containers.yaml | 59 ++++ roles/service_status/tasks/main.yaml | 17 +- roles/service_status/tasks/systemd.yaml | 13 + roles/stack_health/molecule/default/Dockerfile.j2 | 37 +++ roles/stack_health/molecule/default/converge.yml | 26 ++ roles/stack_health/molecule/default/molecule.yml | 46 +++ .../stonith_exists/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/stonith_exists/molecule/default/molecule.yml | 15 +- roles/switch_vlans/molecule/default/Dockerfile.j2 | 37 +++ roles/switch_vlans/molecule/default/converge.yml | 26 ++ roles/switch_vlans/molecule/default/molecule.yml | 46 +++ .../tls_everywhere/molecule/default/Dockerfile.j2 | 37 +++ roles/tls_everywhere/molecule/default/converge.yml | 26 ++ roles/tls_everywhere/molecule/default/molecule.yml | 46 +++ .../undercloud_cpu/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/undercloud_cpu/molecule/default/molecule.yml | 15 +- .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../undercloud_debug/molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 15 +- .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 17 +- .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../undercloud_ram/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 roles/undercloud_ram/molecule/default/molecule.yml | 15 +- .../molecule/default/Dockerfile.j2 | 37 +++ .../molecule/default/converge.yml | 26 ++ .../molecule/default/molecule.yml | 46 +++ .../molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../molecule/default/molecule.yml | 17 +- .../molecule/default/prepare.yml | 7 + .../non-persistent-token-format/Dockerfile.j2 | 37 +++ .../non-persistent-token-format/converge.yml | 44 +++ .../non-persistent-token-format/molecule.yml | 50 +++ .../non-persistent-token-format/prepare.yml | 41 +++ roles/undercloud_tokenflush/tasks/main.yml | 67 ++-- roles/validate_selinux/molecule/default/Dockerfile | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../validate_selinux/molecule/default/molecule.yml | 15 +- .../xfs_check_ftype/molecule/default/Dockerfile.j2 | 2 +- .../default/{playbook.yml => converge.yml} | 0 .../xfs_check_ftype/molecule/default/molecule.yml | 15 +- scripts/bindep-install | 2 +- test-requirements.txt | 2 +- tools/test-setup.sh | 8 + zuul.d/base.yaml | 4 +- zuul.d/layout.yaml | 4 +- zuul.d/molecule.yaml | 361 ++++++++++++++++----- 183 files changed, 4048 insertions(+), 378 deletions(-) Requirements updates -------------------- diff --git a/molecule-requirements.txt b/molecule-requirements.txt index 69d6b89..9074200 100644 --- a/molecule-requirements.txt +++ b/molecule-requirements.txt @@ -9,2 +9 @@ pytest-xdist -mock -molecule>=2.22rc1,<3 +molecule>=3.0,<3.1 @@ -11,0 +11 @@ selinux # MIT +jinja2>=2.8.0,<3 diff --git a/requirements.txt b/requirements.txt index 68c7813..db20f49 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5 +5 @@ -pbr!=2.1.0,>=2.0.0 # Apache-2.0 +pbr>=3.1.1 # Apache-2.0 @@ -7,2 +7,2 @@ oslo.config>=5.2.0 # Apache-2.0 -keystoneauth1>=3.12.0 # Apache-2.0 -python-novaclient>=15.0.0 # Apache-2.0 +keystoneauth1>=3.16.0 # Apache-2.0 +python-novaclient>=15.1.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 1d86fba..0c6bd7b 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6 +6 @@ openstackdocstheme>=1.20.0 # Apache-2.0 -hacking<0.12,>=0.11.0 # Apache-2.0 +hacking>=3.0,<3.1.0 # Apache-2.0