Skip to content

Commit 317be65

Browse files
Add PyPI publishing workflow and update package metadata (#5)
- Add GitHub Actions workflow for automated PyPI publishing on version tags - Reorganize pyproject.toml URLs section to match project standards - Add Documentation URL to project metadata - Update .gitignore to exclude auto-generated _version.py file 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <[email protected]>
1 parent ab37d4b commit 317be65

File tree

3 files changed

+42
-4
lines changed

3 files changed

+42
-4
lines changed

.github/workflows/ci.yaml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Publish to PyPI
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
jobs:
9+
publish:
10+
name: Publish to PyPI
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v4
16+
17+
- name: Set up Python
18+
uses: actions/setup-python@v5
19+
with:
20+
python-version: '3.11'
21+
22+
- name: Install dependencies
23+
run: |
24+
python -m pip install --upgrade pip
25+
pip install build twine
26+
27+
- name: Build package
28+
run: python -m build
29+
30+
- name: Verify package
31+
run: twine check dist/*
32+
33+
- name: Publish to PyPI
34+
env:
35+
TWINE_USERNAME: __token__
36+
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
37+
run: python -m twine upload dist/*

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,3 +145,6 @@ test_output.json
145145
*.tmp
146146

147147
.claude/
148+
149+
# Setuptools SCM version file
150+
*/_version.py

pyproject.toml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
[project]
2+
urls = { "Homepage" = "https://github.com/Facets-cloud/control-plane-openapi-mcp", "Bug Tracker" = "https://github.com/Facets-cloud/control-plane-openapi-mcp/issues", "Documentation" = "https://github.com/Facets-cloud/control-plane-openapi-mcp#readme" }
3+
24
name = "control-plane-openapi-mcp"
35
description = "MCP server for Facets Control Plane OpenAPI specification"
46
dynamic = ["version"]
@@ -44,7 +46,3 @@ local_scheme = "node-and-date"
4446
[tool.setuptools.packages.find]
4547
where = ["."]
4648
include = ["control_plane_openapi_mcp*"]
47-
48-
[project.urls]
49-
"Homepage" = "https://github.com/Facets-cloud/control-plane-openapi-mcp"
50-
"Bug Tracker" = "https://github.com/Facets-cloud/control-plane-openapi-mcp/issues"

0 commit comments

Comments
 (0)