pytest completes all tests but process never exits in GitLab CI. Disabling the faulthandler plugin fixes this. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
30 lines
833 B
YAML
30 lines
833 B
YAML
stages:
|
|
- test
|
|
- tag
|
|
|
|
test:
|
|
stage: test
|
|
image: python:3.12-slim
|
|
before_script:
|
|
- pip install uv
|
|
script:
|
|
- uv sync
|
|
- uv run pytest web/tests/ -x -q -p no:faulthandler
|
|
- uv run ruff check web/src/ web/tests/
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH == "master"
|
|
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
|
|
|
tag:
|
|
stage: tag
|
|
image: alpine/git
|
|
script:
|
|
- git tag "v${CI_PIPELINE_IID}"
|
|
- git push "https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git" "v${CI_PIPELINE_IID}"
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH == "master"
|
|
|
|
# Deployment is handled by the on-server supervisor (src/padelnomics/supervisor.py).
|
|
# It polls git every 60s, fetches tags, and deploys only when a new passing tag exists.
|
|
# No CI secrets needed — zero SSH keys, zero deploy credentials.
|