name: Build and Publish Package on: pull_request: branches: - main types: - closed jobs: publish-package: if: ${{ github.event.pull_request.merged == true && startsWith(github.event.pull_request.head.ref, 'release/v') }} runs-on: ubuntu-latest steps: - name: Check out textarea main branch uses: actions/checkout@v4 with: ref: main - name: Set up Python 3.10 uses: actions/setup-python@v5 with: python-version: "3.10" - name: Install Poetry uses: snok/install-poetry@v1 with: version: 1.2.2 - name: Configure poetry run: poetry config --no-interaction pypi-token.pypi ${{ secrets.TEXTAREA_PYPI_TOKEN }} - name: Get textarea Version id: textarea_version run: echo "textarea_version=$(poetry version --short)" >> $GITHUB_OUTPUT - name: Build package run: poetry build --no-interaction - name: Publish package to PyPI run: poetry publish --no-interaction - name: Create a Github Release uses: softprops/action-gh-release@v2 with: tag_name: v${{ steps.textarea_version.outputs.textarea_version }} target_commitish: main token: ${{ secrets.TEXTAREA_RELEASE_TOKEN }} body_path: CHANGELOG.md files: | LICENSE dist/*textual_textarea*.whl dist/*textual_textarea*.tar.gz