Skip to content
This repository was archived by the owner on Jul 4, 2025. It is now read-only.

Commit c3a175f

Browse files
committed
feat(ci): Release as zip
1 parent 1ac4c9e commit c3a175f

File tree

1 file changed

+119
-13
lines changed

1 file changed

+119
-13
lines changed

.github/workflows/build.yml

Lines changed: 119 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,39 @@ jobs:
4646
CC=gcc-8 make -j $(nproc)
4747
ls -la
4848
49+
- name: Determine tag name
50+
id: tag
51+
shell: bash
52+
run: |
53+
BUILD_NUMBER="$(git rev-list --count HEAD)"
54+
SHORT_HASH="$(git rev-parse --short=7 HEAD)"
55+
if [[ "${{ env.BRANCH_NAME }}" == "master" ]]; then
56+
echo "name=b${BUILD_NUMBER}" >> $GITHUB_OUTPUT
57+
else
58+
SAFE_NAME=$(echo "${{ env.BRANCH_NAME }}" | tr '/' '-')
59+
echo "name=${SAFE_NAME}-b${BUILD_NUMBER}-${SHORT_HASH}" >> $GITHUB_OUTPUT
60+
fi
61+
62+
- name: Package
63+
shell: bash
64+
run: |
65+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-linux-amd64
66+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-linux-amd64/config
67+
cp config.json build/nitro-${{ steps.tag.outputs.name }}-linux-amd64/config
68+
cp build/nitro build/nitro-${{ steps.tag.outputs.name }}-linux-amd64
69+
cd build
70+
zip -r nitro-${{ steps.tag.outputs.name }}-linux-amd64.zip nitro-${{ steps.tag.outputs.name }}-linux-amd64
71+
ls -la
72+
cd ..
73+
4974
- name: Upload binaries to release
75+
if: ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
5076
uses: svenstaro/upload-release-action@v2
5177
with:
5278
repo_token: ${{ secrets.GITHUB_TOKEN }}
53-
file: build/nitro
54-
asset_name: nitro-linux-amd64
55-
tag: ${{ github.ref }}
79+
file: build/nitro-${{ steps.tag.outputs.name }}-linux-amd64.zip
80+
asset_name: nitro-${{ steps.tag.outputs.name }}-linux-amd64.zip
81+
tag: ${{ steps.tag.outputs.name }}
5682

5783
ubuntu-amd64-cuda-build:
5884
runs-on: linux-gpu
@@ -69,7 +95,7 @@ jobs:
6995
# id: depends
7096
# run: |
7197
# sudo apt-get update
72-
# sudo apt-get install build-essential gcc-8
98+
# sudo apt-get install build-essential gcc-8 uuid-dev
7399

74100
- name: Build
75101
id: make_build
@@ -80,13 +106,39 @@ jobs:
80106
CC=gcc-8 make -j $(nproc)
81107
ls -la
82108
109+
- name: Determine tag name
110+
id: tag
111+
shell: bash
112+
run: |
113+
BUILD_NUMBER="$(git rev-list --count HEAD)"
114+
SHORT_HASH="$(git rev-parse --short=7 HEAD)"
115+
if [[ "${{ env.BRANCH_NAME }}" == "master" ]]; then
116+
echo "name=b${BUILD_NUMBER}" >> $GITHUB_OUTPUT
117+
else
118+
SAFE_NAME=$(echo "${{ env.BRANCH_NAME }}" | tr '/' '-')
119+
echo "name=${SAFE_NAME}-b${BUILD_NUMBER}-${SHORT_HASH}" >> $GITHUB_OUTPUT
120+
fi
121+
122+
- name: Package
123+
shell: bash
124+
run: |
125+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda
126+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda/config
127+
cp config.json build/nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda/config
128+
cp build/nitro build/nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda
129+
cd build
130+
zip -r nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda.zip nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda
131+
ls -la
132+
cd ..
133+
83134
- name: Upload binaries to release
135+
if: ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
84136
uses: svenstaro/upload-release-action@v2
85137
with:
86138
repo_token: ${{ secrets.GITHUB_TOKEN }}
87-
file: build/nitro
88-
asset_name: nitro-linux-amd64-cuda
89-
tag: ${{ github.ref }}
139+
file: build/nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda.zip
140+
asset_name: nitro-${{ steps.tag.outputs.name }}-linux-amd64-cuda.zip
141+
tag: ${{ steps.tag.outputs.name }}
90142

91143
macOS-M-build:
92144
runs-on: mac-silicon
@@ -115,13 +167,40 @@ jobs:
115167
CC=gcc-8 make -j $(nproc)
116168
ls -la
117169
170+
- name: Determine tag name
171+
id: tag
172+
shell: bash
173+
run: |
174+
BUILD_NUMBER="$(git rev-list --count HEAD)"
175+
SHORT_HASH="$(git rev-parse --short=7 HEAD)"
176+
if [[ "${{ env.BRANCH_NAME }}" == "master" ]]; then
177+
echo "name=b${BUILD_NUMBER}" >> $GITHUB_OUTPUT
178+
else
179+
SAFE_NAME=$(echo "${{ env.BRANCH_NAME }}" | tr '/' '-')
180+
echo "name=${SAFE_NAME}-b${BUILD_NUMBER}-${SHORT_HASH}" >> $GITHUB_OUTPUT
181+
fi
182+
183+
- name: Package
184+
shell: bash
185+
run: |
186+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-mac-arm64
187+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-mac-arm64/config
188+
cp config.json build/nitro-${{ steps.tag.outputs.name }}-mac-arm64/config
189+
cp llama.cpp/ggml-metal.h build/nitro-${{ steps.tag.outputs.name }}-mac-arm64
190+
cp build/nitro build/nitro-${{ steps.tag.outputs.name }}-mac-arm64
191+
cd build
192+
zip -r nitro-${{ steps.tag.outputs.name }}-mac-arm64.zip nitro-${{ steps.tag.outputs.name }}-mac-arm64
193+
ls -la
194+
cd ..
195+
118196
- name: Upload binaries to release
197+
if: ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
119198
uses: svenstaro/upload-release-action@v2
120199
with:
121200
repo_token: ${{ secrets.GITHUB_TOKEN }}
122-
file: build/nitro
123-
asset_name: nitro-mac-arm64-metal
124-
tag: ${{ github.ref }}
201+
file: build/nitro-${{ steps.tag.outputs.name }}-mac-arm64.zip
202+
asset_name: nitro-${{ steps.tag.outputs.name }}-mac-arm64.zip
203+
tag: ${{ steps.tag.outputs.name }}
125204

126205
macOS-Intel-build:
127206
runs-on: macos-latest
@@ -149,10 +228,37 @@ jobs:
149228
CC=gcc-8 make -j $(nproc)
150229
ls -la
151230
231+
- name: Determine tag name
232+
id: tag
233+
shell: bash
234+
run: |
235+
BUILD_NUMBER="$(git rev-list --count HEAD)"
236+
SHORT_HASH="$(git rev-parse --short=7 HEAD)"
237+
if [[ "${{ env.BRANCH_NAME }}" == "master" ]]; then
238+
echo "name=b${BUILD_NUMBER}" >> $GITHUB_OUTPUT
239+
else
240+
SAFE_NAME=$(echo "${{ env.BRANCH_NAME }}" | tr '/' '-')
241+
echo "name=${SAFE_NAME}-b${BUILD_NUMBER}-${SHORT_HASH}" >> $GITHUB_OUTPUT
242+
fi
243+
244+
- name: Package
245+
shell: bash
246+
run: |
247+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-mac-amd64
248+
mkdir -p build/nitro-${{ steps.tag.outputs.name }}-mac-amd64/config
249+
cp config.json build/nitro-${{ steps.tag.outputs.name }}-mac-amd64/config
250+
cp llama.cpp/ggml-metal.h build/nitro-${{ steps.tag.outputs.name }}-mac-amd64
251+
cp build/nitro build/nitro-${{ steps.tag.outputs.name }}-mac-amd64
252+
cd build
253+
zip -r nitro-${{ steps.tag.outputs.name }}-mac-amd64.zip nitro-${{ steps.tag.outputs.name }}-mac-amd64
254+
ls -la
255+
cd ..
256+
152257
- name: Upload binaries to release
258+
if: ${{ ( github.event_name == 'push' && github.ref == 'refs/heads/master' ) || github.event.inputs.create_release == 'true' }}
153259
uses: svenstaro/upload-release-action@v2
154260
with:
155261
repo_token: ${{ secrets.GITHUB_TOKEN }}
156-
file: build/nitro
157-
asset_name: nitro-mac-amd64
158-
tag: ${{ github.ref }}
262+
file: build/nitro-${{ steps.tag.outputs.name }}-mac-amd64.zip
263+
asset_name: nitro-${{ steps.tag.outputs.name }}-mac-amd64.zip.zip
264+
tag: ${{ steps.tag.outputs.name }}

0 commit comments

Comments
 (0)