name: Build Release on: workflow_dispatch permissions: contents: write jobs: build_wheels: name: Build wheels on ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, windows-latest, macOS-latest] steps: - uses: actions/checkout@v3 with: submodules: "true" # Used to host cibuildwheel - uses: actions/setup-python@v3 - name: Install cibuildwheel run: python -m pip install cibuildwheel==2.12.1 - name: Install dependencies run: | python -m pip install --upgrade pip pytest cmake scikit-build setuptools - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse - uses: actions/upload-artifact@v3 with: path: ./wheelhouse/*.whl build_sdist: name: Build source distribution runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: submodules: "true" - uses: actions/setup-python@v3 - name: Install dependencies run: | python -m pip install --upgrade pip pytest cmake scikit-build setuptools - name: Build source distribution run: | python setup.py sdist - uses: actions/upload-artifact@v3 with: path: ./dist/*.tar.gz release: name: Release needs: [build_wheels, build_sdist] runs-on: ubuntu-latest steps: - uses: actions/download-artifact@v3 with: name: artifact path: dist - uses: softprops/action-gh-release@v1 with: files: dist/* env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}