forked from ophub/amlogic-s9xxx-armbian
-
Notifications
You must be signed in to change notification settings - Fork 3
108 lines (96 loc) · 3.92 KB
/
build-armbian.yml
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#==========================================================================
# Description: Build Armbian For Amlogic s9xxx tv box
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================
name: Build armbian
on:
repository_dispatch:
workflow_dispatch:
inputs:
set_release:
description: "RELEASE: focal / bullseye / buster"
required: false
default: "focal"
set_board:
description: "BOARD: lepotato / odroidn2"
required: false
default: "lepotato"
more_settings:
description: "Rebuild: More parameter settings"
required: false
default: "-b s905l3a_s905l3a-test -k 5.15.13"
schedule:
- cron: "0 13 * * 0"
env:
TZ: Asia/Shanghai
jobs:
build:
runs-on: ubuntu-20.04
if: github.event.repository.owner.id == github.event.sender.id
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Initialization environment
env:
DEBIAN_FRONTEND: noninteractive
run: |
sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /usr/local/lib/android /opt/ghc
sudo -E apt-get -qq update
sudo -E apt-get -qq install $(curl -fsSL git.io/ubuntu-2004-server)
sudo -E apt-get -qq autoremove --purge
sudo -E apt-get -qq clean
sudo timedatectl set-timezone "$TZ"
sudo mkdir -p /workdir
sudo chown $USER:$GROUPS /workdir
echo "COMPILE_STARTINGTIME=$(date +"%m.%d.%H%M")" >> $GITHUB_ENV
ARR_RELEASE=("focal" "bullseye" "buster")
set_release="${{ github.event.inputs.set_release }}"
if [[ -z "${set_release}" || -z "$(echo "${ARR_RELEASE[@]}" | grep -w "${set_release}")" ]]; then
set_release="focal"
fi
echo "ARMBIAN_RELEASE=${set_release}" >> $GITHUB_ENV
ARR_BOARD=("lepotato" "odroidn2")
set_board="${{ github.event.inputs.set_board }}"
if [[ -z "${set_board}" || -z "$(echo "${ARR_BOARD[@]}" | grep -w "${set_board}")" ]]; then
set_board="lepotato"
fi
echo "ARMBIAN_BOARD=${set_board}" >> $GITHUB_ENV
- name: Download source code
id: down
run: |
git clone --depth 1 https://github.com/armbian/build.git
- name: Compile Armbian [ ${{ env.ARMBIAN_BOARD }} ]
id: compile
run: |
cd build/
sudo chmod +x compile.sh
sudo ./compile.sh BOARD=${{ env.ARMBIAN_BOARD }} RELEASE=${{ env.ARMBIAN_RELEASE }} BRANCH=current \
BUILD_MINIMAL=no BUILD_DESKTOP=no HOST=armbian KERNEL_ONLY=no KERNEL_CONFIGURE=no \
CLEAN_LEVEL=make,debs COMPRESS_OUTPUTIMAGE=sha
echo "::set-output name=status::success"
- name: Rebuild Armbian for amlogic s9xxx
id: rebuild
if: steps.compile.outputs.status == 'success' && !cancelled()
run: |
sudo chmod +x rebuild
sudo ./rebuild -d ${{ github.event.inputs.more_settings }}
cd build/output/images/ && sudo gzip *.img && sync
echo "FILEPATH=$PWD" >> $GITHUB_ENV
echo "FILE_DATE=$(date +"%m.%d.%H%M")" >> $GITHUB_ENV
echo "::set-output name=status::success"
- name: Upload Armbian image to Release
id: release
uses: ncipollo/release-action@v1
if: steps.rebuild.outputs.status == 'success' && !cancelled()
with:
tag: Armbian_Aml_${{ env.ARMBIAN_RELEASE }}_${{ env.FILE_DATE }}
artifacts: ${{ env.FILEPATH }}/*
allowUpdates: true
token: ${{ secrets.GITHUB_TOKEN }}
body: |
This is Armbian image for Amlogic s9xxx tv box
* Firmware information
Default username: root
Default password: 1234
Install command: armbian-install
Update command: armbian-update