Add Woodpecker CI pipeline #2
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
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
forgejo_admin/gmail-mcp!2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "1-add-woodpecker-pipeline"
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?
Summary
pip install -e . ruff pytest(PEP 735 dependency-groups, not optional-dependencies)Changes
.woodpecker.yaml: new file — test step runsruff check,ruff format --check,pyteston push/PR; publish step builds and uploads to PyPI on tag (skips if version already published)pyproject.toml: added"ruff>=0.4.0"to[dependency-groups].dev[tool.uv.sources]section left untouched (local dev convenience for../gmail-sdk)Test Plan
pip install -e .)Review Checklist
Related Notes
issue-pal-e-services-library-pipelines— parent tracking issue for all 9 library pipelinesplan-2026-02-25-mcp-gateway-migration— Phase 2: Library PipelinesReview: PASS
Reviewed diff (2 files, +44/-0):
.woodpecker.yaml: Correct template. Package namegmail-mcp-ldraneyis correct. Test step correctly usespip install -e . ruff pytest(not.[dev]) because this repo uses PEP 735[dependency-groups]instead of[project.optional-dependencies]. Publish step has PyPI version-check guard. Secret referencepypi_tokenmatches Woodpecker config.pyproject.toml: Single-line addition of"ruff>=0.4.0"to[dependency-groups].dev.[tool.uv.sources]section untouched. No other changes.No secrets committed. No unnecessary file changes. Commit message is descriptive with plan/issue references. Ready for merge.