From 96a024d09c68cb22433434af167938578cde242d Mon Sep 17 00:00:00 2001 From: Bikram Sharma Date: Wed, 29 Apr 2026 12:42:03 -0700 Subject: [PATCH] ci: Add daily CI for v4.x maintenance branch Add branch matrix strategy to daily CI workflow so it runs against both master and v4.x branches. This ensures the v4.x maintenance branch is tested daily to catch dependency rot and regressions. - Add branch input to shared-ci.yml and ci.yml reusable workflows - Use ref parameter in checkout step to support branch selection - Add [master, v4.x] matrix to daily_ci.yml --- .github/workflows/ci.yml | 12 +++++++++++- .github/workflows/daily_ci.yml | 5 +++++ .github/workflows/shared-ci.yml | 6 ++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e299c7349..a06f052fb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,11 +4,21 @@ permissions: contents: read id-token: write -on: [pull_request, workflow_call] +on: + pull_request: + workflow_call: + inputs: + branch: + description: "Branch to checkout" + required: false + default: master + type: string jobs: shared-ci: uses: ./.github/workflows/shared-ci.yml + with: + branch: ${{ inputs.branch || 'master' }} pr-ci-all-required: if: always() needs: diff --git a/.github/workflows/daily_ci.yml b/.github/workflows/daily_ci.yml index f0f562570..9eb7d08f7 100644 --- a/.github/workflows/daily_ci.yml +++ b/.github/workflows/daily_ci.yml @@ -15,7 +15,12 @@ jobs: DAILY_CI: # Don't run the cron builds on forks if: github.event_name != 'schedule' || github.repository_owner == 'aws' + strategy: + matrix: + branch: [master, v4.x] uses: ./.github/workflows/ci.yml + with: + branch: ${{ matrix.branch }} notify: needs: [ diff --git a/.github/workflows/shared-ci.yml b/.github/workflows/shared-ci.yml index 88233a595..045c5e553 100644 --- a/.github/workflows/shared-ci.yml +++ b/.github/workflows/shared-ci.yml @@ -3,6 +3,11 @@ name: Shared CI Tests on: workflow_call: inputs: + branch: + description: "Branch to checkout" + required: false + default: master + type: string test-published-packages: description: 'Test against published packages instead of checked out code' required: false @@ -34,6 +39,7 @@ jobs: # Always need repo for test scripts and configuration, even when testing published packages uses: actions/checkout@v4 with: + ref: ${{ inputs.branch }} fetch-depth: 0 submodules: true