diff --git a/_skeleton_role_/molecule/default/Dockerfile.j2 b/_skeleton_role_/molecule/default/Dockerfile similarity index 100% rename from _skeleton_role_/molecule/default/Dockerfile.j2 rename to _skeleton_role_/molecule/default/Dockerfile diff --git a/_skeleton_role_/molecule/default/molecule.yml b/_skeleton_role_/molecule/default/molecule.yml index 106126d92..97c395a60 100644 --- a/_skeleton_role_/molecule/default/molecule.yml +++ b/_skeleton_role_/molecule/default/molecule.yml @@ -1,39 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com dockerfile: Dockerfile - pkg_extras: python-setuptools + pkg_extras: python*-setuptools + privileged: true volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - dockerfile: Dockerfile - pkg_extras: python*-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/_skeleton_role_/molecule/default/verify.yml b/_skeleton_role_/molecule/default/verify.yml deleted file mode 100644 index ede65b54e..000000000 --- a/_skeleton_role_/molecule/default/verify.yml +++ /dev/null @@ -1,15 +0,0 @@ ---- -# Copyright 2020 Red Hat, Inc. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. diff --git a/ansible-test-env.rc b/ansible-test-env.rc index 7c78da872..50b948308 100644 --- a/ansible-test-env.rc +++ b/ansible-test-env.rc @@ -1,9 +1,14 @@ export TRIPLEO_VALIDATIONS_WORKPATH="$(dirname $(readlink -f ${BASH_SOURCE[0]}))" export ANSIBLE_STDOUT_CALLBACK=debug export ANSIBLE_CALLBACK_PLUGINS="${TRIPLEO_VALIDATIONS_WORKPATH}/callback_plugins" -export ANSIBLE_LIBRARY="${TRIPLEO_VALIDATIONS_WORKPATH}/library" + +ANSIBLE_LIBRARY="${TRIPLEO_VALIDATIONS_WORKPATH}/library" +export ANSIBLE_LIBRARY="${ANSIBLE_LIBRARY}:${TRIPLEO_VALIDATIONS_WORKPATH}/roles/roles.galaxy/validations-common/validations_common/library" export ANSIBLE_LOOKUP_PLUGINS="${TRIPLEO_VALIDATIONS_WORKPATH}/lookup_plugins" + export ANSIBLE_ROLES_PATH="${TRIPLEO_VALIDATIONS_WORKPATH}/roles" +export ANSIBLE_ROLES_PATH="${ANSIBLE_ROLES_PATH}:${TRIPLEO_VALIDATIONS_WORKPATH}/roles/roles.galaxy/tripleo-ansible/tripleo_ansible/roles" + export ANSIBLE_INVENTORY="${TRIPLEO_VALIDATIONS_WORKPATH}/tests/hosts.ini" export ANSIBLE_RETRY_FILES_ENABLED="0" export ANSIBLE_LOAD_CALLBACK_PLUGINS="1" diff --git a/bindep.txt b/bindep.txt index 8e60cc8f1..6e77a198c 100644 --- a/bindep.txt +++ b/bindep.txt @@ -18,6 +18,17 @@ gcc-c++ [platform:rpm] git [platform:rpm] libffi-devel [platform:rpm] openssl-devel [platform:rpm] + +libxml2-dev [platform:dpkg platform:apk] +libxml2-devel [platform:rpm] +libxslt-devel [platform:rpm] +libxslt1-dev [platform:dpkg] +libxslt-dev [platform:apk] + +# RH Mechanisms +python-rhsm-certificates [platform: redhat] + +podman [platform:rpm] python-devel [platform:rpm !platform:rhel-8 !platform:centos-8] python3-devel [platform:rpm !platform:rhel-7 !platform:centos-7] PyYAML [platform:rpm !platform:rhel-8 !platform:centos-8] diff --git a/doc/source/readme.rst b/doc/source/readme.rst index fc64d045e..8ee8a6f10 100644 --- a/doc/source/readme.rst +++ b/doc/source/readme.rst @@ -513,3 +513,106 @@ Finally add a role documentation file at a title, a literal include of the defaults yaml and a literal include of the molecule playbook, or playbooks, used to test the role, which is noted as an "example" playbook. + +Local testing of new roles +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Local testing of new roles can be done in any number of ways, however, +the easiest way is via the script `run-local-test` on a *CentOS 8* machaine. +This script will setup the local work environment to execute tests mimicking +what Zuul does. + +.. warning:: + + This script makes the assumption the executing user has the + ability to escalate privileges and will modify the local system. + +To use this script execute the following command. + +.. code-block:: console + + $ ./scripts/run-local-test ${NEWROLENAME} + +When using the `run-local-test` script, the TRIPLEO_JOB_ANSIBLE_ARGS +environment variable can be used to pass arbitrary Ansible arguments. +For example, the following shows how to use `--skip-tags` when testing +a role with tags. + +.. code-block:: console + + $ export TRIPLEO_JOB_ANSIBLE_ARGS="--skip-tags tag_one,tag_two" + $ ./scripts/run-local-test ${ROLENAME} + +Role based testing with molecule can be executed directly from within +the role directory. + +.. note:: + + All tests require Podman for container based testing. If Podman + is not available on the local workstation it will need to be + installed prior to executing most molecule based tests. + + +.. note:: + + The script `bindep-install`, in the **scripts** path, is + available and will install all system dependencies. + + +.. note:: + + Some roles depend on some packages which are available only through the EPEL + repositories. So, please ensure you have installed them on your CentOS 8 host + before running molecule tests. + + +Before running basic molecule tests, it is recommended to install all +of the python dependencies in a virtual environment. + +.. code-block:: console + + $ python -m virtualenv --system-site-packages "${HOME}/test-python" + $ ${HOME}/test-python/bin/pip install -r requirements.txt \ + -r test-requirements.txt \ + -r molecule-requirements.txt + $ source ${HOME}/test-python/bin/activate + + +Now, it is important to install validations-common and tripleo-ansible as +dependencies. + +.. code-block:: console + + $ cd tripleo-validations/ + $ for REPO in validations-common tripleo-ansible; do + git clone https://opendev.org/openstack/${REPO} roles/roles.galaxy/${REPO} + done + + +To run a basic molecule test, simply source the `ansible-test-env.rc` +file from the project root, and then execute the following commands. + +.. code-block:: console + + (test-python) $ cd roles/${NEWROLENAME}/ + (test-python) $ molecule test --all + + +If a role has more than one scenario, a specific scenario can be +specified on the command line. Running specific scenarios will +help provide developer feedback faster. To pass-in a scenario use +the `--scenario-name` flag with the name of the desired scenario. + +.. code-block:: console + + (test-python) $ cd tripleo-validations/roles/${NEWROLENAME}/ + (test-python) $ molecule test --scenario-name ${EXTRA_SCENARIO_NAME} + + +When debugging molecule tests its sometimes useful to use the +`--debug` flag. This flag will provide extra verbose output about +test being executed and running the environment. + +.. code-block:: console + + (test-python) $ molecule --debug test diff --git a/molecule-requirements.txt b/molecule-requirements.txt index 06f6ca849..8f2ec10f1 100644 --- a/molecule-requirements.txt +++ b/molecule-requirements.txt @@ -1,7 +1,6 @@ # this is required for the molecule jobs ansi2html ansible -docker # https://github.com/sqlalchemy/dogpile.cache/issues/178 dogpile.cache>=0.6.5,<0.9.1 # MIT jinja2>=2.8.0,<3 diff --git a/role-addition.yml b/role-addition.yml index e37f9e22c..f1c5bcf7c 100644 --- a/role-addition.yml +++ b/role-addition.yml @@ -49,7 +49,7 @@ --- {% set items = molecule_yaml['content'] | b64decode | from_yaml %} {% set job_index = [] %} - {% set new_job_name = "tripleo-validations-centos-7-molecule-" ~ _role_name %} + {% set new_job_name = "tripleo-validations-centos-8-molecule-" ~ _role_name %} {% for item in items %} {% if 'project-template' in item %} {% if item['project-template']['name'] == "tripleo-validations-molecule-jobs" %} @@ -69,7 +69,7 @@ {% if (job_index | length) < 1 %} {% set new_job = { "name": new_job_name, - "parent": "tripleo-validations-centos-7-base", + "parent": "tripleo-validations-centos-8-base", "files": [ "^tripleo_validations/roles/" ~ _role_name ~ "/.*" ], diff --git a/roles/ceilometerdb_size/molecule/default/Dockerfile.j2 b/roles/ceilometerdb_size/molecule/default/Dockerfile similarity index 100% rename from roles/ceilometerdb_size/molecule/default/Dockerfile.j2 rename to roles/ceilometerdb_size/molecule/default/Dockerfile diff --git a/roles/ceilometerdb_size/molecule/default/molecule.yml b/roles/ceilometerdb_size/molecule/default/molecule.yml index 980916aef..d4dfe7fd9 100644 --- a/roles/ceilometerdb_size/molecule/default/molecule.yml +++ b/roles/ceilometerdb_size/molecule/default/molecule.yml @@ -1,37 +1,39 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools ruby python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/ceph/molecule/ceph-ansible-installed/molecule.yml b/roles/ceph/molecule/ceph-ansible-installed/molecule.yml index 17188060f..8d66856c6 100644 --- a/roles/ceph/molecule/ceph-ansible-installed/molecule.yml +++ b/roles/ceph/molecule/ceph-ansible-installed/molecule.yml @@ -1,39 +1,42 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com dockerfile: Dockerfile - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - dockerfile: Dockerfile - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 + vars: + ansible_user: root log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: name: ceph-ansible-installed diff --git a/roles/ceph/molecule/ceph-ansible-installed/prepare.yml b/roles/ceph/molecule/ceph-ansible-installed/prepare.yml index 708079f42..c2da0de6e 100644 --- a/roles/ceph/molecule/ceph-ansible-installed/prepare.yml +++ b/roles/ceph/molecule/ceph-ansible-installed/prepare.yml @@ -24,6 +24,6 @@ yum_repository: name: tripleo-centos-ceph-nautilus description: ceph-nautilus repository - baseurl: http://mirror.centos.org/centos/7/storage/x86_64/ceph-nautilus/ + baseurl: http://mirror.centos.org/centos/8/storage/x86_64/ceph-nautilus/ gpgcheck: false enabled: true diff --git a/roles/ceph/molecule/default/molecule.yml b/roles/ceph/molecule/default/molecule.yml index 2b09d56d4..d3c8fa2e1 100644 --- a/roles/ceph/molecule/default/molecule.yml +++ b/roles/ceph/molecule/default/molecule.yml @@ -1,33 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML - easy_install: - - pip + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools + volumes: + - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/check_network_gateway/molecule/default/Dockerfile b/roles/check_network_gateway/molecule/default/Dockerfile index e0534b4d1..c930ca9cb 100644 --- a/roles/check_network_gateway/molecule/default/Dockerfile +++ b/roles/check_network_gateway/molecule/default/Dockerfile @@ -22,7 +22,7 @@ FROM {{ item.image }} {% endif %} RUN if [ $(command -v apt-get) ]; then apt-get update && apt-get install -y python sudo bash ca-certificates && apt-get clean; \ - elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install sudo python*-devel python*-dnf bash {{ item.pkg_extras | default('') }} && dnf clean all; \ + elif [ $(command -v dnf) ]; then dnf makecache && dnf --assumeyes install sudo python*-devel python*-dnf bash https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm {{ item.pkg_extras | default('') }} && dnf clean all; \ elif [ $(command -v yum) ]; then yum makecache fast && yum install -y python sudo yum-plugin-ovl python-setuptools bash {{ item.pkg_extras | default('') }} && sed -i 's/plugins=0/plugins=1/g' /etc/yum.conf && yum clean all; \ elif [ $(command -v zypper) ]; then zypper refresh && zypper install -y python sudo bash python-xml {{ item.pkg_extras | default('') }} && zypper clean -a; \ elif [ $(command -v apk) ]; then apk update && apk add --no-cache python sudo bash ca-certificates {{ item.pkg_extras | default('') }}; \ diff --git a/roles/check_network_gateway/molecule/default/molecule.yml b/roles/check_network_gateway/molecule/default/molecule.yml index a79921548..89ed56d61 100644 --- a/roles/check_network_gateway/molecule/default/molecule.yml +++ b/roles/check_network_gateway/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr epel-release ruby PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*setuptools python*-PyYAML iputils volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby epel-release iputils python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/check_rhsm_version/molecule/default/molecule.yml b/roles/check_rhsm_version/molecule/default/molecule.yml index 646914aa8..fae7f3419 100644 --- a/roles/check_rhsm_version/molecule/default/molecule.yml +++ b/roles/check_rhsm_version/molecule/default/molecule.yml @@ -1,29 +1,41 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com dockerfile: Dockerfile + privileged: true pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible - options: - vvv: true + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_ROLES_PATH: "${ANSIBLE_ROLES_PATH}:${HOME}/zuul-jobs/roles" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/check_rhsm_version/molecule/rhsm_mismatch/molecule.yml b/roles/check_rhsm_version/molecule/rhsm_mismatch/molecule.yml index 646914aa8..6ffbbd33b 100644 --- a/roles/check_rhsm_version/molecule/rhsm_mismatch/molecule.yml +++ b/roles/check_rhsm_version/molecule/rhsm_mismatch/molecule.yml @@ -1,29 +1,43 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com dockerfile: Dockerfile + override_command: true + command: /sbin/init + privileged: true pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible - options: - vvv: true + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_ROLES_PATH: "${ANSIBLE_ROLES_PATH}:${HOME}/zuul-jobs/roles" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/collect_flavors_and_verify_profiles/molecule/default/Dockerfile.j2 b/roles/collect_flavors_and_verify_profiles/molecule/default/Dockerfile similarity index 100% rename from roles/collect_flavors_and_verify_profiles/molecule/default/Dockerfile.j2 rename to roles/collect_flavors_and_verify_profiles/molecule/default/Dockerfile diff --git a/roles/collect_flavors_and_verify_profiles/molecule/default/molecule.yml b/roles/collect_flavors_and_verify_profiles/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/collect_flavors_and_verify_profiles/molecule/default/molecule.yml +++ b/roles/collect_flavors_and_verify_profiles/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/container_status/molecule/default/Dockerfile.j2 b/roles/container_status/molecule/default/Dockerfile similarity index 100% rename from roles/container_status/molecule/default/Dockerfile.j2 rename to roles/container_status/molecule/default/Dockerfile diff --git a/roles/container_status/molecule/default/molecule.yml b/roles/container_status/molecule/default/molecule.yml index 51f993bf4..d3c8fa2e1 100644 --- a/roles/container_status/molecule/default/molecule.yml +++ b/roles/container_status/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML - easy_install: - - pip + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/controller_token/molecule/default/Dockerfile.j2 b/roles/controller_token/molecule/default/Dockerfile similarity index 100% rename from roles/controller_token/molecule/default/Dockerfile.j2 rename to roles/controller_token/molecule/default/Dockerfile diff --git a/roles/controller_token/molecule/default/molecule.yml b/roles/controller_token/molecule/default/molecule.yml index 42c399779..d6d397b26 100644 --- a/roles/controller_token/molecule/default/molecule.yml +++ b/roles/controller_token/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/controller_ulimits/molecule/default/Dockerfile.j2 b/roles/controller_ulimits/molecule/default/Dockerfile similarity index 100% rename from roles/controller_ulimits/molecule/default/Dockerfile.j2 rename to roles/controller_ulimits/molecule/default/Dockerfile diff --git a/roles/controller_ulimits/molecule/default/converge.yml b/roles/controller_ulimits/molecule/default/converge.yml index 9eec7f971..49c463c04 100644 --- a/roles/controller_ulimits/molecule/default/converge.yml +++ b/roles/controller_ulimits/molecule/default/converge.yml @@ -19,20 +19,34 @@ hosts: all gather_facts: false - vars: - nofiles_min: 102400 - nproc_min: 204800 - tasks: - block: - include_role: name: controller_ulimits + vars: + nofiles_min: 102400 + nproc_min: 512 rescue: - name: Clear host errors meta: clear_host_errors - debug: - msg: The validation works! End the playbook run + msg: The validation works for detecting nofiles_min! + + - block: + - include_role: + name: controller_ulimits + vars: + nofiles_min: 512 + nproc_min: 204800 + rescue: + - name: Clear host errors + meta: clear_host_errors + + - debug: + msg: >- + The validation works for detecting noproc_min! + End of playbook run. - name: End play meta: end_play diff --git a/roles/controller_ulimits/molecule/default/molecule.yml b/roles/controller_ulimits/molecule/default/molecule.yml index 0320d5a92..be46efd2f 100644 --- a/roles/controller_ulimits/molecule/default/molecule.yml +++ b/roles/controller_ulimits/molecule/default/molecule.yml @@ -1,39 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - ulimits: &ulimits - - nofile:512:512 - - nproc:512:512 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - ulimits: *ulimits - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true + environment: &env + http_proxy: "{{ lookup('env', 'http_proxy') }}" + https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - nofile=512:512 + - nproc=512:512 provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/ctlplane_ip_range/molecule/default/Dockerfile.j2 b/roles/ctlplane_ip_range/molecule/default/Dockerfile similarity index 100% rename from roles/ctlplane_ip_range/molecule/default/Dockerfile.j2 rename to roles/ctlplane_ip_range/molecule/default/Dockerfile diff --git a/roles/ctlplane_ip_range/molecule/default/molecule.yml b/roles/ctlplane_ip_range/molecule/default/molecule.yml index ca4d02b91..5f17a6a39 100644 --- a/roles/ctlplane_ip_range/molecule/default/molecule.yml +++ b/roles/ctlplane_ip_range/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml + privileged: true volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby epel-release python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/ctlplane_ip_range/molecule/default/prepare.yml b/roles/ctlplane_ip_range/molecule/default/prepare.yml index 832276934..d2a5dd259 100644 --- a/roles/ctlplane_ip_range/molecule/default/prepare.yml +++ b/roles/ctlplane_ip_range/molecule/default/prepare.yml @@ -20,6 +20,11 @@ gather_facts: false tasks: + - name: install python netaddr library + package: + name: python*-netaddr + state: installed + - name: install hiera package: name: hiera diff --git a/roles/dhcp_validations/molecule/default/Dockerfile.j2 b/roles/dhcp_validations/molecule/default/Dockerfile similarity index 100% rename from roles/dhcp_validations/molecule/default/Dockerfile.j2 rename to roles/dhcp_validations/molecule/default/Dockerfile diff --git a/roles/dhcp_validations/molecule/default/molecule.yml b/roles/dhcp_validations/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/dhcp_validations/molecule/default/molecule.yml +++ b/roles/dhcp_validations/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/healthcheck_service_status/molecule/default/Dockerfile.j2 b/roles/healthcheck_service_status/molecule/default/Dockerfile similarity index 100% rename from roles/healthcheck_service_status/molecule/default/Dockerfile.j2 rename to roles/healthcheck_service_status/molecule/default/Dockerfile diff --git a/roles/healthcheck_service_status/molecule/default/molecule.yml b/roles/healthcheck_service_status/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/healthcheck_service_status/molecule/default/molecule.yml +++ b/roles/healthcheck_service_status/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/image_serve/molecule/default/Dockerfile.j2 b/roles/image_serve/molecule/default/Dockerfile similarity index 100% rename from roles/image_serve/molecule/default/Dockerfile.j2 rename to roles/image_serve/molecule/default/Dockerfile diff --git a/roles/image_serve/molecule/default/molecule.yml b/roles/image_serve/molecule/default/molecule.yml index 0eb863c45..ce6e3380d 100644 --- a/roles/image_serve/molecule/default/molecule.yml +++ b/roles/image_serve/molecule/default/molecule.yml @@ -1,48 +1,45 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com etc_hosts: undercloud.ctlplane.mydomain.tld: "127.0.0.1" - image: centos:7 + dockerfile: Dockerfile override_command: true command: /sbin/init privileged: true - pkg_extras: python-setuptools python-enum34 python-netaddr epel-release ruby PyYAML + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - etc_hosts: - undercloud.ctlplane.mydomain.tld: "127.0.0.1" - image: centos:8 - override_command: true - command: /sbin/init - privileged: true - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby epel-release python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: ../../../../library - ANSIBLE_ROLES_PATH: ../../../../roles/roles.galaxy/tripleo-ansible/tripleo-ansible/tripleo_ansible/roles + ANSIBLE_ROLES_PATH: "${ANSIBLE_ROLES_PATH}:${HOME}/zuul-jobs/roles" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/ironic_boot_configuration/molecule/default/Dockerfile.j2 b/roles/ironic_boot_configuration/molecule/default/Dockerfile similarity index 100% rename from roles/ironic_boot_configuration/molecule/default/Dockerfile.j2 rename to roles/ironic_boot_configuration/molecule/default/Dockerfile diff --git a/roles/ironic_boot_configuration/molecule/default/molecule.yml b/roles/ironic_boot_configuration/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/ironic_boot_configuration/molecule/default/molecule.yml +++ b/roles/ironic_boot_configuration/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/mysql_open_files_limit/molecule/default/Dockerfile.j2 b/roles/mysql_open_files_limit/molecule/default/Dockerfile similarity index 100% rename from roles/mysql_open_files_limit/molecule/default/Dockerfile.j2 rename to roles/mysql_open_files_limit/molecule/default/Dockerfile diff --git a/roles/mysql_open_files_limit/molecule/default/molecule.yml b/roles/mysql_open_files_limit/molecule/default/molecule.yml index 51f993bf4..d3c8fa2e1 100644 --- a/roles/mysql_open_files_limit/molecule/default/molecule.yml +++ b/roles/mysql_open_files_limit/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML - easy_install: - - pip + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/network_environment/molecule/default/Dockerfile.j2 b/roles/network_environment/molecule/default/Dockerfile similarity index 100% rename from roles/network_environment/molecule/default/Dockerfile.j2 rename to roles/network_environment/molecule/default/Dockerfile diff --git a/roles/network_environment/molecule/default/molecule.yml b/roles/network_environment/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/network_environment/molecule/default/molecule.yml +++ b/roles/network_environment/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/neutron_sanity_check/molecule/default/Dockerfile.j2 b/roles/neutron_sanity_check/molecule/default/Dockerfile similarity index 100% rename from roles/neutron_sanity_check/molecule/default/Dockerfile.j2 rename to roles/neutron_sanity_check/molecule/default/Dockerfile diff --git a/roles/neutron_sanity_check/molecule/default/molecule.yml b/roles/neutron_sanity_check/molecule/default/molecule.yml index 51f993bf4..d3c8fa2e1 100644 --- a/roles/neutron_sanity_check/molecule/default/molecule.yml +++ b/roles/neutron_sanity_check/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML - easy_install: - - pip + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/no_op_firewall_nova_driver/molecule/default/Dockerfile.j2 b/roles/no_op_firewall_nova_driver/molecule/default/Dockerfile similarity index 100% rename from roles/no_op_firewall_nova_driver/molecule/default/Dockerfile.j2 rename to roles/no_op_firewall_nova_driver/molecule/default/Dockerfile diff --git a/roles/no_op_firewall_nova_driver/molecule/default/molecule.yml b/roles/no_op_firewall_nova_driver/molecule/default/molecule.yml index 6421c4dfd..d6d397b26 100644 --- a/roles/no_op_firewall_nova_driver/molecule/default/molecule.yml +++ b/roles/no_op_firewall_nova_driver/molecule/default/molecule.yml @@ -1,38 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - command: /sbin/init - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/node_disks/molecule/default/Dockerfile.j2 b/roles/node_disks/molecule/default/Dockerfile similarity index 100% rename from roles/node_disks/molecule/default/Dockerfile.j2 rename to roles/node_disks/molecule/default/Dockerfile diff --git a/roles/node_disks/molecule/default/molecule.yml b/roles/node_disks/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/node_disks/molecule/default/molecule.yml +++ b/roles/node_disks/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/node_health/molecule/default/Dockerfile.j2 b/roles/node_health/molecule/default/Dockerfile similarity index 100% rename from roles/node_health/molecule/default/Dockerfile.j2 rename to roles/node_health/molecule/default/Dockerfile diff --git a/roles/node_health/molecule/default/molecule.yml b/roles/node_health/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/node_health/molecule/default/molecule.yml +++ b/roles/node_health/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/nova_event_callback/molecule/default/Dockerfile.j2 b/roles/nova_event_callback/molecule/default/Dockerfile similarity index 100% rename from roles/nova_event_callback/molecule/default/Dockerfile.j2 rename to roles/nova_event_callback/molecule/default/Dockerfile diff --git a/roles/nova_event_callback/molecule/default/molecule.yml b/roles/nova_event_callback/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/nova_event_callback/molecule/default/molecule.yml +++ b/roles/nova_event_callback/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/nova_status/molecule/default/Dockerfile.j2 b/roles/nova_status/molecule/default/Dockerfile similarity index 100% rename from roles/nova_status/molecule/default/Dockerfile.j2 rename to roles/nova_status/molecule/default/Dockerfile diff --git a/roles/nova_status/molecule/default/molecule.yml b/roles/nova_status/molecule/default/molecule.yml index 42c399779..8afc48656 100644 --- a/roles/nova_status/molecule/default/molecule.yml +++ b/roles/nova_status/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-enum34 python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/nova_svirt/molecule/default/molecule.yml b/roles/nova_svirt/molecule/default/molecule.yml index 8f2b8a064..97c395a60 100644 --- a/roles/nova_svirt/molecule/default/molecule.yml +++ b/roles/nova_svirt/molecule/default/molecule.yml @@ -1,39 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com dockerfile: Dockerfile - pkg_extras: python-setuptools python-lxml + pkg_extras: python*-setuptools + privileged: true volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - dockerfile: Dockerfile - pkg_extras: python*-setuptools python*-lxml - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/nova_svirt/molecule/default/prepare.yml b/roles/nova_svirt/molecule/default/prepare.yml index 0b557b415..ee5699658 100644 --- a/roles/nova_svirt/molecule/default/prepare.yml +++ b/roles/nova_svirt/molecule/default/prepare.yml @@ -18,6 +18,11 @@ - name: Prepare hosts: all tasks: + - name: Install python lxml library + package: + name: python*-lxml + state: present + - name: Create directory tree file: path: "{{ item }}" diff --git a/roles/openshift_on_openstack/molecule/default/Dockerfile.j2 b/roles/openshift_on_openstack/molecule/default/Dockerfile similarity index 100% rename from roles/openshift_on_openstack/molecule/default/Dockerfile.j2 rename to roles/openshift_on_openstack/molecule/default/Dockerfile diff --git a/roles/openshift_on_openstack/molecule/default/molecule.yml b/roles/openshift_on_openstack/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/openshift_on_openstack/molecule/default/molecule.yml +++ b/roles/openshift_on_openstack/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/openstack_endpoints/molecule/default/Dockerfile.j2 b/roles/openstack_endpoints/molecule/default/Dockerfile similarity index 100% rename from roles/openstack_endpoints/molecule/default/Dockerfile.j2 rename to roles/openstack_endpoints/molecule/default/Dockerfile diff --git a/roles/openstack_endpoints/molecule/default/molecule.yml b/roles/openstack_endpoints/molecule/default/molecule.yml index 51f993bf4..d3c8fa2e1 100644 --- a/roles/openstack_endpoints/molecule/default/molecule.yml +++ b/roles/openstack_endpoints/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML - easy_install: - - pip + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/ovs_dpdk_pmd/molecule/default/Dockerfile.j2 b/roles/ovs_dpdk_pmd/molecule/default/Dockerfile similarity index 100% rename from roles/ovs_dpdk_pmd/molecule/default/Dockerfile.j2 rename to roles/ovs_dpdk_pmd/molecule/default/Dockerfile diff --git a/roles/ovs_dpdk_pmd/molecule/default/molecule.yml b/roles/ovs_dpdk_pmd/molecule/default/molecule.yml index 51f993bf4..d6d397b26 100644 --- a/roles/ovs_dpdk_pmd/molecule/default/molecule.yml +++ b/roles/ovs_dpdk_pmd/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML - easy_install: - - pip + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/pacemaker_status/molecule/default/Dockerfile.j2 b/roles/pacemaker_status/molecule/default/Dockerfile similarity index 100% rename from roles/pacemaker_status/molecule/default/Dockerfile.j2 rename to roles/pacemaker_status/molecule/default/Dockerfile diff --git a/roles/pacemaker_status/molecule/default/molecule.yml b/roles/pacemaker_status/molecule/default/molecule.yml index 980916aef..d6d397b26 100644 --- a/roles/pacemaker_status/molecule/default/molecule.yml +++ b/roles/pacemaker_status/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/rabbitmq_limits/molecule/default/Dockerfile.j2 b/roles/rabbitmq_limits/molecule/default/Dockerfile similarity index 100% rename from roles/rabbitmq_limits/molecule/default/Dockerfile.j2 rename to roles/rabbitmq_limits/molecule/default/Dockerfile diff --git a/roles/rabbitmq_limits/molecule/default/molecule.yml b/roles/rabbitmq_limits/molecule/default/molecule.yml index 3e6603cb8..d3c8fa2e1 100644 --- a/roles/rabbitmq_limits/molecule/default/molecule.yml +++ b/roles/rabbitmq_limits/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true + environment: &env + http_proxy: "{{ lookup('env', 'http_proxy') }}" + https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/repos/molecule/default/Dockerfile.j2 b/roles/repos/molecule/default/Dockerfile similarity index 100% rename from roles/repos/molecule/default/Dockerfile.j2 rename to roles/repos/molecule/default/Dockerfile diff --git a/roles/repos/molecule/default/molecule.yml b/roles/repos/molecule/default/molecule.yml index 0ce6f867a..d3c8fa2e1 100644 --- a/roles/repos/molecule/default/molecule.yml +++ b/roles/repos/molecule/default/molecule.yml @@ -1,36 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true + environment: &env + http_proxy: "{{ lookup('env', 'http_proxy') }}" + https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/repos/molecule/default/verify.yml b/roles/repos/molecule/default/verify.yml deleted file mode 100644 index dfd4c7352..000000000 --- a/roles/repos/molecule/default/verify.yml +++ /dev/null @@ -1,15 +0,0 @@ ---- -# Copyright 2019 Red Hat, Inc. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. diff --git a/roles/stack_health/molecule/default/Dockerfile.j2 b/roles/stack_health/molecule/default/Dockerfile similarity index 100% rename from roles/stack_health/molecule/default/Dockerfile.j2 rename to roles/stack_health/molecule/default/Dockerfile diff --git a/roles/stack_health/molecule/default/molecule.yml b/roles/stack_health/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/stack_health/molecule/default/molecule.yml +++ b/roles/stack_health/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/stonith_exists/molecule/default/Dockerfile.j2 b/roles/stonith_exists/molecule/default/Dockerfile similarity index 100% rename from roles/stonith_exists/molecule/default/Dockerfile.j2 rename to roles/stonith_exists/molecule/default/Dockerfile diff --git a/roles/stonith_exists/molecule/default/molecule.yml b/roles/stonith_exists/molecule/default/molecule.yml index 0ce6f867a..d3c8fa2e1 100644 --- a/roles/stonith_exists/molecule/default/molecule.yml +++ b/roles/stonith_exists/molecule/default/molecule.yml @@ -1,36 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true + environment: &env + http_proxy: "{{ lookup('env', 'http_proxy') }}" + https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/switch_vlans/molecule/default/Dockerfile.j2 b/roles/switch_vlans/molecule/default/Dockerfile similarity index 100% rename from roles/switch_vlans/molecule/default/Dockerfile.j2 rename to roles/switch_vlans/molecule/default/Dockerfile diff --git a/roles/switch_vlans/molecule/default/molecule.yml b/roles/switch_vlans/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/switch_vlans/molecule/default/molecule.yml +++ b/roles/switch_vlans/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/system_encoding/molecule/default/molecule.yml b/roles/system_encoding/molecule/default/molecule.yml index 106126d92..d3c8fa2e1 100644 --- a/roles/system_encoding/molecule/default/molecule.yml +++ b/roles/system_encoding/molecule/default/molecule.yml @@ -1,39 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - dockerfile: Dockerfile - pkg_extras: python-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com dockerfile: Dockerfile pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true + environment: &env + http_proxy: "{{ lookup('env', 'http_proxy') }}" + https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/tls_everywhere/molecule/default/Dockerfile.j2 b/roles/tls_everywhere/molecule/default/Dockerfile similarity index 100% rename from roles/tls_everywhere/molecule/default/Dockerfile.j2 rename to roles/tls_everywhere/molecule/default/Dockerfile diff --git a/roles/tls_everywhere/molecule/default/molecule.yml b/roles/tls_everywhere/molecule/default/molecule.yml index 980916aef..5159092f3 100644 --- a/roles/tls_everywhere/molecule/default/molecule.yml +++ b/roles/tls_everywhere/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml krb5-workstation volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/undercloud_debug/molecule/default/Dockerfile.j2 b/roles/undercloud_debug/molecule/default/Dockerfile similarity index 100% rename from roles/undercloud_debug/molecule/default/Dockerfile.j2 rename to roles/undercloud_debug/molecule/default/Dockerfile diff --git a/roles/undercloud_debug/molecule/default/molecule.yml b/roles/undercloud_debug/molecule/default/molecule.yml index 42c399779..d6d397b26 100644 --- a/roles/undercloud_debug/molecule/default/molecule.yml +++ b/roles/undercloud_debug/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/undercloud_disk_space/molecule/default/Dockerfile.j2 b/roles/undercloud_disk_space/molecule/default/Dockerfile similarity index 100% rename from roles/undercloud_disk_space/molecule/default/Dockerfile.j2 rename to roles/undercloud_disk_space/molecule/default/Dockerfile diff --git a/roles/undercloud_disk_space/molecule/default/molecule.yml b/roles/undercloud_disk_space/molecule/default/molecule.yml index 0ce6f867a..d3c8fa2e1 100644 --- a/roles/undercloud_disk_space/molecule/default/molecule.yml +++ b/roles/undercloud_disk_space/molecule/default/molecule.yml @@ -1,36 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip - environment: &env - http_proxy: "{{ lookup('env', 'http_proxy') }}" - https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true + environment: &env + http_proxy: "{{ lookup('env', 'http_proxy') }}" + https_proxy: "{{ lookup('env', 'https_proxy') }}" + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/undercloud_heat_purge_deleted/molecule/default/Dockerfile.j2 b/roles/undercloud_heat_purge_deleted/molecule/default/Dockerfile similarity index 100% rename from roles/undercloud_heat_purge_deleted/molecule/default/Dockerfile.j2 rename to roles/undercloud_heat_purge_deleted/molecule/default/Dockerfile diff --git a/roles/undercloud_heat_purge_deleted/molecule/default/molecule.yml b/roles/undercloud_heat_purge_deleted/molecule/default/molecule.yml index 6138aefd9..d6d397b26 100644 --- a/roles/undercloud_heat_purge_deleted/molecule/default/molecule.yml +++ b/roles/undercloud_heat_purge_deleted/molecule/default/molecule.yml @@ -1,41 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - override_command: true - command: python -m SimpleHTTPServer 8787 - pkg_extras: python-setuptools python-enum34 python-netaddr epel-release ruby PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - override_command: true - command: python3 -m http.server 8787 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby epel-release python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/undercloud_process_count/molecule/default/Dockerfile.j2 b/roles/undercloud_process_count/molecule/default/Dockerfile similarity index 100% rename from roles/undercloud_process_count/molecule/default/Dockerfile.j2 rename to roles/undercloud_process_count/molecule/default/Dockerfile diff --git a/roles/undercloud_process_count/molecule/default/molecule.yml b/roles/undercloud_process_count/molecule/default/molecule.yml index 980916aef..d3c8fa2e1 100644 --- a/roles/undercloud_process_count/molecule/default/molecule.yml +++ b/roles/undercloud_process_count/molecule/default/molecule.yml @@ -1,37 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - pkg_extras: python-setuptools python-enum34 python-netaddr ruby epel-release PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/undercloud_tokenflush/molecule/default/Dockerfile.j2 b/roles/undercloud_tokenflush/molecule/default/Dockerfile similarity index 100% rename from roles/undercloud_tokenflush/molecule/default/Dockerfile.j2 rename to roles/undercloud_tokenflush/molecule/default/Dockerfile diff --git a/roles/undercloud_tokenflush/molecule/default/molecule.yml b/roles/undercloud_tokenflush/molecule/default/molecule.yml index 6138aefd9..d6d397b26 100644 --- a/roles/undercloud_tokenflush/molecule/default/molecule.yml +++ b/roles/undercloud_tokenflush/molecule/default/molecule.yml @@ -1,41 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - override_command: true - command: python -m SimpleHTTPServer 8787 - pkg_extras: python-setuptools python-enum34 python-netaddr epel-release ruby PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - override_command: true - command: python3 -m http.server 8787 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby epel-release python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/roles/undercloud_tokenflush/molecule/non-persistent-token-format/Dockerfile.j2 b/roles/undercloud_tokenflush/molecule/non-persistent-token-format/Dockerfile similarity index 100% rename from roles/undercloud_tokenflush/molecule/non-persistent-token-format/Dockerfile.j2 rename to roles/undercloud_tokenflush/molecule/non-persistent-token-format/Dockerfile diff --git a/roles/undercloud_tokenflush/molecule/non-persistent-token-format/molecule.yml b/roles/undercloud_tokenflush/molecule/non-persistent-token-format/molecule.yml index 6138aefd9..d6d397b26 100644 --- a/roles/undercloud_tokenflush/molecule/non-persistent-token-format/molecule.yml +++ b/roles/undercloud_tokenflush/molecule/non-persistent-token-format/molecule.yml @@ -1,41 +1,40 @@ --- driver: - name: docker + name: podman log: true platforms: - - name: centos7 - hostname: centos7 - image: centos:7 - override_command: true - command: python -m SimpleHTTPServer 8787 - pkg_extras: python-setuptools python-enum34 python-netaddr epel-release ruby PyYAML + - name: ubi8 + hostname: ubi8 + image: ubi8/ubi-init + registry: + url: registry.access.redhat.com + dockerfile: Dockerfile + pkg_extras: python*-setuptools python*-pyyaml volumes: - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - easy_install: - - pip + - /etc/pki/rpm-gpg:/etc/pki/rpm-gpg + - /opt/yum.repos.d:/etc/yum.repos.d:rw + privileged: true environment: &env http_proxy: "{{ lookup('env', 'http_proxy') }}" https_proxy: "{{ lookup('env', 'https_proxy') }}" - - - name: centos8 - hostname: centos8 - image: centos:8 - override_command: true - command: python3 -m http.server 8787 - pkg_extras: python*-setuptools python*-enum34 python*-netaddr ruby epel-release python*-PyYAML - volumes: - - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro - environment: - <<: *env + ulimits: &ulimit + - host provisioner: name: ansible + inventory: + hosts: + all: + hosts: + ubi8: + ansible_python_interpreter: /usr/bin/python3 log: true env: ANSIBLE_STDOUT_CALLBACK: yaml - ANSIBLE_LIBRARY: "../../../../library" + ANSIBLE_LIBRARY: "${ANSIBLE_LIBRARY:-/usr/share/ansible/plugins/modules}" scenario: test_sequence: diff --git a/scripts/run-local-test b/scripts/run-local-test index aa03e85c9..debd1a0f9 100755 --- a/scripts/run-local-test +++ b/scripts/run-local-test @@ -24,7 +24,7 @@ set -xeuo export PROJECT_DIR="$(dirname $(readlink -f ${BASH_SOURCE[0]}))/../" export ROLE_NAME="${ROLE_NAME:-$1}" -export TRIPLEO_JOB_ANSIBLE_ARGS=${TRIPLEO_JOB_ANSIBLE_ARGS:-"-v"} +export TRIPLEO_JOB_ANSIBLE_ARGS=${TRIPLEO_JOB_ANSIBLE_ARGS:-""} ## Main ---------------------------------------------------------------------- @@ -40,6 +40,10 @@ case "${ID,,}" in ;; esac +# Ensure the required ci file is present +sudo mkdir -p /etc/ci +sudo touch /etc/ci/mirror_info.sh + # Create a virtual env "${PYTHON_EXEC}" -m virtualenv --system-site-packages "${HOME}/test-python" @@ -67,4 +71,5 @@ ansible-playbook -i "${PROJECT_DIR}/tests/hosts.ini" \ -e "ansible_user=${USER}" \ -e "ansible_user_dir=${HOME}" \ "${PROJECT_DIR}/tests/prepare-test-host.yml" \ - "${PROJECT_DIR}/zuul.d/playbooks/run-local.yml" + "${PROJECT_DIR}/ci/playbooks/run-local.yml" \ + -v diff --git a/tools/test-setup.sh b/tools/test-setup.sh deleted file mode 100755 index e3179bf91..000000000 --- a/tools/test-setup.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -set -euxo pipefail -# Used by Zuul CI to perform extra bootstrapping - -# Workaround for a potential: -# Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock -# See https://docs.docker.com/install/linux/linux-postinstall/ -newgrp docker || true diff --git a/zuul.d/molecule.yaml b/zuul.d/molecule.yaml index 516355b68..d805c44c0 100644 --- a/zuul.d/molecule.yaml +++ b/zuul.d/molecule.yaml @@ -249,6 +249,7 @@ parent: tripleo-validations-centos-8-base vars: tripleo_validations_role_name: image_serve + voting: false - job: files: - ^roles/check_network_gateway/.* diff --git a/zuul.d/playbooks/pre.yml b/zuul.d/playbooks/pre.yml index 41bf17793..c40926942 100644 --- a/zuul.d/playbooks/pre.yml +++ b/zuul.d/playbooks/pre.yml @@ -1,11 +1,19 @@ --- - hosts: all pre_tasks: + - name: Set project path fact + set_fact: + tripleo_validations_project_path: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/tripleo-validations'].src_dir }}" + - name: Ensure output dirs file: path: "{{ ansible_user_dir }}/zuul-output/logs" state: directory + - name: Ensure pip is available + include_role: + name: ensure-pip + - name: Ensure virtualenv is available include_role: name: ensure-virtualenv @@ -14,12 +22,13 @@ pip: name: "bindep" virtualenv: "{{ ansible_user_dir }}/test-python" + virtualenv_command: "{{ ensure_pip_virtualenv_command }}" virtualenv_site_packages: true - name: Run bindep shell: |- . {{ ansible_user_dir }}/test-python/bin/activate - {{ ansible_user_dir }}/{{ zuul.project.src_dir }}/scripts/bindep-install + {{ tripleo_validations_project_path }}/scripts/bindep-install become: true changed_when: false @@ -31,18 +40,81 @@ - name: Setup test-python pip: - requirements: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/molecule-requirements.txt" + requirements: "{{ tripleo_validations_project_path }}/molecule-requirements.txt" virtualenv: "{{ ansible_user_dir }}/test-python" + virtualenv_command: "{{ ensure_pip_virtualenv_command }}" virtualenv_site_packages: true - tasks: - - name: Get Ansible Galaxy roles - command: >- - {{ ansible_user_dir }}/test-python/bin/ansible-galaxy install - -fr - {{ ansible_user_dir }}/{{ zuul.project.src_dir }}/ansible-role-requirements.yml - environment: - ANSIBLE_ROLES_PATH: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/roles/roles.galaxy" + - name: Display test-python virtualenv package versions + shell: |- + . {{ ansible_user_dir }}/test-python/bin/activate + pip freeze - roles: - - role: ensure-docker + - name: Basic ci setup + become: true + block: + - name: Ensure ci directories + file: + path: "/etc/ci" + state: "directory" + + - name: Ensure ci mirror file + file: + path: "/etc/ci/mirror_info.sh" + state: "touch" + + - name: Set an appropriate fs.file-max + sysctl: + name: fs.file-max + value: 2048000 + sysctl_set: true + state: present + reload: true + + - name: Set container_manage_cgroup boolean + seboolean: + name: container_manage_cgroup + state: true + persistent: true + failed_when: false + + - name: Create limits file for containers + copy: + content: | + * soft nofile 102400 + * hard nofile 204800 + * soft nproc 2048 + * hard nproc 4096 + dest: /etc/security/limits.d/containers.conf + + - name: Install epel-release + package: + name: epel-release + state: present + + - name: Be sure to enable epel repo + become: true + command: >- + dnf config-manager --set-enabled epel + args: + warn: false + + - name: Copy repos directory to opt workspace + copy: + src: /etc/yum.repos.d + dest: /opt/ + remote_src: true + mode: "0777" + + - name: Reset ssh connection + meta: reset_connection + tasks: + - name: Get necessary git repos + git: + repo: https://opendev.org/openstack/{{ item }} + dest: "{{ tripleo_validations_project_path }}/roles/roles.galaxy/{{ item }}" + version: master + force: true + with_items: + - tripleo-ansible + - validations-common diff --git a/zuul.d/playbooks/run-local.yml b/zuul.d/playbooks/run-local.yml index cd0f83e27..af5295db3 100644 --- a/zuul.d/playbooks/run-local.yml +++ b/zuul.d/playbooks/run-local.yml @@ -4,8 +4,9 @@ - name: set basic zuul fact set_fact: zuul: - project: - src_dir: "{{ tripleo_src }}" + projects: + "opendev.org/openstack/tripleo-validations": + src_dir: "{{ tripleo_src }}" ansible_connection: ssh - import_playbook: pre.yml