From a4edad6205b87ac0ce73b39d50d71f6614fc3281 Mon Sep 17 00:00:00 2001 From: Rich Megginson Date: Fri, 5 Sep 2025 15:52:49 -0600 Subject: [PATCH] ci: rollout several recent changes to CI testing * Pass in a YAML true value as `__bootc_validation: true` using the --extra-vars option to ensure that `__bootc_validation` is treated as a boolean and not a string value. `-e "__bootc_validation: true"` You can also use JSON format: `-e '{"__bootc_validation": true}'` but YAML is simpler in this case. * Use tox-lsr version 3.11.1 * Ensure the citest bad comment works when the test was cancelled in addition to the failure case. * Update contributing.md documentation * Update number of nodes to use in testing farm, if needed * remove unnecessary ansible-lint skips Signed-off-by: Rich Megginson --- .github/workflows/ansible-lint.yml | 2 +- .github/workflows/ansible-managed-var-comment.yml | 2 +- .github/workflows/ansible-test.yml | 2 +- .github/workflows/python-unit-test.yml | 2 +- .github/workflows/qemu-kvm-integration-tests.yml | 4 ++-- .github/workflows/tft_citest_bad.yml | 3 ++- 6 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ansible-lint.yml b/.github/workflows/ansible-lint.yml index d7b2d794..4c4c55db 100644 --- a/.github/workflows/ansible-lint.yml +++ b/.github/workflows/ansible-lint.yml @@ -32,7 +32,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.11.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.11.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 c49f06ba..7adb96d3 100644 --- a/.github/workflows/ansible-managed-var-comment.yml +++ b/.github/workflows/ansible-managed-var-comment.yml @@ -30,7 +30,7 @@ jobs: - name: Install tox, tox-lsr run: | set -euxo pipefail - pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.11.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.11.1" - name: Run ansible-plugin-scan run: | diff --git a/.github/workflows/ansible-test.yml b/.github/workflows/ansible-test.yml index 89a8416a..9e13e5e3 100644 --- a/.github/workflows/ansible-test.yml +++ b/.github/workflows/ansible-test.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.11.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.11.1" - name: Convert role to collection format run: | diff --git a/.github/workflows/python-unit-test.yml b/.github/workflows/python-unit-test.yml index 75858536..9ed71a3e 100644 --- a/.github/workflows/python-unit-test.yml +++ b/.github/workflows/python-unit-test.yml @@ -67,7 +67,7 @@ jobs: tox=tox virtualenv=virtualenv fi - pip install "$tox" "$virtualenv" "git+https://github.com/linux-system-roles/tox-lsr@3.11.0" + pip install "$tox" "$virtualenv" "git+https://github.com/linux-system-roles/tox-lsr@3.11.1" # If you have additional OS dependency packages e.g. libcairo2-dev # then put them in .github/config/ubuntu-requirements.txt, one # package per line. diff --git a/.github/workflows/qemu-kvm-integration-tests.yml b/.github/workflows/qemu-kvm-integration-tests.yml index da466f02..f9fc5b49 100644 --- a/.github/workflows/qemu-kvm-integration-tests.yml +++ b/.github/workflows/qemu-kvm-integration-tests.yml @@ -105,7 +105,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.11.0" + pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.11.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 @@ -199,7 +199,7 @@ jobs: if tox -e "$env" -- --image-file "$(pwd)/$image_file" \ --log-level debug $TOX_ARGS \ --lsr-report-errors-url DEFAULT \ - -e __bootc_validation=true \ + -e "__bootc_validation: true" \ -- "$test" >out 2>&1; then mv out "${test}-PASS.log" else diff --git a/.github/workflows/tft_citest_bad.yml b/.github/workflows/tft_citest_bad.yml index b78c813e..ea4bd674 100644 --- a/.github/workflows/tft_citest_bad.yml +++ b/.github/workflows/tft_citest_bad.yml @@ -33,8 +33,9 @@ jobs: echo "The workflow $PENDING_RUN is still running, wait for it to finish to re-run" exit 1 fi + # TF tests can fail or can be cancelled due to TF internal issues RUN_ID=$(gh api "repos/$REPO/actions/workflows/tft.yml/runs?event=issue_comment" \ - | jq -r "[.workflow_runs[] | select( .display_title == \"$PR_TITLE\" ) | select( .conclusion == \"failure\" ) | .id][0]") + | jq -r "[.workflow_runs[] | select( .display_title == \"$PR_TITLE\" ) | select( .conclusion == \"failure\" or .conclusion == \"cancelled\" ) | .id][0]") if [ "$RUN_ID" = "null" ]; then echo "Failed workflow not found, exiting" exit 1