From 45d0f20680c58b6bba973bbe0e5a901e4a8d63a2 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 11:54:00 +0000 Subject: [PATCH 1/9] ci: remove on push triggers and add concurrency --- .github/workflows/backend-lint-test.yml | 12 +++--------- .github/workflows/frontend-verify.yml | 9 +++------ 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/.github/workflows/backend-lint-test.yml b/.github/workflows/backend-lint-test.yml index 699f10507..53ef2b8ca 100644 --- a/.github/workflows/backend-lint-test.yml +++ b/.github/workflows/backend-lint-test.yml @@ -1,21 +1,15 @@ --- name: "Backend verify" on: - push: - tags: - - v* - branches: - - master - paths: - - 'backend/**.go' - - 'backend/go.mod' - - '.github/workflows/backend-lint-test.yml' pull_request: paths: - 'backend/**.go' - 'backend/go.mod' - '.github/workflows/backend-lint-test.yml' workflow_call: +concurrency: + group: backend-verify-${{ github.head_ref || github.ref }} + cancel-in-progress: true permissions: contents: read jobs: diff --git a/.github/workflows/frontend-verify.yml b/.github/workflows/frontend-verify.yml index 44e57fa8b..30d42761e 100644 --- a/.github/workflows/frontend-verify.yml +++ b/.github/workflows/frontend-verify.yml @@ -1,17 +1,14 @@ --- name: "Frontend Lint & Compile check" on: - push: - branches: - - master - paths: - - "frontend/**" - - ".github/workflows/frontend-verify.yml" pull_request: paths: - "frontend/**" - ".github/workflows/frontend-verify.yml" workflow_call: +concurrency: + group: frontend-verify-${{ github.head_ref || github.ref }} + cancel-in-progress: true env: CI: true jobs: From 974d04819c09cf0c109e108741ee14f220bba7af Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 11:57:54 +0000 Subject: [PATCH 2/9] ci: check concurrency works with dispatch change --- .github/workflows/repository-dispatch.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index 67784d838..df8ac8d06 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -5,6 +5,7 @@ on: paths: - "frontend/**" - "backend/**" + - '.github/workflows/repository-dispatch.yml' tags: - '*' branches: From f6d7f4de5b4febd5572428cb27e54638e1d89789 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 12:04:20 +0000 Subject: [PATCH 3/9] ci: updated reference for concurrency --- .github/workflows/backend-lint-test.yml | 2 +- .github/workflows/frontend-verify.yml | 2 +- .github/workflows/repository-dispatch.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/backend-lint-test.yml b/.github/workflows/backend-lint-test.yml index 53ef2b8ca..6e19d25a5 100644 --- a/.github/workflows/backend-lint-test.yml +++ b/.github/workflows/backend-lint-test.yml @@ -8,7 +8,7 @@ on: - '.github/workflows/backend-lint-test.yml' workflow_call: concurrency: - group: backend-verify-${{ github.head_ref || github.ref }} + group: backend-verify-${{ github.head_ref || github.ref_name }} cancel-in-progress: true permissions: contents: read diff --git a/.github/workflows/frontend-verify.yml b/.github/workflows/frontend-verify.yml index 30d42761e..c37ec1d1a 100644 --- a/.github/workflows/frontend-verify.yml +++ b/.github/workflows/frontend-verify.yml @@ -7,7 +7,7 @@ on: - ".github/workflows/frontend-verify.yml" workflow_call: concurrency: - group: frontend-verify-${{ github.head_ref || github.ref }} + group: frontend-verify-${{ github.head_ref || github.ref_name }} cancel-in-progress: true env: CI: true diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index df8ac8d06..1c00b5c2b 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -52,4 +52,4 @@ jobs: token: ${{ env.ACTIONS_BOT_TOKEN }} repository: redpanda-data/console-enterprise event-type: push - client-payload: '{"branch": "${{ github.ref_name }}", "commit_sha": "${{ github.sha }}"}' + client-payload: '{"branch": "${{ github.ref_name }}", "commit_sha": "${{ github.sha }}"}' \ No newline at end of file From b472b2de24ae4ee445025a2c8787a9bc1b16a468 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 12:27:35 +0000 Subject: [PATCH 4/9] ci: simplified ci to only run via dispatch --- .github/workflows/backend-lint-test.yml | 8 -------- .github/workflows/frontend-verify.yml | 7 ------- .github/workflows/repository-dispatch.yml | 6 ++++++ 3 files changed, 6 insertions(+), 15 deletions(-) diff --git a/.github/workflows/backend-lint-test.yml b/.github/workflows/backend-lint-test.yml index 6e19d25a5..da61f591a 100644 --- a/.github/workflows/backend-lint-test.yml +++ b/.github/workflows/backend-lint-test.yml @@ -1,15 +1,7 @@ --- name: "Backend verify" on: - pull_request: - paths: - - 'backend/**.go' - - 'backend/go.mod' - - '.github/workflows/backend-lint-test.yml' workflow_call: -concurrency: - group: backend-verify-${{ github.head_ref || github.ref_name }} - cancel-in-progress: true permissions: contents: read jobs: diff --git a/.github/workflows/frontend-verify.yml b/.github/workflows/frontend-verify.yml index c37ec1d1a..fab5a3098 100644 --- a/.github/workflows/frontend-verify.yml +++ b/.github/workflows/frontend-verify.yml @@ -1,14 +1,7 @@ --- name: "Frontend Lint & Compile check" on: - pull_request: - paths: - - "frontend/**" - - ".github/workflows/frontend-verify.yml" workflow_call: -concurrency: - group: frontend-verify-${{ github.head_ref || github.ref_name }} - cancel-in-progress: true env: CI: true jobs: diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index 1c00b5c2b..6a4fd178a 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -10,6 +10,11 @@ on: - '*' branches: - '**' + pull_request: + paths: + - "frontend/**" + - "backend/**" + - '.github/workflows/repository-dispatch.yml' permissions: id-token: write contents: read @@ -26,6 +31,7 @@ jobs: dispatch: needs: [backend-verify, frontend-verify] + if: always() && !failure() && !cancelled() && github.event_name == 'push' runs-on: blacksmith-2vcpu-ubuntu-2404 steps: - uses: aws-actions/configure-aws-credentials@v4 From 8890c3c1320fb349e8bc0010cd0f5e9ceda68c1d Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 15:25:50 +0000 Subject: [PATCH 5/9] ci: test concurrency to allow forked repos to create pull requests and trigger ci --- .github/workflows/repository-dispatch.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index 6a4fd178a..eda3b4f95 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -15,6 +15,9 @@ on: - "frontend/**" - "backend/**" - '.github/workflows/repository-dispatch.yml' +concurrency: + group: repo-dispatch-${{ github.head_ref || github.ref_name }} + cancel-in-progress: true permissions: id-token: write contents: read From 47bb1cc9b8c24cb94d802752971135099cec4d76 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 17:16:46 +0000 Subject: [PATCH 6/9] ci: dedupe workflow runs and add fork PR verification --- .github/workflows/fork-pr-verify.yml | 21 +++++++++++++++++++++ .github/workflows/repository-dispatch.yml | 10 +--------- 2 files changed, 22 insertions(+), 9 deletions(-) create mode 100644 .github/workflows/fork-pr-verify.yml diff --git a/.github/workflows/fork-pr-verify.yml b/.github/workflows/fork-pr-verify.yml new file mode 100644 index 000000000..ec4dc8e0e --- /dev/null +++ b/.github/workflows/fork-pr-verify.yml @@ -0,0 +1,21 @@ +--- +name: PR verification (forks) +on: + pull_request: + paths: + - "frontend/**" + - "backend/**" +permissions: + contents: read +jobs: + backend-verify: + if: github.event.pull_request.head.repo.fork == true + uses: ./.github/workflows/backend-lint-test.yml + permissions: + contents: read + + frontend-verify: + if: github.event.pull_request.head.repo.fork == true + uses: ./.github/workflows/frontend-verify.yml + permissions: + contents: read \ No newline at end of file diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index eda3b4f95..499284d7a 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -10,14 +10,6 @@ on: - '*' branches: - '**' - pull_request: - paths: - - "frontend/**" - - "backend/**" - - '.github/workflows/repository-dispatch.yml' -concurrency: - group: repo-dispatch-${{ github.head_ref || github.ref_name }} - cancel-in-progress: true permissions: id-token: write contents: read @@ -34,7 +26,7 @@ jobs: dispatch: needs: [backend-verify, frontend-verify] - if: always() && !failure() && !cancelled() && github.event_name == 'push' + if: always() && !failure() && !cancelled() runs-on: blacksmith-2vcpu-ubuntu-2404 steps: - uses: aws-actions/configure-aws-credentials@v4 From b912e67fce63e5a755801f4adf0690494599d610 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 18:07:45 +0000 Subject: [PATCH 7/9] ci: split backend lint and test, fix cache, increase parallelism --- .github/workflows/backend-lint-test.yml | 17 ++++++++++++++--- taskfiles/backend.yaml | 2 +- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/.github/workflows/backend-lint-test.yml b/.github/workflows/backend-lint-test.yml index da61f591a..f5a1cd1f0 100644 --- a/.github/workflows/backend-lint-test.yml +++ b/.github/workflows/backend-lint-test.yml @@ -5,24 +5,35 @@ on: permissions: contents: read jobs: - verify: - name: Lint & Test Backend + lint: + name: Lint Backend runs-on: blacksmith-4vcpu-ubuntu-2404 steps: - uses: actions/checkout@v5 - uses: actions/setup-go@v6 with: go-version-file: 'backend/go.mod' + cache-dependency-path: 'backend/go.sum' - name: golangci-lint uses: golangci/golangci-lint-action@v8 with: version: v2.4 working-directory: backend args: --timeout=10m --config=.golangci.yaml + + test: + name: Test Backend + runs-on: blacksmith-4vcpu-ubuntu-2404 + steps: + - uses: actions/checkout@v5 + - uses: actions/setup-go@v6 + with: + go-version-file: 'backend/go.mod' + cache-dependency-path: 'backend/go.sum' - name: Install Task uses: arduino/setup-task@v1 with: version: 3.x repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Unit & Integration Tests - run: task backend:test-integration + run: task backend:test-integration \ No newline at end of file diff --git a/taskfiles/backend.yaml b/taskfiles/backend.yaml index 4404f0756..894d1c7e2 100644 --- a/taskfiles/backend.yaml +++ b/taskfiles/backend.yaml @@ -169,7 +169,7 @@ tasks: - install-tparse cmds: - | - {{ .PATH_PREFIX }} go test -race --tags=integration -json -p=1 {{.CLI_ARGS | default "./..." }} | {{ .BUILD_ROOT }}/bin/go/tparse + {{ .PATH_PREFIX }} go test -race --tags=integration -json -p=2 {{.CLI_ARGS | default "./..." }} | {{ .BUILD_ROOT }}/bin/go/tparse cover: dir: "{{.BACKEND_ROOT}}" From c1ec3f33ffcd99ec1b0fc3608eaacae0fe599337 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Thu, 22 Jan 2026 18:13:05 +0000 Subject: [PATCH 8/9] ci: update trigger paths --- .github/workflows/repository-dispatch.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index 499284d7a..9316abb6d 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -6,6 +6,8 @@ on: - "frontend/**" - "backend/**" - '.github/workflows/repository-dispatch.yml' + - '.github/workflows/backend-lint-test.yml' + - '.github/workflows/frontend-verify.yml' tags: - '*' branches: From bd0e09191b1b1d424b5d146289ab684f20544148 Mon Sep 17 00:00:00 2001 From: Julin <142230457+c-julin@users.noreply.github.com> Date: Fri, 23 Jan 2026 17:57:26 +0000 Subject: [PATCH 9/9] ci:remove always condition --- .github/workflows/repository-dispatch.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/repository-dispatch.yml b/.github/workflows/repository-dispatch.yml index 9316abb6d..1df019f76 100644 --- a/.github/workflows/repository-dispatch.yml +++ b/.github/workflows/repository-dispatch.yml @@ -28,7 +28,7 @@ jobs: dispatch: needs: [backend-verify, frontend-verify] - if: always() && !failure() && !cancelled() + if: "!failure() && !cancelled()" runs-on: blacksmith-2vcpu-ubuntu-2404 steps: - uses: aws-actions/configure-aws-credentials@v4