Add Woodpecker CI pipeline + ruff config + Forgejo PyPI publishing #1
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
test:label-a
test:label-b
test:set-label
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ldraney/forgejo-mcp#1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Plan
plan-2026-03-01-forgejo-pypi-migration— Phase 1Repo
forgejo-mcp— the repo where the code change happensUser Story
As a platform developer
I need forgejo-mcp to have a Woodpecker CI pipeline that lints, tests (if applicable), builds, and publishes to Forgejo's private PyPI registry
So that the package is no longer leaked to public pypi.org and follows the standard CI pattern
Acceptance Criteria
When I push to main on forgejo-mcp
Then Woodpecker runs lint (ruff), tests (if present), and publishes the package to Forgejo PyPI
When I open a PR
Then Woodpecker runs lint and tests (no publish)
Additional Information
Reference implementation:
woodpecker-sdk.woodpecker.yml(PR #6, merged after 3 QA rounds).FastMCP server with 11 tools. Check if this repo has tests — include test step if yes, skip if no.
Global Woodpecker secrets already configured:
forgejo_publish_user,forgejo_publish_token,forgejo_pypi_url.Repo may need activating in Woodpecker.
Ruff config: py310, line-length 120, select E/F/W/I (matches platform standard).
Checklist
Related
project-claude-config— parent projectplan-2026-03-01-forgejo-pypi-migration— the migration planplan-2026-02-28-woodpecker-sdk-mcp— reference implementation