diff --git a/.github/workflows/build-test-release.yaml b/.github/workflows/build-test-release.yaml new file mode 100644 index 000000000..915bfd914 --- /dev/null +++ b/.github/workflows/build-test-release.yaml @@ -0,0 +1,66 @@ +name: Build and test release wheel + +on: + push: + branches: + - 'release/*' + + workflow_dispatch: + inputs: + gitref: + description: "git tag, commit or branch name for the release" + type: string + required: true + default: 'v0.4.0' + +jobs: + build-test-release-wheel: + runs-on: ubuntu-20.04 + steps: + - uses: actions/setup-python@v4 + with: + python-version: '3.10' + + - name: Checkout code + uses: actions/checkout@v4 + with: + ref: ${{ inputs.gitref }} + + - name: Build PyPi Wheel + id: build + uses: neuralmagic/nm-actions/actions/pypi_build@main + with: + dev: false + release: true + + - name: Set Env + run: | + pip3 install --upgrade pip && pip3 install --upgrade setuptools + pip3 install virtualenv + virtualenv venv + source venv/bin/activate + + - name: upload whl + uses: actions/upload-artifact@v4 + if: success() || failure() + with: + name: "wheel-compressed-tensors" + path: ${{ steps.build.outputs.whlname }} + retention-days: 7 + + - name: upload tar.gz + uses: actions/upload-artifact@v4 + if: success() || failure() + with: + name: "tar-compressed-tensors" + path: ${{ steps.build.outputs.tarname }} + retention-days: 7 + + - name: Install whl + run: | + pip3 install ${{ steps.build.outputs.whlname }}[dev] + + - name: Remove src files and run tests + run: | + rm -rf src + make test