From cc62d038217662bd47778845ba969c3d61227165 Mon Sep 17 00:00:00 2001 From: Rhuan Barreto Date: Thu, 28 May 2026 22:28:08 +0200 Subject: [PATCH] fix(ci): detect workflow changes that affect shim tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The shim-changes detection job only checked for file changes under shims/, missing changes to the workflow files themselves (e.g., action version bumps, runtime version changes). This meant a Renovate PR bumping Ruby 3.3→3.4 in the shim-tests job would skip tests entirely. Extend the git diff paths to also include publish-shims.yml and code-pull-request.yml so shim tests run when their CI infrastructure changes. Signed-off-by: Rhuan Barreto --- .github/workflows/code-pull-request.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/code-pull-request.yml b/.github/workflows/code-pull-request.yml index e3d9d415..a43bcde3 100644 --- a/.github/workflows/code-pull-request.yml +++ b/.github/workflows/code-pull-request.yml @@ -86,10 +86,15 @@ jobs: - name: Check for shim changes id: changes run: | + # Detect changes to shim source code AND workflow files that configure + # shim test/publish infrastructure (e.g., action version bumps, runtime + # version changes). Without checking workflow files, a Renovate PR that + # bumps Ruby 3.3→3.4 in the shim-tests job would skip tests entirely. + PATHS="shims/ .github/workflows/publish-shims.yml .github/workflows/code-pull-request.yml" if [ "${{ github.event_name }}" = "pull_request" ]; then - CHANGED=$(git diff --name-only origin/${{ github.base_ref }}...HEAD -- shims/ || true) + CHANGED=$(git diff --name-only origin/${{ github.base_ref }}...HEAD -- $PATHS || true) else - CHANGED=$(git diff --name-only HEAD~1 -- shims/ || true) + CHANGED=$(git diff --name-only HEAD~1 -- $PATHS || true) fi if [ -n "$CHANGED" ]; then echo "shims_changed=true" >> "$GITHUB_OUTPUT"