woodpecker main.yaml: workspace-shared pip cache via PIP_CACHE_DIR: .pip-cache on all 3 test steps (test-UTs-n-ITs / test-two-browser-FTs / test-FTs) — each step currently re-downloads the entire requirements.txt wheel set independently; Woodpecker mounts the workspace across steps in one run, so the wheels populated by step 1 are reused by steps 2-3, saving ~1-2 min of pip-install wall-clock per run (only download time — install still happens fresh per container); pyswiss.yaml untouched (separate pipeline, separate workspace, separate requirements); cache is per-run only — cross-run persistence would need a Woodpecker volume plugin
Code architected by Disco DeDisco <discodedisco@outlook.com> Git commit message Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -16,6 +16,12 @@ steps:
|
||||
DATABASE_URL: postgresql://postgres:postgres@postgres/python_tdd_test
|
||||
CELERY_BROKER_URL: redis://redis:6379/0
|
||||
REDIS_URL: redis://redis:6379/1
|
||||
# Workspace-shared pip cache — Woodpecker mounts the workspace across
|
||||
# all steps in a run, so the wheels populated here are reused by
|
||||
# test-two-browser-FTs + test-FTs (saves ~30-60s × 2 = ~1-2 min per
|
||||
# run). Cache lives only inside one run; cross-run caching would
|
||||
# need a volume plugin.
|
||||
PIP_CACHE_DIR: .pip-cache
|
||||
commands:
|
||||
- pip install -r requirements.txt
|
||||
- cd ./src
|
||||
@@ -37,6 +43,7 @@ steps:
|
||||
from_secret: stripe_secret_key
|
||||
STRIPE_PUBLISHABLE_KEY:
|
||||
from_secret: stripe_publishable_key
|
||||
PIP_CACHE_DIR: .pip-cache
|
||||
commands:
|
||||
- pip install -r requirements.txt
|
||||
- cd ./src
|
||||
@@ -61,6 +68,7 @@ steps:
|
||||
from_secret: stripe_secret_key
|
||||
STRIPE_PUBLISHABLE_KEY:
|
||||
from_secret: stripe_publishable_key
|
||||
PIP_CACHE_DIR: .pip-cache
|
||||
commands:
|
||||
- pip install -r requirements.txt
|
||||
- cd ./src
|
||||
|
||||
Reference in New Issue
Block a user