Skip to content

Commit 66ddfee

Browse files
devops: add osx-arm64 and linux-aarch64 conda package builds (#2211)
Co-authored-by: Max Schmitt <[email protected]>
1 parent 6a10c42 commit 66ddfee

File tree

4 files changed

+38
-6
lines changed

4 files changed

+38
-6
lines changed

.github/workflows/publish.yml

+28-5
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,45 @@ jobs:
66
deploy-conda:
77
strategy:
88
matrix:
9-
os: [ubuntu-latest, windows-latest, macos-latest]
9+
include:
10+
- os: ubuntu-latest
11+
target-platform: linux-x86_64
12+
- os: ubuntu-latest
13+
target-platform: linux-aarch64
14+
- os: windows-latest
15+
target-platform: win-64
16+
- os: macos-latest-large
17+
target-platform: osx-intel
18+
- os: macos-latest-xlarge
19+
target-platform: osx-arm64
1020
runs-on: ${{ matrix.os }}
21+
defaults:
22+
run:
23+
# Required for conda-incubator/setup-miniconda@v3
24+
shell: bash -el {0}
1125
steps:
1226
- uses: actions/checkout@v3
1327
with:
1428
fetch-depth: 0
1529
- name: Get conda
16-
uses: conda-incubator/setup-miniconda@v2
30+
uses: conda-incubator/setup-miniconda@v3
1731
with:
18-
python-version: 3.9
32+
python-version: 3.12
1933
channels: conda-forge
34+
miniconda-version: latest
2035
- name: Prepare
21-
run: conda install anaconda-client conda-build conda-verify
36+
# Pinned because of https://github.com/conda/conda-build/issues/5267
37+
run: conda install anaconda-client conda-build=24.1.2 conda-verify py-lief=0.12.3
2238
- name: Build and Upload
2339
env:
2440
ANACONDA_API_TOKEN: ${{ secrets.ANACONDA_API_TOKEN }}
2541
run: |
2642
conda config --set anaconda_upload yes
27-
conda build --user microsoft .
43+
if [ "${{ matrix.target-platform }}" == "osx-arm64" ]; then
44+
conda build --user microsoft . -m conda_build_config.yaml -m conda_build_config_osx_arm64.yaml
45+
elif [ "${{ matrix.target-platform }}" == "linux-aarch64" ]; then
46+
conda install cross-python_linux-aarch64
47+
conda build --user microsoft . -m conda_build_config.yaml -m conda_build_config_linux_aarch64.yaml
48+
else
49+
conda build --user microsoft . -m conda_build_config.yaml
50+
fi

conda_build_config_linux_aarch64.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
target_platform:
2+
- linux-aarch64

conda_build_config_osx_arm64.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
target_platform:
2+
- osx-arm64

meta.yaml

+6-1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ build:
1515
- playwright = playwright.__main__:main
1616

1717
requirements:
18+
build:
19+
- python # [build_platform != target_platform]
20+
- pip # [build_platform != target_platform]
21+
- cross-python_{{ target_platform }} # [build_platform != target_platform]
1822
host:
1923
- python
2024
- wheel
@@ -25,7 +29,8 @@ requirements:
2529
- python
2630
- greenlet ==3.0.3
2731
- pyee ==11.0.1
28-
test:
32+
33+
test: # [build_platform == target_platform]
2934
requires:
3035
- pip
3136
imports:

0 commit comments

Comments
 (0)