Add cleanup trap to smoke-init.sh that kills all mock-forgejo.py processes on exit (success or failure). Also ensure cleanup at test start removes any leftover processes from prior runs. In .woodpecker/smoke-init.yml: - Store the PID of the mock-forgejo.py background process - Kill the process after smoke test completes This prevents accumulation of orphaned Python processes that caused OOM issues (2881 processes consuming 7.45GB RAM). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
18 lines
476 B
YAML
18 lines
476 B
YAML
when:
|
|
- event: pull_request
|
|
path:
|
|
- "bin/disinto"
|
|
- "lib/load-project.sh"
|
|
- "lib/env.sh"
|
|
- "tests/**"
|
|
- ".woodpecker/smoke-init.yml"
|
|
|
|
steps:
|
|
- name: smoke-init
|
|
image: python:3-alpine
|
|
commands:
|
|
- apk add --no-cache bash curl jq git coreutils
|
|
- python3 tests/mock-forgejo.py & echo $! > /tmp/mock-forgejo.pid
|
|
- sleep 2
|
|
- bash tests/smoke-init.sh
|
|
- kill $(cat /tmp/mock-forgejo.pid) 2>/dev/null || true
|