From 308741346edd959a7533b7854ddfbc531de38cc6 Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Thu, 10 Sep 2026 16:56:18 +0200 Subject: [PATCH] fix(ci): install the project before running the lint tests tests/lint/test_tooling_configuration.py imports yaml, but the lint test job only set up Python and ran unittest, so every push since the test arrived failed with "ModuleNotFoundError: No module named 'yaml'". The job gates the end-to-end tests and the image publish, which is why no image exists for 2.1.0 or 2.1.1. The job now installs the project exactly like the unit, integration and security jobs, and make test-lint depends on install like its siblings. Reproduced in a clean virtualenv: the lint suite fails on the missing module without the install and passes all 18 tests with it. Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/tests.yml | 5 +++++ Makefile | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 8081b74..bb4a96d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -21,6 +21,11 @@ jobs: with: python-version: "3.12" + - name: Install lint test dependencies + run: | + python -m pip install --upgrade pip + pip install --ignore-installed . + - name: Run lint test suite run: python -m unittest discover -s tests/lint -t . diff --git a/Makefile b/Makefile index 28badb2..4c2d886 100644 --- a/Makefile +++ b/Makefile @@ -185,7 +185,7 @@ lint-shell: docker run --rm -v "$$PWD:/mnt" -w /mnt koalaman/shellcheck:stable scripts/*.sh .PHONY: test-lint -test-lint: +test-lint: install # Run lint guardrail tests. $(PYTHON) -m unittest discover -s tests/lint -t .