diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 28e2ce69..4ddc356a 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -1,10 +1,10 @@ name: Build and test on: - push: - branches: [main] - tags: 'v*' - pull_request: + # push: + # branches: [main] + # tags: 'v*' + # pull_request: workflow_dispatch: env: diff --git a/.github/workflows/python-wheels.yml b/.github/workflows/python-wheels.yml new file mode 100644 index 00000000..535382bb --- /dev/null +++ b/.github/workflows/python-wheels.yml @@ -0,0 +1,52 @@ +name: Build Python wheels + +on: + push: + branches: [main] + tags: 'v*' + pull_request: + workflow_dispatch: + +jobs: + build-python-wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] #, windows-latest, macos-13, macos-14] + python-version: ['cp310', 'cp311'] + + steps: + - uses: actions/checkout@v4 + + - name: Set up rust + uses: dtolnay/rust-toolchain@stable + with: + toolchain: stable + + - name: Check Rust Version + run: rustc --version + + - name: Set up Python # Used to host cibuildwheel + uses: actions/setup-python@v3 + + - name: Install cibuildwheel + run: python -m pip install cibuildwheel==2.16.5 + + - name: Install maturin + run: python -m pip install maturin + + - name: Build wheels + run: | + cd lakers-python + python -m cibuildwheel --output-dir wheelhouse + env: + CIBW_BUILD: '${{ matrix.python-version }}-*' + CIBW_ENVIRONMENT: 'PATH="$HOME/.cargo/bin:$PATH" CARGO_TERM_COLOR="always"' + CIBW_ENVIRONMENT_WINDOWS: 'PATH="$UserProfile\.cargo\bin;$PATH"' + # CIBW_BEFORE_BUILD: rustup show + + - uses: actions/upload-artifact@v4 + with: + name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }} + path: ./wheelhouse/*.whl