name: Pip package

on:
  push:
  release:
    types: [released]

jobs:
  build-and-push:
    runs-on: ubuntu-latest
    strategy:
        matrix:
          python-version: ["3.10"]
          poetry-version: ["1.7.1"]
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - uses: ./.github/actions/prepare
        with:
          python-version: ${{ matrix.python-version }}
          poetry-version: ${{ matrix.poetry-version }}

      - name: Build package
        run: |
          poetry build

      - name: Install package
        run: |
          pip install --upgrade dist/*.whl

      - name: Upload to PyPI on release
        if: github.event_name == 'release' && github.event.action == 'released'
        run: |
          poetry publish -u __token__ -p ${{ secrets.PYPI_API_TOKEN }}
