flute 1.11.0

File Delivery over Unidirectional Transport (FLUTE)
Documentation
name: PyPi

on:
  repository_dispatch:
    types: [release]


jobs:
  linux:
    name: "Linux"
    runs-on: ubuntu-latest
    strategy:
      matrix:
        target: [x86_64]
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-python@v4
        with:
          python-version: "3.11"
          architecture: x64
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
      - name: Build wheels
        uses: PyO3/maturin-action@v1
        with:
          target: ${{ matrix.target }}
          manylinux: auto
          args: --all-features --release --out dist -i 3.7 3.8 3.9 3.10 3.11 pypy3.9
      - name: Upload wheels
        uses: actions/upload-artifact@v4
        with:
          name: wheels
          path: dist

  #windows:
  #  runs-on: windows-latest
  #  name: windows (${{ matrix.platform.target }})
  #  strategy:
  #    matrix:
  #      platform:
  #        - target: x64
  #          interpreter: 3.7 3.8 3.9 3.10 3.11 pypy3.8 pypy3.9
  #  steps:
  #    - uses: actions/checkout@v3
  #    - uses: actions/setup-python@v4
  #      with:
  #        python-version: '3.11'
  #        architecture: ${{ matrix.platform.target }}
  #    - uses: actions-rs/toolchain@v1
  #      with:
  #        toolchain: stable
  #    - name: Build wheels
  #      uses: PyO3/maturin-action@v1
  #      with:
  #        target: ${{ matrix.platform.target }}
  #        args: --all-features --release --out dist -i ${{ matrix.platform.interpreter }}
  #    - name: Upload wheels
  #      uses: actions/upload-artifact@v3
  #      with:
  #        name: wheels
  #        path: dist

  release:
    name: Release
    runs-on: ubuntu-latest
    environment: production
    # if: "startsWith(github.ref, 'refs/tags/')"
    needs: [ linux ]
    steps:
      - name: Download wheels
        uses: actions/download-artifact@v4
        with:
          name: wheels
      - uses: actions/setup-python@v4
        with:
          python-version: "3.11"
      - name: Publish to PyPI
        env:
          TWINE_USERNAME: __token__
          TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
        run: |
          pip install --upgrade twine
          twine upload --verbose --skip-existing *