Skip to content

chore: add info about release-please to contributing guidelines #7

chore: add info about release-please to contributing guidelines

chore: add info about release-please to contributing guidelines #7

name: Release Please
on:
push:
branches:
- main
permissions:
contents: write
pull-requests: write
issues: write
jobs:
release-please:
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
tag_name: ${{ steps.release.outputs.tag_name }}
pr: ${{ steps.release.outputs.pr }}
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
config-file: .release-please-config.json
manifest-file: .release-please-manifest.json
test-pypi:
runs-on: ubuntu-latest
needs: release-please
if: ${{ needs.release-please.outputs.pr }}
steps:
- uses: actions/checkout@v4
- name: Set up the environment
uses: ./.github/actions/setup-uv-env
- name: Build package
run: uv build
- name: Publish to Test PyPI
env:
UV_PUBLISH_TOKEN: ${{ secrets.TEST_PYPI_TOKEN }}
run: |
if [ -n "$UV_PUBLISH_TOKEN" ]; then
uv publish --repository testpypi
else
echo "TEST_PYPI_TOKEN not set, skipping test PyPI publish"
fi
publish:
runs-on: ubuntu-latest
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
steps:
- uses: actions/checkout@v4
- name: Set up the environment
uses: ./.github/actions/setup-uv-env
- name: Build package
run: uv build
- name: Publish to PyPI
env:
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_TOKEN }}
run: uv publish
deploy-docs:
runs-on: ubuntu-latest
needs: publish
if: ${{ needs.release-please.outputs.release_created }}
steps:
- uses: actions/checkout@v4
- name: Set up the environment
uses: ./.github/actions/setup-uv-env
- name: Deploy documentation
run: make docs-deploy