| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | name: Build and publish# Run on PR requests. And on master itself.on:  push:    branches:      - main  # just build the sdist skip release    tags:      - "*"  pull_request:  # also build on PRs touching some files    paths:      - ".github/workflows/release.yml"      - "MANIFEST.in"      - "pyproject.toml"jobs:  build:    name: Build    runs-on: ubuntu-latest    steps:      - name: Checkout source        uses: actions/checkout@v3      - name: Set up Python        uses: actions/setup-python@v4        with:          python-version: "3.10"      - name: Build a source tarball        run: |          python -m pip install build          python -m build      - uses: actions/upload-artifact@v3        with:          path: ./dist/*          retention-days: 5  publish:    name: Publish on GitHub and PyPI    needs: [build]    runs-on: ubuntu-latest    # release on every tag    if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/')    steps:      - uses: actions/download-artifact@v3        with:          name: artifact          path: dist      - name: Upload Github release        id: upload-release-asset        uses: softprops/action-gh-release@v1      - name: Upload Release Assets to PyPI        uses: pypa/gh-action-pypi-publish@release/v1        with:          password: ${{ secrets.PYPI_UPLOAD_TOKEN }}
 |