publish.yml
1 name: Publish to PyPI 2 3 on: 4 release: 5 types: [published] 6 7 permissions: 8 id-token: write 9 10 jobs: 11 build: 12 runs-on: ubuntu-latest 13 steps: 14 - uses: actions/checkout@v4 15 16 - uses: actions/setup-python@v5 17 with: 18 python-version: "3.12" 19 20 - uses: actions/setup-node@v4 21 with: 22 node-version: "20" 23 24 - name: Build frontend 25 env: 26 CI: false 27 run: | 28 cd frontend 29 npm ci 30 npm run build 31 32 - name: Install uv 33 uses: astral-sh/setup-uv@v4 34 35 - name: Build package 36 run: uv build 37 38 - name: Publish to PyPI 39 uses: pypa/gh-action-pypi-publish@release/v1