-
Notifications
You must be signed in to change notification settings - Fork 6
60 lines (53 loc) · 1.66 KB
/
build.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
on:
push:
workflow_dispatch:
env:
RELEASE_START: 100
jobs:
build:
runs-on: [self-hosted, Linux, ARM64]
container:
image: ayufan/rock64-dockerfiles:bookworm
options: --privileged
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Configure version
run: echo "VERSION=$(cat VERSION).$(($RELEASE_START+$GITHUB_RUN_NUMBER))" >> $GITHUB_ENV
- name: Cleanup old packages
run: rm -f *.tar.xz
- name: Install keyring
run: make keyring
- name: Build images
run: make all
- name: Release images
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -x
export RELEASE_NAME="$VERSION"
export RELEASE_TITLE="$VERSION"
export DESCRIPTION="$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID"
github-release release \
--tag "${RELEASE_NAME}" \
--name "${RELEASE_TITLE}" \
--user "${GITHUB_REPOSITORY%/*}" \
--repo "${GITHUB_REPOSITORY#*/}" \
--description "${DESCRIPTION}" \
--target "${GITHUB_SHA}" \
--draft
sleep 3s # allow to update release
for i in *.tar.xz; do
github-release upload \
--tag "${RELEASE_NAME}" \
--name "$(basename "${i}")" \
--user "${GITHUB_REPOSITORY%/*}" \
--repo "${GITHUB_REPOSITORY#*/}" \
--file "${i}"
done
github-release edit \
--tag "${RELEASE_NAME}" \
--name "${RELEASE_TITLE}" \
--user "${GITHUB_REPOSITORY%/*}" \
--repo "${GITHUB_REPOSITORY#*/}" \
--description "${DESCRIPTION}"