Skip to content

Commit 83895cd

Browse files
committed
Enable saving artifacts for some build jobs
Signed-off-by: Andre Moreira Magalhaes <andre.magalhaes@collabora.com>
1 parent 0cf1ef7 commit 83895cd

File tree

3 files changed

+317
-1
lines changed

3 files changed

+317
-1
lines changed

.github/workflows/build-riscv-native.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,3 +58,20 @@ jobs:
5858
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH
5959
6060
cmake --build build --config Release -j $(nproc)
61+
62+
- name: Determine tag name
63+
id: tag
64+
uses: ./.github/actions/get-tag-name
65+
66+
- name: Pack artifacts
67+
id: pack_artifacts
68+
run: |
69+
cp LICENSE ./build/bin/
70+
zip -r llama-${{ steps.tag.outputs.name }}-bin-debian-13-riscv64-native.zip ./build/bin/*
71+
72+
- name: Upload artifacts
73+
uses: actions/upload-artifact@v4
74+
with:
75+
path: llama-${{ steps.tag.outputs.name }}-bin-debian-13-riscv64-native.zip
76+
name: llama-bin-debian-13-riscv64-native.zip
77+

.github/workflows/build.yml

Lines changed: 275 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,22 @@ jobs:
9595
cd build
9696
ctest -L 'main|curl' --verbose --timeout 900
9797
98+
- name: Determine tag name
99+
id: tag
100+
uses: ./.github/actions/get-tag-name
101+
102+
- name: Pack artifacts
103+
id: pack_artifacts
104+
run: |
105+
cp LICENSE ./build/bin/
106+
zip -r llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-arm64.zip ./build/bin/*
107+
108+
- name: Upload artifacts
109+
uses: actions/upload-artifact@v4
110+
with:
111+
path: llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-arm64.zip
112+
name: llama-bin-macos-latest-cmake-arm64.zip
113+
98114
macOS-latest-cmake-x64:
99115
runs-on: macos-13
100116

@@ -136,6 +152,22 @@ jobs:
136152
cd build
137153
ctest -L main --verbose --timeout 900
138154
155+
- name: Determine tag name
156+
id: tag
157+
uses: ./.github/actions/get-tag-name
158+
159+
- name: Pack artifacts
160+
id: pack_artifacts
161+
run: |
162+
cp LICENSE ./build/bin/
163+
zip -r llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-x64.zip ./build/bin/*
164+
165+
- name: Upload artifacts
166+
uses: actions/upload-artifact@v4
167+
with:
168+
path: llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-x64.zip
169+
name: llama-bin-macos-latest-cmake-x64.zip
170+
139171
macOS-latest-cmake-arm64-webgpu:
140172
runs-on: macos-14
141173

@@ -183,6 +215,22 @@ jobs:
183215
cd build
184216
ctest -L main --verbose --timeout 900
185217
218+
- name: Determine tag name
219+
id: tag
220+
uses: ./.github/actions/get-tag-name
221+
222+
- name: Pack artifacts
223+
id: pack_artifacts
224+
run: |
225+
cp LICENSE ./build/bin/
226+
zip -r llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-arm64-webgpu.zip ./build/bin/*
227+
228+
- name: Upload artifacts
229+
uses: actions/upload-artifact@v4
230+
with:
231+
path: llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-arm64-webgpu.zip
232+
name: llama-bin-macos-latest-cmake-arm64-webgpu.zip
233+
186234
ubuntu-cpu-cmake:
187235
strategy:
188236
matrix:
@@ -236,6 +284,22 @@ jobs:
236284
./bin/llama-convert-llama2c-to-ggml --copy-vocab-from-model ./tok512.bin --llama2c-model stories260K.bin --llama2c-output-model stories260K.gguf
237285
./bin/llama-cli -m stories260K.gguf -p "One day, Lily met a Shoggoth" -n 500 -c 256
238286
287+
- name: Determine tag name
288+
id: tag
289+
uses: ./.github/actions/get-tag-name
290+
291+
- name: Pack artifacts
292+
id: pack_artifacts
293+
run: |
294+
cp LICENSE ./build/bin/
295+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-cpu-cmake-${{ matrix.build }}.zip ./build/bin/*
296+
297+
- name: Upload artifacts
298+
uses: actions/upload-artifact@v4
299+
with:
300+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-cpu-cmake-${{ matrix.build }}.zip
301+
name: llama-bin-ubuntu-cpu-cmake-${{ matrix.build }}.zip
302+
239303
ubuntu-latest-cmake-sanitizer:
240304
runs-on: ubuntu-latest
241305

@@ -320,6 +384,22 @@ jobs:
320384
cd build
321385
ctest -L main --verbose --timeout 900
322386
387+
- name: Determine tag name
388+
id: tag
389+
uses: ./.github/actions/get-tag-name
390+
391+
- name: Pack artifacts
392+
id: pack_artifacts
393+
run: |
394+
cp LICENSE ./build/bin/
395+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-latest-cmake-sanitizer.zip ./build/bin/*
396+
397+
- name: Upload artifacts
398+
uses: actions/upload-artifact@v4
399+
with:
400+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-latest-llguidance.zip
401+
name: llama-bin-ubuntu-latest-llguidance.zip
402+
323403
ubuntu-latest-cmake-rpc:
324404
runs-on: ubuntu-latest
325405

@@ -355,6 +435,22 @@ jobs:
355435
cd build
356436
ctest -L main --verbose
357437
438+
- name: Determine tag name
439+
id: tag
440+
uses: ./.github/actions/get-tag-name
441+
442+
- name: Pack artifacts
443+
id: pack_artifacts
444+
run: |
445+
cp LICENSE ./build/bin/
446+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-latest-cmake-rpc.zip ./build/bin/*
447+
448+
- name: Upload artifacts
449+
uses: actions/upload-artifact@v4
450+
with:
451+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-latest-cmake-rpc.zip
452+
name: llama-bin-ubuntu-latest-cmake-rpc.zip
453+
358454
ubuntu-22-cmake-vulkan:
359455
runs-on: ubuntu-22.04
360456

@@ -392,6 +488,22 @@ jobs:
392488
# This is using llvmpipe and runs slower than other backends
393489
ctest -L main --verbose --timeout 6200
394490
491+
- name: Determine tag name
492+
id: tag
493+
uses: ./.github/actions/get-tag-name
494+
495+
- name: Pack artifacts
496+
id: pack_artifacts
497+
run: |
498+
cp LICENSE ./build/bin/
499+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-vulkan.zip ./build/bin/*
500+
501+
- name: Upload artifacts
502+
uses: actions/upload-artifact@v4
503+
with:
504+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-vulkan.zip
505+
name: llama-bin-ubuntu-22-cmake-vulkan.zip
506+
395507
ubuntu-22-cmake-webgpu:
396508
runs-on: ubuntu-22.04
397509

@@ -442,6 +554,22 @@ jobs:
442554
# This is using llvmpipe and runs slower than other backends
443555
ctest -L main --verbose --timeout 3600
444556
557+
- name: Determine tag name
558+
id: tag
559+
uses: ./.github/actions/get-tag-name
560+
561+
- name: Pack artifacts
562+
id: pack_artifacts
563+
run: |
564+
cp LICENSE ./build/bin/
565+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-webgpu.zip ./build/bin/*
566+
567+
- name: Upload artifacts
568+
uses: actions/upload-artifact@v4
569+
with:
570+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-webgpu.zip
571+
name: llama-bin-ubuntu-22-cmake-vulkan.zip
572+
445573
ubuntu-22-cmake-hip:
446574
runs-on: ubuntu-22.04
447575
container: rocm/dev-ubuntu-22.04:6.1.2
@@ -548,6 +676,22 @@ jobs:
548676
-DCMAKE_CXX_COMPILER=icpx
549677
cmake --build build --config Release -j $(nproc)
550678
679+
- name: Determine tag name
680+
id: tag
681+
uses: ./.github/actions/get-tag-name
682+
683+
- name: Pack artifacts
684+
id: pack_artifacts
685+
run: |
686+
cp LICENSE ./build/bin/
687+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-sycl.zip ./build/bin/*
688+
689+
- name: Upload artifacts
690+
uses: actions/upload-artifact@v4
691+
with:
692+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-sycl.zip
693+
name: llama-bin-ubuntu-22-cmake-sycl.zip
694+
551695
ubuntu-22-cmake-sycl-fp16:
552696
runs-on: ubuntu-22.04
553697

@@ -597,6 +741,22 @@ jobs:
597741
-DGGML_SYCL_F16=ON
598742
cmake --build build --config Release -j $(nproc)
599743
744+
- name: Determine tag name
745+
id: tag
746+
uses: ./.github/actions/get-tag-name
747+
748+
- name: Pack artifacts
749+
id: pack_artifacts
750+
run: |
751+
cp LICENSE ./build/bin/
752+
zip -r llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-sycl-fp16.zip ./build/bin/*
753+
754+
- name: Upload artifacts
755+
uses: actions/upload-artifact@v4
756+
with:
757+
path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-22-cmake-sycl-fp16.zip
758+
name: llama-bin-ubuntu-22-cmake-sycl-fp16.zip
759+
600760
build-linux-cross:
601761
uses: ./.github/workflows/build-linux-cross.yml
602762

@@ -640,6 +800,22 @@ jobs:
640800
-DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
641801
cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
642802
803+
- name: Determine tag name
804+
id: tag
805+
uses: ./.github/actions/get-tag-name
806+
807+
- name: Pack artifacts
808+
id: pack_artifacts
809+
run: |
810+
cp LICENSE ./build/bin/
811+
zip -r llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-ios.zip ./build/bin/*
812+
813+
- name: Upload artifacts
814+
uses: actions/upload-artifact@v4
815+
with:
816+
path: llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-ios.zip
817+
name: llama-bin-macos-latest-cmake-ios.zip
818+
643819
macOS-latest-cmake-tvos:
644820
runs-on: macos-latest
645821

@@ -677,6 +853,22 @@ jobs:
677853
-DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
678854
cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
679855
856+
- name: Determine tag name
857+
id: tag
858+
uses: ./.github/actions/get-tag-name
859+
860+
- name: Pack artifacts
861+
id: pack_artifacts
862+
run: |
863+
cp LICENSE ./build/bin/
864+
zip -r llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-tvos.zip ./build/bin/*
865+
866+
- name: Upload artifacts
867+
uses: actions/upload-artifact@v4
868+
with:
869+
path: llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-tvos.zip
870+
name: llama-bin-macos-latest-cmake-tvos.zip
871+
680872
macOS-latest-cmake-visionos:
681873
runs-on: macos-latest
682874

@@ -708,6 +900,22 @@ jobs:
708900
-DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
709901
cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
710902
903+
- name: Determine tag name
904+
id: tag
905+
uses: ./.github/actions/get-tag-name
906+
907+
- name: Pack artifacts
908+
id: pack_artifacts
909+
run: |
910+
cp LICENSE ./build/bin/
911+
zip -r llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-visionos.zip ./build/bin/*
912+
913+
- name: Upload artifacts
914+
uses: actions/upload-artifact@v4
915+
with:
916+
path: llama-${{ steps.tag.outputs.name }}-bin-macos-latest-cmake-visionos.zip
917+
name: llama-bin-macos-latest-cmake-visionos.zip
918+
711919
macOS-latest-swift:
712920
runs-on: macos-latest
713921

@@ -1199,6 +1407,73 @@ jobs:
11991407
cd examples/llama.android
12001408
./gradlew build --no-daemon
12011409
1410+
- name: Determine tag name
1411+
id: tag
1412+
uses: ./.github/actions/get-tag-name
1413+
1414+
- name: Pack artifacts
1415+
id: pack_artifacts
1416+
run: |
1417+
cp LICENSE ./examples/llama.android/app/build
1418+
zip -r llama-${{ steps.tag.outputs.name }}-bin-android-build.zip ./examples/llama.android/app/build/*
1419+
1420+
- name: Upload artifacts
1421+
uses: actions/upload-artifact@v4
1422+
with:
1423+
path: llama-${{ steps.tag.outputs.name }}-bin-android-build.zip
1424+
name: llama-bin-android-build.zip
1425+
1426+
android-ndk-build:
1427+
runs-on: ubuntu-latest
1428+
1429+
env:
1430+
VULKAN_SDK_VERSION: 1.4.328.1
1431+
1432+
strategy:
1433+
matrix:
1434+
include:
1435+
- build: 'arm64-snapdragon-vulkan'
1436+
defines: '--preset arm64-android-snapdragon-vulkan-release'
1437+
1438+
steps:
1439+
- name: Clone
1440+
id: checkout
1441+
uses: actions/checkout@v4
1442+
1443+
- name: Install Vulkan Headers
1444+
id: install_vulkan
1445+
if: ${{ matrix.build == 'arm64-snapdragon-vulkan' }}
1446+
run: |
1447+
curl -L -o vulkansdk-linux-x86_64.tar.xz https://sdk.lunarg.com/sdk/download/${VULKAN_SDK_VERSION}/linux/vulkansdk-linux-x86_64-${VULKAN_SDK_VERSION}.tar.xz
1448+
mkdir vulkansdk-linux-x86_64
1449+
tar -xaf vulkansdk-linux-x86_64.tar.xz -C vulkansdk-linux-x86_64
1450+
sudo cp -r vulkansdk-linux-x86_64/${VULKAN_SDK_VERSION}/x86_64/include/vulkan/* ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/vulkan
1451+
sudo cp -r vulkansdk-linux-x86_64/${VULKAN_SDK_VERSION}/x86_64/include/vk_video ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include
1452+
1453+
- name: Build
1454+
id: ndk_build
1455+
run: |
1456+
# set PATH for `glslc`
1457+
export PATH=$PATH:${ANDROID_NDK_ROOT}/shader-tools/linux-x86_64/
1458+
cmake ${{ matrix.defines }} -B build
1459+
cmake --build build
1460+
1461+
- name: Determine tag name
1462+
id: tag
1463+
uses: ./.github/actions/get-tag-name
1464+
1465+
- name: Pack artifacts
1466+
id: pack_artifacts
1467+
run: |
1468+
cp LICENSE ./build/bin/
1469+
zip -r llama-${{ steps.tag.outputs.name }}-bin-android-ndk-build-${{ matrix.build }}.zip ./build/bin/*
1470+
1471+
- name: Upload artifacts
1472+
uses: actions/upload-artifact@v4
1473+
with:
1474+
path: llama-${{ steps.tag.outputs.name }}-bin-android-ndk-build-${{ matrix.build }}.zip
1475+
name: llama-bin-android-ndk-build-${{ matrix.build }}.zip
1476+
12021477
openEuler-latest-cmake-cann:
12031478
if: ${{ github.event_name != 'pull_request' || contains(github.event.pull_request.labels.*.name, 'Ascend NPU') }}
12041479
defaults:

0 commit comments

Comments
 (0)