Skip to content

Commit 25f2151

Browse files
committed
Add WoA workflows file
1 parent 4337ce5 commit 25f2151

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed

.github/workflows/windows-arm.yml

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
name: Windows-on-ARM
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
workflow_dispatch: null
9+
10+
env:
11+
OPENBLAS_COMMIT: "v0.3.29"
12+
OPENBLAS_ROOT: "c:\\opt"
13+
# Preserve working directory for calls into bash
14+
# Without this, invoking bash will cd to the home directory
15+
CHERE_INVOKING: "yes"
16+
BASH_PATH: "c:\\rtools40\\usr\\bin\\bash.exe"
17+
18+
jobs:
19+
build:
20+
runs-on: windows-11-arm
21+
22+
timeout-minutes: 90
23+
steps:
24+
- uses: actions/checkout@v4.1.1
25+
26+
- name: Set up Python
27+
uses: actions/setup-python@v5
28+
with:
29+
python-version: 3.9
30+
architecture: arm64
31+
32+
- name: Build
33+
run: |
34+
git submodule update --init --recursive
35+
.\tools\build_steps_win_arm64.bat
36+
37+
- name: Test
38+
run: |
39+
& $env:BASH_PATH -lc tools/build_gfortran.sh
40+
echo "Static test"
41+
.\for_test\test.exe
42+
echo "Dynamic test"
43+
.\for_test\test_dyn.exe
44+
45+
- name: Copy
46+
run: |
47+
cp for_test\test*.exe builds
48+
49+
- uses: actions/upload-artifact@v4.3.0
50+
with:
51+
name: wheels-${{matrix.plat }}-${{ matrix.INTERFACE64 }}
52+
path: dist/scipy_openblas*.whl
53+
54+
- uses: actions/upload-artifact@v4.3.0
55+
with:
56+
name: openblas-${{matrix.plat }}-${{ matrix.INTERFACE64 }}
57+
path: builds/openblas*.zip
58+
59+
- name: Test 64-bit interface wheel
60+
run: |
61+
python -m pip install --no-index --find-links dist scipy_openblas64
62+
python -m scipy_openblas64
63+
python -c "import scipy_openblas64; print(scipy_openblas64.get_pkg_config())"
64+
65+
- name: Install Anaconda client
66+
run: |
67+
wget https://static.rust-lang.org/rustup/dist/aarch64-pc-windows-msvc/rustup-init.exe -Outfile rustup-init.exe
68+
.\rustup-init.exe -y
69+
$env:PATH="$env:PATH;$env:USERPROFILE\.cargo\bin"
70+
pip install anaconda-client
71+
72+
- name: Upload
73+
# see https://github.com/marketplace/actions/setup-miniconda for why
74+
# `-el {0}` is required.
75+
shell: bash -el {0}
76+
env:
77+
ANACONDA_SCIENTIFIC_PYTHON_UPLOAD: ${{ secrets.ANACONDA_SCIENTIFIC_PYTHON_UPLOAD }}
78+
run: |
79+
source tools/upload_to_anaconda_staging.sh
80+
upload_wheels

0 commit comments

Comments
 (0)