Skip to content

Commit 3afbc7e

Browse files
committed
Move project
1 parent 74756a9 commit 3afbc7e

9 files changed

Lines changed: 520 additions & 0 deletions

File tree

Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
name: OpenIPC for Hi3516Ev200
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
tags:
8+
- "v*"
9+
10+
jobs:
11+
build_core:
12+
name: OpenIPC v2.0 for Hi3516Ev200
13+
runs-on: ubuntu-18.04
14+
15+
steps:
16+
17+
- name: Checkout
18+
id: checkout
19+
uses: actions/checkout@v2
20+
21+
- name: Install build dependencies
22+
id: install
23+
run: |
24+
make install-deps
25+
mkdir -p tmp
26+
27+
- name: Free disk space
28+
id: freshing
29+
run: |
30+
sudo swapoff -a
31+
sudo rm -f /swapfile
32+
sudo apt clean
33+
docker rmi $(docker image ls -aq)
34+
df -h
35+
36+
- name: Prepare buildroot
37+
id: prepare
38+
run: |
39+
HEAD_TAG=$(git tag --points-at HEAD)
40+
GIT_HASH=$(git rev-parse --short $GITHUB_SHA)
41+
BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3)
42+
if [ -z "$HEAD_TAG" ]; then
43+
TAG_NAME="latest"
44+
RELEASE_NAME="Development Build"
45+
PRERELEASE=true
46+
else
47+
TAG_NAME=${{ github.ref }}
48+
RELEASE_NAME="Release ${{ github.ref }}"
49+
PRERELEASE=false
50+
fi
51+
echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV
52+
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV
53+
echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV
54+
echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV
55+
echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV
56+
cd $GITHUB_WORKSPACE
57+
make prepare
58+
59+
- name: Build Hi3516Ev200 firmware
60+
id: build-hi3516ev200-firmware
61+
continue-on-error: true
62+
run: |
63+
ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.hi3516ev200-br.tgz"
64+
echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV
65+
cd $GITHUB_WORKSPACE
66+
make -j$(($(nproc)+1)) BOARD=unknown_unknown_hi3516ev200_openipc all
67+
tar -C ${GITHUB_WORKSPACE}/output/images -cvzf $ARCHIVE_FW rootfs.squashfs uImage
68+
69+
- name: Build Hi3516Ev200 SDK
70+
id: build-hi3516ev200-sdk
71+
continue-on-error: true
72+
run: |
73+
ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-musleabi_sdk-buildroot.tar.gz"
74+
echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV
75+
cd $GITHUB_WORKSPACE/output
76+
make sdk
77+
78+
- name: Send warning message to telegram channel
79+
env:
80+
TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }}
81+
TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }}
82+
if: steps.build-hi3516ev200-firmware.outcome != 'success' || steps.build-hi3516ev200-sdk.outcome != 'success'
83+
run: |
84+
TG_OPTIONS="-s --connect-timeout 5 --max-time 15"
85+
TG_NOTIFY="Warning, Buildroot compiling error..."
86+
TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions")
87+
curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \
88+
-F chat_id=$TG_CHANNEL -F text="$TG_HEADER"
89+
90+
- name: Create release
91+
uses: actions/create-release@v1
92+
continue-on-error: true
93+
env:
94+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
95+
with:
96+
tag_name: ${{ env.TAG_NAME }}
97+
release_name: ${{ env.RELEASE_NAME }}
98+
draft: false
99+
prerelease: ${{ env.PRERELEASE }}
100+
101+
- name: Upload FW to release
102+
uses: svenstaro/upload-release-action@v2
103+
continue-on-error: true
104+
with:
105+
repo_token: ${{ secrets.GITHUB_TOKEN }}
106+
file: ${{ env.ARCHIVE_FW }}
107+
asset_name: "openipc.hi3516ev200-br.tgz"
108+
tag: ${{ env.TAG_NAME }}
109+
overwrite: true
110+
111+
- name: Upload SDK to release
112+
uses: svenstaro/upload-release-action@v2
113+
continue-on-error: true
114+
with:
115+
repo_token: ${{ secrets.GITHUB_TOKEN }}
116+
file: ${{ env.ARCHIVE_SDK }}
117+
asset_name: "arm-openipc-linux-musleabi_sdk-buildroot.tar.gz"
118+
tag: ${{ env.TAG_NAME }}
119+
overwrite: true
120+
121+
- name: Send binary file to telegram channel
122+
env:
123+
TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }}
124+
TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }}
125+
run: |
126+
TG_OPTIONS="-s --connect-timeout 5 --max-time 15"
127+
TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions")
128+
curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \
129+
-F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER"
Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
name: OpenIPC for Hi3516Ev300
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
tags:
8+
- "v*"
9+
10+
jobs:
11+
build_core:
12+
name: OpenIPC v2.0 for Hi3516Ev300
13+
runs-on: ubuntu-18.04
14+
15+
steps:
16+
17+
- name: Checkout
18+
id: checkout
19+
uses: actions/checkout@v2
20+
21+
- name: Install build dependencies
22+
id: install
23+
run: |
24+
make install-deps
25+
mkdir -p tmp
26+
27+
- name: Free disk space
28+
id: freshing
29+
run: |
30+
sudo swapoff -a
31+
sudo rm -f /swapfile
32+
sudo apt clean
33+
docker rmi $(docker image ls -aq)
34+
df -h
35+
36+
- name: Prepare buildroot
37+
id: prepare
38+
run: |
39+
HEAD_TAG=$(git tag --points-at HEAD)
40+
GIT_HASH=$(git rev-parse --short $GITHUB_SHA)
41+
BRANCH_NAME=$(echo $GITHUB_REF | cut -d'/' -f 3)
42+
if [ -z "$HEAD_TAG" ]; then
43+
TAG_NAME="latest"
44+
RELEASE_NAME="Development Build"
45+
PRERELEASE=true
46+
else
47+
TAG_NAME=${{ github.ref }}
48+
RELEASE_NAME="Release ${{ github.ref }}"
49+
PRERELEASE=false
50+
fi
51+
echo "GIT_HASH=$GIT_HASH" >> $GITHUB_ENV
52+
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV
53+
echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV
54+
echo "PRERELEASE=$PRERELEASE" >> $GITHUB_ENV
55+
echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV
56+
cd $GITHUB_WORKSPACE
57+
make prepare
58+
59+
- name: Build Hi3516Ev300 firmware
60+
id: build-hi3516ev300-firmware
61+
continue-on-error: true
62+
run: |
63+
ARCHIVE_FW="${GITHUB_WORKSPACE}/output/images/openipc.hi3516ev300-br.tgz"
64+
echo "ARCHIVE_FW=$ARCHIVE_FW" >> $GITHUB_ENV
65+
cd $GITHUB_WORKSPACE
66+
make BOARD=unknown_unknown_hi3516ev300_openipc all
67+
tar -C ${GITHUB_WORKSPACE}/output/images -cvzf $ARCHIVE_FW rootfs.squashfs uImage
68+
69+
- name: Build Hi3516Ev300 SDK
70+
id: build-hi3516ev300-sdk
71+
continue-on-error: true
72+
run: |
73+
ARCHIVE_SDK="${GITHUB_WORKSPACE}/output/images/arm-openipc-linux-musleabi_sdk-buildroot.tar.gz"
74+
echo "ARCHIVE_SDK=$ARCHIVE_SDK" >> $GITHUB_ENV
75+
cd $GITHUB_WORKSPACE/output
76+
make sdk
77+
78+
- name: Send warning message to telegram channel
79+
env:
80+
TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }}
81+
TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }}
82+
if: steps.build-hi3516ev300-firmware.outcome != 'success' || steps.build-hi3516ev300-sdk.outcome != 'success'
83+
run: |
84+
TG_OPTIONS="-s --connect-timeout 5 --max-time 15"
85+
TG_NOTIFY="Warning, Buildroot compiling error..."
86+
TG_HEADER=$(echo -e "\r\n$TG_NOTIFY \r\n\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9A\xA0 GitHub Actions")
87+
curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendMessage \
88+
-F chat_id=$TG_CHANNEL -F text="$TG_HEADER"
89+
90+
- name: Create release
91+
uses: actions/create-release@v1
92+
continue-on-error: true
93+
env:
94+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
95+
with:
96+
tag_name: ${{ env.TAG_NAME }}
97+
release_name: ${{ env.RELEASE_NAME }}
98+
draft: false
99+
prerelease: ${{ env.PRERELEASE }}
100+
101+
- name: Upload FW to release
102+
uses: svenstaro/upload-release-action@v2
103+
continue-on-error: true
104+
with:
105+
repo_token: ${{ secrets.GITHUB_TOKEN }}
106+
file: ${{ env.ARCHIVE_FW }}
107+
asset_name: "openipc.hi3516ev300-br.tgz"
108+
tag: ${{ env.TAG_NAME }}
109+
overwrite: true
110+
111+
- name: Upload SDK to release
112+
uses: svenstaro/upload-release-action@v2
113+
continue-on-error: true
114+
with:
115+
repo_token: ${{ secrets.GITHUB_TOKEN }}
116+
file: ${{ env.ARCHIVE_SDK }}
117+
asset_name: "arm-openipc-linux-musleabi_sdk-buildroot.tar.gz"
118+
tag: ${{ env.TAG_NAME }}
119+
overwrite: true
120+
121+
- name: Send binary file to telegram channel
122+
env:
123+
TG_TOKEN: ${{ secrets.TELEGRAM_TOKEN_BOT_OPENIPC }}
124+
TG_CHANNEL: ${{ secrets.TELEGRAM_CHANNEL_OPENIPC_DEV }}
125+
run: |
126+
TG_OPTIONS="-s --connect-timeout 5 --max-time 15"
127+
TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH_NAME \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions")
128+
curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \
129+
-F chat_id=$TG_CHANNEL -F document="@$ARCHIVE_FW" -F caption="$TG_HEADER"

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
buildroot-2021.02/
2+
buildroot-2020.02/
3+
buildroot-2019.11.1/
4+
output/

0 commit comments

Comments
 (0)