mirror of https://github.com/KLayout/klayout.git
trying the job in a new workflow i can run
This commit is contained in:
parent
fc00191f54
commit
8f96e14a45
|
|
@ -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
|
||||
Loading…
Reference in New Issue