From aaf22dec897850621d7d3bc1239bcb02dcacf017 Mon Sep 17 00:00:00 2001 From: Techassi Date: Tue, 11 Aug 2026 13:29:22 +0200 Subject: [PATCH 1/3] ci: Bump stackabletech/actions to v0.17.1 --- .github/workflows/pr_prek.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr_prek.yml b/.github/workflows/pr_prek.yml index 366ae229..ea0b071a 100644 --- a/.github/workflows/pr_prek.yml +++ b/.github/workflows/pr_prek.yml @@ -19,6 +19,6 @@ jobs: with: persist-credentials: false fetch-depth: 0 - - uses: stackabletech/actions/run-prek@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + - uses: stackabletech/actions/run-prek@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: hadolint: ${{ env.HADOLINT_VERSION }} From 1d26b0be6dc54e396bfefbf671a089da2bb2f9a6 Mon Sep 17 00:00:00 2001 From: Techassi Date: Tue, 11 Aug 2026 13:32:24 +0200 Subject: [PATCH 2/3] ci(template): Bump stackabletech/actions to v0.17.1 --- template/.github/workflows/build.yaml.j2 | 22 +++++++++---------- .../.github/workflows/integration-test.yml | 4 ++-- template/.github/workflows/pr_prek.yaml.j2 | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/template/.github/workflows/build.yaml.j2 b/template/.github/workflows/build.yaml.j2 index 36866cec..34c72f40 100644 --- a/template/.github/workflows/build.yaml.j2 +++ b/template/.github/workflows/build.yaml.j2 @@ -50,7 +50,7 @@ jobs: - name: Check for changed files id: check - uses: stackabletech/actions/detect-changes@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/detect-changes@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: patterns: | - '.github/workflows/build.yaml' @@ -173,7 +173,7 @@ jobs: - name: Build Container Image id: build - uses: stackabletech/actions/build-container-image@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/build-container-image@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-name: ${{ env.OPERATOR_NAME }} image-index-manifest-tag: ${{ steps.version.outputs.OPERATOR_VERSION }} @@ -182,7 +182,7 @@ jobs: - name: Publish Container Image to oci.stackable.tech if: ${{ !github.event.pull_request.head.repo.fork }} - uses: stackabletech/actions/publish-image@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/publish-image@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-registry-uri: oci.stackable.tech image-registry-username: robot$sdp+github-action-build @@ -193,7 +193,7 @@ jobs: - name: Publish Container Image to quay.io if: ${{ !github.event.pull_request.head.repo.fork }} - uses: stackabletech/actions/publish-image@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/publish-image@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-registry-uri: quay.io image-registry-username: stackable+robot_sdp_github_action_build @@ -223,7 +223,7 @@ jobs: persist-credentials: false - name: Publish and Sign Image Index to oci.stackable.tech - uses: stackabletech/actions/publish-image-index-manifest@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/publish-image-index-manifest@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-registry-uri: oci.stackable.tech image-registry-username: robot$sdp+github-action-build @@ -232,7 +232,7 @@ jobs: image-index-manifest-tag: ${{ needs.build-container-image.outputs.operator-version }} - name: Publish and Sign Image Index to quay.io - uses: stackabletech/actions/publish-image-index-manifest@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/publish-image-index-manifest@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-registry-uri: quay.io image-registry-username: stackable+robot_sdp_github_action_build @@ -262,7 +262,7 @@ jobs: submodules: recursive - name: Package, Publish, and Sign Helm Chart to oci.stackable.tech - uses: stackabletech/actions/publish-helm-chart@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/publish-helm-chart@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: chart-registry-uri: oci.stackable.tech chart-registry-username: robot$sdp-charts+github-action-build @@ -274,7 +274,7 @@ jobs: publish-and-sign: ${{ !github.event.pull_request.head.repo.fork }} - name: Package, Publish, and Sign Helm Chart to quay.io - uses: stackabletech/actions/publish-helm-chart@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/publish-helm-chart@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: chart-registry-uri: quay.io chart-registry-username: stackable+robot_sdp_charts_github_action_build @@ -306,13 +306,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Run OpenShift Preflight Check for oci.stackable.tech - uses: stackabletech/actions/run-openshift-preflight@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/run-openshift-preflight@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-index-uri: oci.stackable.tech/sdp/${{ env.OPERATOR_NAME }}:${{ needs.build-container-image.outputs.operator-version }} image-architecture: ${{ matrix.arch }} - name: Run OpenShift Preflight Check for quay.io - uses: stackabletech/actions/run-openshift-preflight@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/run-openshift-preflight@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: image-index-uri: quay.io/stackable/sdp/${{ env.OPERATOR_NAME }}:${{ needs.build-container-image.outputs.operator-version }} image-architecture: ${{ matrix.arch }} @@ -378,7 +378,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Send Notification - uses: stackabletech/actions/send-slack-notification@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/send-slack-notification@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: publish-helm-chart-result: ${{ needs.publish-helm-chart.result }} publish-manifests-result: ${{ needs.publish-index-manifest.result }} diff --git a/template/.github/workflows/integration-test.yml b/template/.github/workflows/integration-test.yml index 3a1582b1..09a75fb0 100644 --- a/template/.github/workflows/integration-test.yml +++ b/template/.github/workflows/integration-test.yml @@ -45,7 +45,7 @@ jobs: # TODO: Enable the scheduled runs which hard-code what profile to use - name: Run Integration Test id: test - uses: stackabletech/actions/run-integration-test@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/run-integration-test@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }} test-mode-input: ${{ inputs.test-mode-input }} @@ -55,7 +55,7 @@ jobs: - name: Send Notification if: ${{ failure() || github.run_attempt > 1 }} - uses: stackabletech/actions/send-slack-notification@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + uses: stackabletech/actions/send-slack-notification@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: slack-token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }} failed-tests: ${{ steps.test.outputs.failed-tests }} diff --git a/template/.github/workflows/pr_prek.yaml.j2 b/template/.github/workflows/pr_prek.yaml.j2 index 9888e046..c461042d 100644 --- a/template/.github/workflows/pr_prek.yaml.j2 +++ b/template/.github/workflows/pr_prek.yaml.j2 @@ -30,7 +30,7 @@ jobs: persist-credentials: false submodules: recursive fetch-depth: 0 - - uses: stackabletech/actions/run-prek@dc83bb926cc464f0f32454e934777116bd1c7768 # v0.16.3 + - uses: stackabletech/actions/run-prek@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: rust: ${{ env.RUST_TOOLCHAIN_VERSION }} hadolint: ${{ env.HADOLINT_VERSION }} From bce1411edeb985da5c1f27909f05dd3b64e9b102 Mon Sep 17 00:00:00 2001 From: Techassi Date: Tue, 11 Aug 2026 13:38:34 +0200 Subject: [PATCH 3/3] ci(template): Split integration test workflow One workflow will handle the scheduled runs, the second one will handle manually dispatched ones. --- config/retired_files.yaml | 2 + ...test.yml => integration-test-dispatch.yml} | 12 +----- .../workflows/integration-test-schedule.yml | 42 +++++++++++++++++++ 3 files changed, 46 insertions(+), 10 deletions(-) rename template/.github/workflows/{integration-test.yml => integration-test-dispatch.yml} (82%) create mode 100644 template/.github/workflows/integration-test-schedule.yml diff --git a/config/retired_files.yaml b/config/retired_files.yaml index 7ba4bc20..acecc221 100644 --- a/config/retired_files.yaml +++ b/config/retired_files.yaml @@ -2,8 +2,10 @@ # Anything specified in the retired_files variable will be deleted. # This is uncommented as I had issues with everything being deleted when this was just present as an empty key. # May be something to investigate. +# TODO (@Techassi): Clean those up retired_files: - .readme/static/borrowed/sdp_overview.png + - .github/workflows/integration-test.yaml - .github/workflows/pr_pre-commit.yaml - .github/workflows/build.yml - .github/ISSUE_TEMPLATE/normal-issue.md diff --git a/template/.github/workflows/integration-test.yml b/template/.github/workflows/integration-test-dispatch.yml similarity index 82% rename from template/.github/workflows/integration-test.yml rename to template/.github/workflows/integration-test-dispatch.yml index 09a75fb0..0b0fe815 100644 --- a/template/.github/workflows/integration-test.yml +++ b/template/.github/workflows/integration-test-dispatch.yml @@ -1,10 +1,7 @@ --- -name: Integration Test +name: Integration Test (Dispatch) on: - # schedule: - # # At 00:00 on Sunday. See: https://crontab.guru/#0_0_*_*_0 - # - cron: "0 0 * * 0" workflow_dispatch: inputs: test-mode: @@ -31,23 +28,18 @@ jobs: runs-on: ubuntu-latest permissions: contents: read - # services: - # otel-collector: - # image: ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-k8s:0.131.1 - # volumes: - # - .:/mnt steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 with: persist-credentials: false submodules: recursive - # TODO: Enable the scheduled runs which hard-code what profile to use - name: Run Integration Test id: test uses: stackabletech/actions/run-integration-test@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 with: replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }} + otlp-bearer-token: ${{ secrets.OTLP_BEARER_TOKEN }} test-mode-input: ${{ inputs.test-mode-input }} test-suite: ${{ inputs.test-suite }} test-mode: ${{ inputs.test-mode }} diff --git a/template/.github/workflows/integration-test-schedule.yml b/template/.github/workflows/integration-test-schedule.yml new file mode 100644 index 00000000..0735ca8e --- /dev/null +++ b/template/.github/workflows/integration-test-schedule.yml @@ -0,0 +1,42 @@ +--- +name: Integration Test (Schedule) + +on: + schedule: + # At 00:00 on Sunday. See: https://crontab.guru/#0_0_*_*_0 + - cron: "0 0 * * 0" + +permissions: {} + +jobs: + test: + name: Run Integration Test + runs-on: ubuntu-latest + permissions: + contents: read + steps: + - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + with: + persist-credentials: false + submodules: recursive + + - name: Run Integration Test + id: test + if: github.event_name == 'schedule' + uses: stackabletech/actions/run-integration-test@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 + with: + replicated-api-token: ${{ secrets.REPLICATED_API_TOKEN }} + otlp-bearer-token: ${{ secrets.OTLP_BEARER_TOKEN }} + test-mode-input: schedule + test-mode: profile + + - name: Send Notification + if: ${{ failure() || github.run_attempt > 1 }} + uses: stackabletech/actions/send-slack-notification@b5cc0acc5287f6184551b77f3ae4a5c3e41678c4 # v0.17.3 + with: + slack-token: ${{ secrets.SLACK_INTEGRATION_TEST_TOKEN }} + failed-tests: ${{ steps.test.outputs.failed-tests }} + test-health: ${{ steps.test.outputs.health }} + test-result: ${{ steps.test.conclusion }} + channel-id: C07UYJYSMSN # notifications-integration-tests + type: integration-test