From 8f96e14a45ed64f2900a79cf08e862f083b04cdd Mon Sep 17 00:00:00 2001 From: Troy Tamas Date: Fri, 23 May 2025 10:56:04 +0900 Subject: [PATCH] trying the job in a new workflow i can run --- .github/workflows/try_build.yml | 83 +++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 .github/workflows/try_build.yml diff --git a/.github/workflows/try_build.yml b/.github/workflows/try_build.yml new file mode 100644 index 000000000..f5c25b543 --- /dev/null +++ b/.github/workflows/try_build.yml @@ -0,0 +1,83 @@ +name: Build Python Wheels +# https://docs.github.com/en/free-pro-team@latest/actions/guides/building-and-testing-python + +on: + # we just want to test in this PR + pull_request: + + +jobs: + build: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + max-parallel: 12 + matrix: + include: + - os: "macos-13" # intel runner + cibuild: "*macosx*" + cibw_arch: "macos_x86_64" + macos-arch: "x86_64" + - os: "macos-14" # M1 runner + cibuild: "*macosx*" + cibw_arch: "macos_arm64" + macos-arch: "arm64" + - os: "ubuntu-latest" + cibuild: "*manylinux*" + cibw_arch: "manylinux" + - os: "ubuntu-latest" + cibuild: "*musllinux*" + cibw_arch: "musllinux" + - os: "ubuntu-24.04-arm" # aarch64 manylinux on ARM runner + cibuild: "*manylinux*" + cibw_arch: "manylinux" + steps: + - name: Free Disk Space (Ubuntu) + if: matrix.os == 'ubuntu-latest' + uses: jlumbroso/free-disk-space@main + with: + android: true + dotnet: true + haskell: true + large-packages: true + - uses: hmarr/debug-action@v3 + - name: Cancel Workflow Action + uses: styfle/cancel-workflow-action@0.12.1 + - uses: actions/checkout@v4 + - name: ccache + uses: hendrikmuhs/ccache-action@v1.2 + with: + key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.cibuild }} # Make cache specific to OS + max-size: "5G" + - name: Install dependencies + run: | + env + export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" + echo "/usr/lib/ccache:/usr/local/opt/ccache/libexec" >> $GITHUB_PATH + HOST_CCACHE_DIR="$(ccache -k cache_dir)" + mkdir -p $HOST_CCACHE_DIR + - name: Build wheels # check https://cibuildwheel.readthedocs.io/en/stable/setup/#github-actions + uses: pypa/cibuildwheel@v2.23.3 + # to supply options, put them in 'env', like: + # env: + # CIBW_SOME_OPTION: value + env: + CIBW_BUILD: ${{ matrix.cibuild }} + CIBW_ARCHS_MACOS: ${{ matrix.macos-arch }} + CIBW_DEPENDENCY_VERSIONS_MACOS: cibw_constraints.txt + + - name: Download Cache from Docker (linux only) + if: ${{ runner.os == 'Linux' }} and ${{ matrix.os != 'ubuntu-24.04-arm' }} + # hack until https://github.com/pypa/cibuildwheel/issues/1030 is fixed + run: | + env + ccache -s + HOST_CCACHE_DIR="$(ccache -k cache_dir)" + rm -rf $HOST_CCACHE_DIR + mv ./wheelhouse/.ccache $HOST_CCACHE_DIR + ls -la $HOST_CCACHE_DIR + ccache -s + - uses: actions/upload-artifact@v4 + with: + name: artifact-${{ matrix.os }}-${{ matrix.cibw_arch }}-${{ strategy.job-index }} + path: ./wheelhouse/*.whl \ No newline at end of file