Skip to content

Commit 0d33efe

Browse files
committed
Split Windows workflow into 5 jobs
1 parent 6bbe7c5 commit 0d33efe

2 files changed

Lines changed: 138 additions & 12 deletions

File tree

.github/workflows/build.yml

Lines changed: 136 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,32 +7,158 @@ on:
77
- main
88

99
jobs:
10-
windows:
10+
windows-hostlibs-x64:
1111
runs-on: windows-2025-vs2026
1212

1313
steps:
1414
- name: Checkout repository
1515
uses: actions/checkout@v4
1616
with:
1717
fetch-depth: 1
18-
submodules: recursive
18+
submodules: false
1919

20-
- name: Run pipeline
20+
- name: Initialize runtime submodule
2121
shell: powershell
22-
run: python .\scripts\pipeline.py all -v
22+
run: git submodule update --init --depth 1 repo/runtime
2323

24-
- name: Upload nuget packages
24+
- name: Build hostlibs for Windows x64
25+
shell: powershell
26+
run: python .\scripts\build-hostlibs.py all -v --arch x64
27+
28+
- name: Upload hostlibs win-x64
2529
uses: actions/upload-artifact@v4
2630
with:
27-
name: nuget-packages
28-
path: artifacts\packages\Release
31+
name: hostlibs-win-x64
32+
path: artifacts\hostlibs\win-x64
2933
if-no-files-found: error
3034

31-
- name: Upload skiasharp-2.88.9
35+
- name: Run matrix integration build
36+
shell: powershell
37+
run: python .\scripts\pipeline.py matrix -v
38+
39+
windows-hostlibs-arm64:
40+
runs-on: windows-2025-vs2026
41+
42+
steps:
43+
- name: Checkout repository
44+
uses: actions/checkout@v4
45+
with:
46+
fetch-depth: 1
47+
submodules: false
48+
49+
- name: Initialize runtime submodule
50+
shell: powershell
51+
run: git submodule update --init --depth 1 repo/runtime
52+
53+
- name: Build hostlibs for Windows arm64
54+
shell: powershell
55+
run: python .\scripts\build-hostlibs.py all -v --arch arm64
56+
57+
- name: Upload hostlibs win-arm64
3258
uses: actions/upload-artifact@v4
3359
with:
34-
name: skiasharp-2.88.9
35-
path: artifacts\skiasharp-2.88.9
60+
name: hostlibs-win-arm64
61+
path: artifacts\hostlibs\win-arm64
62+
if-no-files-found: error
63+
64+
windows-skia-x64:
65+
runs-on: windows-2025-vs2026
66+
67+
steps:
68+
- name: Checkout repository
69+
uses: actions/checkout@v4
70+
with:
71+
fetch-depth: 1
72+
submodules: false
73+
74+
- name: Initialize Skia dependencies submodules
75+
shell: powershell
76+
run: git submodule update --init --depth 1 repo/skia repo/depot_tools
77+
78+
- name: Build SkiaSharp and HarfBuzz for Windows x64
79+
shell: powershell
80+
run: python .\scripts\build-skia-harfbuzz.py -v -a x64
81+
82+
- name: Upload skiasharp-2.88.9 win-x64
83+
uses: actions/upload-artifact@v4
84+
with:
85+
name: skiasharp-2.88.9-win-x64
86+
path: artifacts\skiasharp-2.88.9\win-x64
87+
if-no-files-found: error
88+
89+
windows-skia-arm64:
90+
runs-on: windows-2025-vs2026
91+
92+
steps:
93+
- name: Checkout repository
94+
uses: actions/checkout@v4
95+
with:
96+
fetch-depth: 1
97+
submodules: false
98+
99+
- name: Initialize Skia dependencies submodules
100+
shell: powershell
101+
run: git submodule update --init --depth 1 repo/skia repo/depot_tools
102+
103+
- name: Build SkiaSharp and HarfBuzz for Windows arm64
104+
shell: powershell
105+
run: python .\scripts\build-skia-harfbuzz.py -v -a arm64
106+
107+
- name: Upload skiasharp-2.88.9 win-arm64
108+
uses: actions/upload-artifact@v4
109+
with:
110+
name: skiasharp-2.88.9-win-arm64
111+
path: artifacts\skiasharp-2.88.9\win-arm64
112+
if-no-files-found: error
113+
114+
windows-pack-avalonia:
115+
runs-on: windows-2025-vs2026
116+
needs:
117+
- windows-hostlibs-x64
118+
- windows-hostlibs-arm64
119+
- windows-skia-x64
120+
- windows-skia-arm64
121+
122+
steps:
123+
- name: Checkout repository
124+
uses: actions/checkout@v4
125+
with:
126+
fetch-depth: 1
127+
submodules: false
128+
129+
- name: Download hostlibs win-x64
130+
uses: actions/download-artifact@v4
131+
with:
132+
name: hostlibs-win-x64
133+
path: artifacts\hostlibs\win-x64
134+
135+
- name: Download hostlibs win-arm64
136+
uses: actions/download-artifact@v4
137+
with:
138+
name: hostlibs-win-arm64
139+
path: artifacts\hostlibs\win-arm64
140+
141+
- name: Download skiasharp-2.88.9 win-x64
142+
uses: actions/download-artifact@v4
143+
with:
144+
name: skiasharp-2.88.9-win-x64
145+
path: artifacts\skiasharp-2.88.9\win-x64
146+
147+
- name: Download skiasharp-2.88.9 win-arm64
148+
uses: actions/download-artifact@v4
149+
with:
150+
name: skiasharp-2.88.9-win-arm64
151+
path: artifacts\skiasharp-2.88.9\win-arm64
152+
153+
- name: Pack Avalonia apphost
154+
shell: powershell
155+
run: python .\scripts\pipeline.py pack-avalonia -v
156+
157+
- name: Upload nuget packages
158+
uses: actions/upload-artifact@v4
159+
with:
160+
name: nuget-packages
161+
path: artifacts\packages\Release
36162
if-no-files-found: error
37163

38164
linux:

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ python .\scripts\pipeline.py hostlibs -v
7373
```
7474
7575
```powershell
76-
python .\scripts\build-hostlib.py all -v --arch x64
77-
python .\scripts\build-hostlib.py all -v --arch arm64
76+
python .\scripts\build-hostlibs.py all -v --arch x64
77+
python .\scripts\build-hostlibs.py all -v --arch arm64
7878
```
7979

8080
- 运行构建集成矩阵测试:

0 commit comments

Comments
 (0)