Skip to content

Commit dc3d30c

Browse files
committed
github: add build workflow
1 parent 0576205 commit dc3d30c

File tree

1 file changed

+70
-0
lines changed

1 file changed

+70
-0
lines changed

.github/workflows/build.yaml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
on: [push]
2+
3+
env:
4+
RELEASE_START: 2021 # 2021, as this is latest build by GitLab CI
5+
CCACHE_DIR: $RUNNER_TEMP/ccache
6+
7+
jobs:
8+
build:
9+
runs-on: [self-hosted, Linux, ARM64]
10+
container: ayufan/rock64-dockerfiles:arm64
11+
steps:
12+
- name: Checkout
13+
uses: actions/checkout@v3
14+
- name: Install binaries
15+
run: |
16+
apt-get -y update
17+
apt-get -y install docker.io \
18+
gcc-aarch64-linux-gnu g++-aarch64-linux-gnu \
19+
gcc-arm-linux-gnueabi g++-arm-linux-gnueabi \
20+
python3-pip
21+
- name: Set up QEMU
22+
uses: docker/setup-qemu-action@v2
23+
- name: Reset ccache statistics
24+
run: ccache -M 0 -F 0
25+
- name: Build package
26+
run: |
27+
export RELEASE=$(($RELEASE_START+$GITHUB_RUN_NUMBER))
28+
rm -f ../*.deb
29+
./dev-make BOARD_TARGET=rock64 -j5
30+
./dev-make BOARD_TARGET=rockpro64 -j5
31+
./dev-make BOARD_TARGET=pinebookpro -j5
32+
./dev-make BOARD_TARGET=rockpi4b -j5
33+
- name: Release package
34+
env:
35+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36+
run: |
37+
set -x
38+
39+
export RELEASE=$(($RELEASE_START+$GITHUB_RUN_NUMBER))
40+
export RELEASE_NAME="$(./dev-make version BOARD_TARGET=rock64)"
41+
export RELEASE_TITLE="$(./dev-make version BOARD_TARGET=rock64)"
42+
export DESCRIPTION="$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID"
43+
44+
github-release release \
45+
--tag "${RELEASE_NAME}" \
46+
--name "${RELEASE_TITLE}" \
47+
--user "${GITHUB_REPOSITORY%/*}" \
48+
--repo "${GITHUB_REPOSITORY#*/}" \
49+
--description "${DESCRIPTION}" \
50+
--target "${GITHUB_SHA}" \
51+
--draft
52+
53+
sleep 3s # allow to update release
54+
55+
for i in *.deb *.img.xz; do
56+
github-release upload \
57+
--tag "${RELEASE_NAME}" \
58+
--name "$(basename "${i}")" \
59+
--user "${GITHUB_REPOSITORY%/*}" \
60+
--repo "${GITHUB_REPOSITORY#*/}" \
61+
--file "${i}"
62+
done
63+
64+
github-release edit \
65+
--tag "${RELEASE_NAME}" \
66+
--name "${RELEASE_TITLE}" \
67+
--user "${GITHUB_REPOSITORY%/*}" \
68+
--repo "${GITHUB_REPOSITORY#*/}" \
69+
--description "${DESCRIPTION}"
70+

0 commit comments

Comments
 (0)