From 11b8e31a296e8cfce2aabefbc2135d2afbdcfb96 Mon Sep 17 00:00:00 2001 From: Samir Boulahtit Date: Thu, 19 Mar 2026 22:11:02 +0100 Subject: [PATCH] ci: run unit tests only, disable verbose output and logging overhead On 2-core ARM runner, 2893 tests with verbose output and live log capture take 2.5h+. Major bottlenecks: - Coverage: disabled (previous commit) - Verbose output (-v): generates huge I/O over Docker bridge - Live log capture: logs every HTTP request per test - Integration tests: heavy DB fixture setup (~7s each) Now: unit tests only (2484), quiet mode (-q), no log capture, LOG_LEVEL=WARNING. Integration tests run locally via make test. Co-Authored-By: Claude Opus 4.6 (1M context) --- .gitea/workflows/ci.yml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index f85d7d45..cd49c069 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -37,11 +37,11 @@ jobs: run: ruff check . # --------------------------------------------------------------------------- - # Tests + # Tests — unit only (integration tests run locally via make test) # --------------------------------------------------------------------------- pytest: runs-on: ubuntu-latest - timeout-minutes: 90 + timeout-minutes: 60 services: postgres: image: postgres:15 @@ -56,10 +56,9 @@ jobs: --health-retries 5 env: - # act_runner executes jobs in Docker containers on the same network as services, - # so use the service name (postgres) as hostname with the internal port (5432) TEST_DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/orion_test" DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/orion_test" + LOG_LEVEL: "WARNING" steps: - uses: actions/checkout@v4 @@ -75,10 +74,7 @@ jobs: run: uv pip install --system -r requirements.txt -r requirements-test.txt - name: Run unit tests - run: python -m pytest -m "unit" -v --tb=short --timeout=120 --no-cov --override-ini="addopts=" -p no:cacheprovider --durations=20 - - - name: Run integration tests - run: python -m pytest -m "integration" -v --tb=short --timeout=120 --no-cov --override-ini="addopts=" -p no:cacheprovider --durations=20 + run: python -m pytest -m "unit" -q --tb=short --timeout=120 --no-cov --override-ini="addopts=" -p no:cacheprovider -p no:logging --durations=20 validate: runs-on: ubuntu-latest