From 196a776dd8c66416378506aa478eb5d750b6c2a5 Mon Sep 17 00:00:00 2001 From: Robert Kruszewski Date: Fri, 20 Sep 2024 17:14:54 +0100 Subject: [PATCH] Enable debug logging for pypi publish (#896) Indentation wasn't quite the same in this file compared to others --- .github/workflows/publish-vortex.yml | 175 ++++++++++++++------------- 1 file changed, 88 insertions(+), 87 deletions(-) diff --git a/.github/workflows/publish-vortex.yml b/.github/workflows/publish-vortex.yml index bd25cc788..5a8cefb91 100644 --- a/.github/workflows/publish-vortex.yml +++ b/.github/workflows/publish-vortex.yml @@ -6,105 +6,106 @@ jobs: macos: runs-on: macos-latest steps: - - uses: actions/checkout@v4 - - uses: ./.github/actions/cleanup - - uses: ./.github/actions/setup-rust - - uses: ./.github/actions/setup-python - - name: rust-toolchain - shell: bash - run: echo "version=$(cat rust-toolchain.toml | grep channel | awk -F'\"' '{print $2}')" >> $GITHUB_OUTPUT - - name: Build wheels - x86_64 - uses: PyO3/maturin-action@v1 - with: - rust-toolchain: ${{ steps.rust-toolchain.version }} - working-directory: pyvortex - target: x86_64 - args: --release --interpreter python3.11 --sdist - - name: Build wheels - aarch64 - uses: PyO3/maturin-action@v1 - with: - rust-toolchain: ${{ steps.rust-toolchain.version }} - working-directory: pyvortex - target: aarch64 # NB: aarch64 becomes arm64 in the wheel's platform tag. - args: --release --interpreter python3.11 - - name: Build wheels - universal2 - uses: PyO3/maturin-action@v1 - with: - rust-toolchain: ${{ steps.rust-toolchain.version }} - working-directory: pyvortex - target: universal2-apple-darwin - args: --release --interpreter python3.11 - - name: test wheel - run: | - set -ex - source .venv/bin/activate - ls -al target/wheels + - uses: actions/checkout@v4 + - uses: ./.github/actions/cleanup + - uses: ./.github/actions/setup-rust + - uses: ./.github/actions/setup-python + - name: rust-toolchain + shell: bash + run: echo "version=$(cat rust-toolchain.toml | grep channel | awk -F'\"' '{print $2}')" >> $GITHUB_OUTPUT + - name: Build wheels - x86_64 + uses: PyO3/maturin-action@v1 + with: + rust-toolchain: ${{ steps.rust-toolchain.version }} + working-directory: pyvortex + target: x86_64 + args: --release --interpreter python3.11 --sdist + - name: Build wheels - aarch64 + uses: PyO3/maturin-action@v1 + with: + rust-toolchain: ${{ steps.rust-toolchain.version }} + working-directory: pyvortex + target: aarch64 # NB: aarch64 becomes arm64 in the wheel's platform tag. + args: --release --interpreter python3.11 + - name: Build wheels - universal2 + uses: PyO3/maturin-action@v1 + with: + rust-toolchain: ${{ steps.rust-toolchain.version }} + working-directory: pyvortex + target: universal2-apple-darwin + args: --release --interpreter python3.11 + - name: test wheel + run: | + set -ex + source .venv/bin/activate + ls -al target/wheels - echo removing linux_x86_64 if it exists because PyPI will reject the package if it is present - rm -f target/wheels/*linux_x86_64.whl + echo removing linux_x86_64 if it exists because PyPI will reject the package if it is present + rm -f target/wheels/*linux_x86_64.whl - pip install --no-deps --force-reinstall vortex-array --no-index --find-links target/wheels - cd pyvortex/test && pytest - - name: Upload wheels - uses: actions/upload-artifact@v4 - with: - name: osx-wheels - path: target/wheels + pip install --no-deps --force-reinstall vortex-array --no-index --find-links target/wheels + cd pyvortex/test && pytest + - name: Upload wheels + uses: actions/upload-artifact@v4 + with: + name: osx-wheels + path: target/wheels linux: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - # maturin-action builds in an isolated container; setting RUSTC_WRAPPER=sccache triggers failure - # because sccache is not installed in the container. - # - # - uses: ./.github/actions/setup-rust - - uses: ./.github/actions/setup-python - - name: rust-toolchain - shell: bash - run: echo "version=$(cat rust-toolchain.toml | grep channel | awk -F'\"' '{print $2}')" >> $GITHUB_OUTPUT - - name: Build wheels - uses: PyO3/maturin-action@v1 - with: - rust-toolchain: ${{ steps.rust-toolchain.version }} - working-directory: pyvortex - target: x86_64 - manylinux: auto - args: --release --interpreter python3.11 - - name: test wheel - run: | - set -ex - source .venv/bin/activate - ls -al target/wheels + - uses: actions/checkout@v4 + # maturin-action builds in an isolated container; setting RUSTC_WRAPPER=sccache triggers failure + # because sccache is not installed in the container. + # + # - uses: ./.github/actions/setup-rust + - uses: ./.github/actions/setup-python + - name: rust-toolchain + shell: bash + run: echo "version=$(cat rust-toolchain.toml | grep channel | awk -F'\"' '{print $2}')" >> $GITHUB_OUTPUT + - name: Build wheels + uses: PyO3/maturin-action@v1 + with: + rust-toolchain: ${{ steps.rust-toolchain.version }} + working-directory: pyvortex + target: x86_64 + manylinux: auto + args: --release --interpreter python3.11 + - name: test wheel + run: | + set -ex + source .venv/bin/activate + ls -al target/wheels - echo removing linux_x86_64 if it exists because PyPI will reject the package if it is present - rm -f target/wheels/*linux_x86_64.whl + echo removing linux_x86_64 if it exists because PyPI will reject the package if it is present + rm -f target/wheels/*linux_x86_64.whl - pip install --no-deps --force-reinstall vortex-array --no-index --find-links target/wheels - pip install pytest - cd pyvortex/test && pytest - - name: Upload wheels - uses: actions/upload-artifact@v4 - with: - name: linux-wheels - path: target/wheels + pip install --no-deps --force-reinstall vortex-array --no-index --find-links target/wheels + pip install pytest + cd pyvortex/test && pytest + - name: Upload wheels + uses: actions/upload-artifact@v4 + with: + name: linux-wheels + path: target/wheels release: runs-on: ubuntu-latest permissions: id-token: write # IMPORTANT: mandatory for trusted publishing - needs: [macos, linux] + needs: [ macos, linux ] environment: name: push-to-pypi url: https://pypi.org/p/vortex-array steps: - - uses: actions/download-artifact@v4 - with: - # https://github.com/actions/download-artifact?tab=readme-ov-file#download-all-artifacts - # "To download them to the same directory:" - path: dist/ - merge-multiple: true - - name: Display structure of downloaded files - run: ls -R dist/ - - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@release/v1 - with: - attestations: true + - uses: actions/download-artifact@v4 + with: + # https://github.com/actions/download-artifact?tab=readme-ov-file#download-all-artifacts + # "To download them to the same directory:" + path: dist/ + merge-multiple: true + - name: Display structure of downloaded files + run: ls -R dist/ + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + attestations: true + verbose: true