# .woodpecker/ops-filer.yml — Sub-issue filer pipeline (#764) # # Triggered on push to main of the ops repo after a sprint PR merges. # Parses sprints/*.md for ## Sub-issues blocks and files them on the # project repo via filer-bot (FORGE_FILER_TOKEN). # # NOTE: This pipeline runs on the ops repo. It must be registered in the # ops repo's Woodpecker project. The filer script (lib/sprint-filer.sh) # lives in the code repo and is cloned into the workspace. # # Idempotency: safe to re-run — each sub-issue carries a decomposed-from # marker that the filer checks before creating. when: branch: main event: push steps: - name: file-subissues image: alpine:3 commands: - apk add --no-cache bash curl jq # Clone the code repo to get the filer script - AUTH_URL=$(printf '%s' "${FORGE_URL}/disinto-admin/disinto.git" | sed "s|://|://token:${FORGE_FILER_TOKEN}@|") - git clone --depth 1 "$AUTH_URL" /tmp/code-repo # Run filer against all sprint files in the ops repo workspace - bash /tmp/code-repo/lib/sprint-filer.sh --all sprints/ environment: FORGE_FILER_TOKEN: from_secret: forge_filer_token FORGE_URL: from_secret: forge_url FORGE_API: from_secret: forge_api FORGE_API_BASE: from_secret: forge_api_base