From 6f0ead77ec9532a281d9a84c815abc3f6410daa5 Mon Sep 17 00:00:00 2001 From: MartinekV Date: Fri, 31 Jul 2026 19:15:46 +0200 Subject: [PATCH 1/4] Add advisory test CI workflow --- .github/workflows/tests.yml | 53 +++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .github/workflows/tests.yml diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 00000000..75290c5b --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,53 @@ +name: Automated Tests + +on: + pull_request: + branches: + - main + push: + branches: + - main + # Enables manual runs; no inputs are required. + workflow_dispatch: + +permissions: + contents: read + +concurrency: + # Group runs by workflow and PR number, falling back to the branch or tag ref. + group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}" + # Cancel an obsolete run when a newer commit starts one in the same group. + cancel-in-progress: true + +jobs: + test: + name: Build image and run test suite + runs-on: ubuntu-latest + + steps: + - name: Checkout tested commit + uses: actions/checkout@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Build runtime image from checkout + uses: docker/build-push-action@v6 + with: + context: . + build-args: REPOSITORY_SOURCE=. + cache-from: type=gha + cache-to: type=gha,mode=max + load: true + push: false + tags: agentomics:ci + + # Free GitHub-hosted runners have no GPU, so an empty CUDA_VISIBLE_DEVICES skips GPU tests. + - name: Run CPU-compatible test suite + run: | + docker run --rm \ + --env AGENT_ID=github-actions-ci \ + --env CUDA_VISIBLE_DEVICES= \ + --entrypoint /opt/conda/envs/agentomics-env/bin/python \ + agentomics:ci \ + -m test.run_all_tests --workspace-dir /workspace From cf4d2115f7dd85df56ea429c4988960d4204654b Mon Sep 17 00:00:00 2001 From: MartinekV Date: Fri, 31 Jul 2026 19:51:02 +0200 Subject: [PATCH 2/4] Add a failing test to check CI fail behavior --- test/test_ci_failure_probe.py | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 test/test_ci_failure_probe.py diff --git a/test/test_ci_failure_probe.py b/test/test_ci_failure_probe.py new file mode 100644 index 00000000..a96e20ff --- /dev/null +++ b/test/test_ci_failure_probe.py @@ -0,0 +1,6 @@ +import unittest + + +class TestCiFailureProbe(unittest.TestCase): + def test_ci_reports_failure(self): + self.fail("intentional CI failure probe") From f1ab4d683e0cb3553f1df1608be64155f48d8ad6 Mon Sep 17 00:00:00 2001 From: MartinekV Date: Fri, 31 Jul 2026 20:04:57 +0200 Subject: [PATCH 3/4] Revert "Add a failing test to check CI fail behavior" This reverts commit 002d977fd28b90fceacf60b1ca7bad3b911528f0. --- test/test_ci_failure_probe.py | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 test/test_ci_failure_probe.py diff --git a/test/test_ci_failure_probe.py b/test/test_ci_failure_probe.py deleted file mode 100644 index a96e20ff..00000000 --- a/test/test_ci_failure_probe.py +++ /dev/null @@ -1,6 +0,0 @@ -import unittest - - -class TestCiFailureProbe(unittest.TestCase): - def test_ci_reports_failure(self): - self.fail("intentional CI failure probe") From 12421613fca97394573b42c8964bc50d6c5e4e7c Mon Sep 17 00:00:00 2001 From: MartinekV Date: Fri, 31 Jul 2026 20:08:10 +0200 Subject: [PATCH 4/4] Rename the job to convey CPU-only nature --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 75290c5b..91f673dd 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -21,7 +21,7 @@ concurrency: jobs: test: - name: Build image and run test suite + name: Automated tests (CPU-only) runs-on: ubuntu-latest steps: