From 9f7ce5d69b2282eab12391bd69f9674724deb339 Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Fri, 13 Mar 2026 09:26:51 -0600 Subject: [PATCH] ci: tox-lsr 3.17.1 - previous update broke container tests, this fixes them [citest_skip] tox-lsr 3.17.1 has a fix for the broken container tests There was one shell function for both setting up the callback plugins and the connection plugin. When this function was skipped, the ANSIBLE_CONNECTION_PLUGINS environment variable was not set, so all subsequent tests failed. The connection plugin must be present and the env. var. must be set in order to run any container tests. The code was fixed to ensure that there is always a connection plugin installed in the correct location and that ANSIBLE_CONNECTION_PLUGINS is always set and contains this path. Also, setting up the callback plugins and the connection plugin is already idempotent, so no reason to skip them. Signed-off-by: Rich Megginson --- .github/workflows/ansible-lint.yml | 2 +- .../workflows/ansible-managed-var-comment.yml | 2 +- .github/workflows/ansible-test.yml | 2 +- .../workflows/qemu-kvm-integration-tests.yml | 17 +++++++++-------- 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ansible-lint.yml b/.github/workflows/ansible-lint.yml index 8cd9a59..b64f48e 100644 --- a/.github/workflows/ansible-lint.yml +++ b/.github/workflows/ansible-lint.yml @@ -35,7 +35,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.16.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.17.1" - name: Convert role to collection format id: collection diff --git a/.github/workflows/ansible-managed-var-comment.yml b/.github/workflows/ansible-managed-var-comment.yml index adeffab..5d408f6 100644 --- a/.github/workflows/ansible-managed-var-comment.yml +++ b/.github/workflows/ansible-managed-var-comment.yml @@ -33,7 +33,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.16.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.17.1" - name: Run ansible-plugin-scan run: | diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index c766b2e..2df187a 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.yml @@ -36,7 +36,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.16.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.17.1" - name: Convert role to collection format run: | diff --git a/.github/workflows/qemu-kvm-integration-tests.yml b/.github/workflows/qemu-kvm-integration-tests.yml index e66e78d..2bcb450 100644 --- a/.github/workflows/qemu-kvm-integration-tests.yml +++ b/.github/workflows/qemu-kvm-integration-tests.yml @@ -31,7 +31,7 @@ jobs: - { image: "centos-9", env: "qemu-ansible-core-2-16" } - { image: "centos-10", env: "qemu-ansible-core-2-17" } - { image: "fedora-42", env: "qemu-ansible-core-2-19" } - - { image: "fedora-43", env: "qemu-ansible-core-2-19" } + - { image: "fedora-43", env: "qemu-ansible-core-2-20" } - { image: "leap-15.6", env: "qemu-ansible-core-2-18" } # container @@ -41,9 +41,9 @@ jobs: # - { image: "centos-10", env: "container-ansible-core-2-17" } - { image: "centos-10-bootc", env: "container-ansible-core-2-17" } - { image: "fedora-42", env: "container-ansible-core-2-17" } - - { image: "fedora-43", env: "container-ansible-core-2-19" } + - { image: "fedora-43", env: "container-ansible-core-2-20" } - { image: "fedora-42-bootc", env: "container-ansible-core-2-17" } - - { image: "fedora-43-bootc", env: "container-ansible-core-2-19" } + - { image: "fedora-43-bootc", env: "container-ansible-core-2-20" } env: TOX_ARGS: "--skip-tags tests::infiniband,tests::nvme,tests::scsi" @@ -75,7 +75,7 @@ jobs: # bootc build support (in buildah) has a separate flag if [ "${{ matrix.scenario.image }}" != "$image" ]; then - if ! yq -e '.galaxy_info.galaxy_tags[] | select(. == "containerbuild")' meta/main.yml; then + if ! yq -e '.galaxy_info.galaxy_tags[] | select(. == "containerbuild")' meta/main.yml; then supported= fi else @@ -110,7 +110,7 @@ jobs: python3 -m pip install --upgrade pip sudo apt update sudo apt install -y --no-install-recommends git ansible-core genisoimage qemu-system-x86 - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.16.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.17.1" # HACK: Drop this when moving this workflow to 26.04 LTS - name: Update podman to 5.x for compatibility with bootc-image-builder's podman 5 @@ -175,10 +175,9 @@ jobs: if: steps.check_platform.outputs.supported && startsWith(matrix.scenario.env, 'container') run: | set -euo pipefail - # HACK: debug.py/profile.py setup is broken - export LSR_CONTAINER_PROFILE=false - export LSR_CONTAINER_PRETTY=false rc=0 + # we cannot skip these on the first test + export SKIP_REQUIREMENTS=false for t in tests/tests_*.yml; do if tox -e ${{ matrix.scenario.env }} -- --image-name ${{ matrix.scenario.image }} $t > ${t}.log 2>&1; then echo "PASS: $(basename $t)" @@ -188,6 +187,8 @@ jobs: mv "${t}.log" "${t}-FAIL.log" rc=1 fi + # we can skip these on subsequent runs + export SKIP_REQUIREMENTS=true done exit $rc