From 8955a9e468d3e1bec0dbbec9f97f79dab1c2c22d Mon Sep 17 00:00:00 2001 From: Michael Platzer Date: Mon, 27 Apr 2026 08:57:48 +0200 Subject: [PATCH 1/2] ci: make GPU tests manual-only Remove automatic GPU test execution from CI and add a workflow_dispatch entrypoint for on-demand GPU test runs. Made-with: Cursor --- .github/workflows/run-tests-gpu-manual.yaml | 9 +++++++++ .github/workflows/workflow.yaml | 16 +--------------- 2 files changed, 10 insertions(+), 15 deletions(-) create mode 100644 .github/workflows/run-tests-gpu-manual.yaml diff --git a/.github/workflows/run-tests-gpu-manual.yaml b/.github/workflows/run-tests-gpu-manual.yaml new file mode 100644 index 00000000..b36d5b73 --- /dev/null +++ b/.github/workflows/run-tests-gpu-manual.yaml @@ -0,0 +1,9 @@ +name: '[GPU] mostlyai Tests (Manual)' + +on: + workflow_dispatch: + +jobs: + run-tests-gpu: + uses: ./.github/workflows/run-tests-gpu.yaml + secrets: inherit diff --git a/.github/workflows/workflow.yaml b/.github/workflows/workflow.yaml index 329243f9..fe5c5d55 100644 --- a/.github/workflows/workflow.yaml +++ b/.github/workflows/workflow.yaml @@ -18,20 +18,6 @@ jobs: (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository) uses: ./.github/workflows/run-tests-cpu.yaml secrets: inherit - run-tests-gpu: - if: | - ( - github.event_name == 'push' || - (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository) - ) && - ( - github.ref == 'refs/heads/main' || - startsWith(github.ref, 'refs/tags/') || - contains(github.event.head_commit.message, '[gpu]') || - contains(github.event.pull_request.title, '[gpu]') - ) - uses: ./.github/workflows/run-tests-gpu.yaml - secrets: inherit build-docker-image: if: | ( @@ -42,6 +28,6 @@ jobs: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/') ) - needs: [pre-commit-check, run-tests-cpu, run-tests-gpu] + needs: [pre-commit-check, run-tests-cpu] secrets: inherit uses: ./.github/workflows/build-docker-image.yaml From 3d243e2b4fb9caf5c92fc09ba4d8d188345e1567 Mon Sep 17 00:00:00 2001 From: Michael Platzer Date: Mon, 27 Apr 2026 09:03:06 +0200 Subject: [PATCH 2/2] ci: reorganize workflow files by entrypoint and reusable jobs Adopt consistent CI workflow naming with dedicated entrypoints and reusable job definitions, add workflows documentation, and keep release workflow filenames unchanged. Made-with: Cursor --- .github/workflows/README.md | 20 +++++++++++++++++++ ...sts-gpu-manual.yaml => ci-gpu-manual.yaml} | 2 +- ...ml => ci-reusable-build-docker-image.yaml} | 0 ...check.yaml => ci-reusable-pre-commit.yaml} | 0 ...ts-cpu.yaml => ci-reusable-tests-cpu.yaml} | 0 ...ts-gpu.yaml => ci-reusable-tests-gpu.yaml} | 0 .github/workflows/{workflow.yaml => ci.yaml} | 6 +++--- 7 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/README.md rename .github/workflows/{run-tests-gpu-manual.yaml => ci-gpu-manual.yaml} (65%) rename .github/workflows/{build-docker-image.yaml => ci-reusable-build-docker-image.yaml} (100%) rename .github/workflows/{pre-commit-check.yaml => ci-reusable-pre-commit.yaml} (100%) rename .github/workflows/{run-tests-cpu.yaml => ci-reusable-tests-cpu.yaml} (100%) rename .github/workflows/{run-tests-gpu.yaml => ci-reusable-tests-gpu.yaml} (100%) rename .github/workflows/{workflow.yaml => ci.yaml} (83%) diff --git a/.github/workflows/README.md b/.github/workflows/README.md new file mode 100644 index 00000000..46414ad5 --- /dev/null +++ b/.github/workflows/README.md @@ -0,0 +1,20 @@ +# GitHub Workflows + +This directory uses a simple split: + +- **Entrypoint workflows** (`push`, `pull_request`, or `workflow_dispatch`) +- **Reusable workflows** (`workflow_call`) that are referenced by entrypoints + +## Entrypoints + +- `ci.yaml` — main CI on `push`/`pull_request` +- `ci-gpu-manual.yaml` — manual GPU test trigger (`workflow_dispatch`) +- `release-step-1-bump.yaml` — manual release bump and GitHub release +- `release-step-2-publish.yaml` — PyPI publish, triggered by release completion or manual dispatch + +## Reusable Workflows + +- `ci-reusable-pre-commit.yaml` +- `ci-reusable-tests-cpu.yaml` +- `ci-reusable-tests-gpu.yaml` +- `ci-reusable-build-docker-image.yaml` diff --git a/.github/workflows/run-tests-gpu-manual.yaml b/.github/workflows/ci-gpu-manual.yaml similarity index 65% rename from .github/workflows/run-tests-gpu-manual.yaml rename to .github/workflows/ci-gpu-manual.yaml index b36d5b73..11700e1d 100644 --- a/.github/workflows/run-tests-gpu-manual.yaml +++ b/.github/workflows/ci-gpu-manual.yaml @@ -5,5 +5,5 @@ on: jobs: run-tests-gpu: - uses: ./.github/workflows/run-tests-gpu.yaml + uses: ./.github/workflows/ci-reusable-tests-gpu.yaml secrets: inherit diff --git a/.github/workflows/build-docker-image.yaml b/.github/workflows/ci-reusable-build-docker-image.yaml similarity index 100% rename from .github/workflows/build-docker-image.yaml rename to .github/workflows/ci-reusable-build-docker-image.yaml diff --git a/.github/workflows/pre-commit-check.yaml b/.github/workflows/ci-reusable-pre-commit.yaml similarity index 100% rename from .github/workflows/pre-commit-check.yaml rename to .github/workflows/ci-reusable-pre-commit.yaml diff --git a/.github/workflows/run-tests-cpu.yaml b/.github/workflows/ci-reusable-tests-cpu.yaml similarity index 100% rename from .github/workflows/run-tests-cpu.yaml rename to .github/workflows/ci-reusable-tests-cpu.yaml diff --git a/.github/workflows/run-tests-gpu.yaml b/.github/workflows/ci-reusable-tests-gpu.yaml similarity index 100% rename from .github/workflows/run-tests-gpu.yaml rename to .github/workflows/ci-reusable-tests-gpu.yaml diff --git a/.github/workflows/workflow.yaml b/.github/workflows/ci.yaml similarity index 83% rename from .github/workflows/workflow.yaml rename to .github/workflows/ci.yaml index fe5c5d55..585add3d 100644 --- a/.github/workflows/workflow.yaml +++ b/.github/workflows/ci.yaml @@ -10,13 +10,13 @@ jobs: if: | github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository) - uses: ./.github/workflows/pre-commit-check.yaml + uses: ./.github/workflows/ci-reusable-pre-commit.yaml secrets: inherit run-tests-cpu: if: | github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name != github.repository) - uses: ./.github/workflows/run-tests-cpu.yaml + uses: ./.github/workflows/ci-reusable-tests-cpu.yaml secrets: inherit build-docker-image: if: | @@ -30,4 +30,4 @@ jobs: ) needs: [pre-commit-check, run-tests-cpu] secrets: inherit - uses: ./.github/workflows/build-docker-image.yaml + uses: ./.github/workflows/ci-reusable-build-docker-image.yaml