forked from ophub/amlogic-s9xxx-armbian
-
Notifications
You must be signed in to change notification settings - Fork 2
117 lines (109 loc) · 3.78 KB
/
compile-kernel.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
109
110
111
112
113
114
115
116
117
#==========================================================================
# Description: Compile the kernel
# Copyright (C) 2021 https://github.com/unifreq/openwrt_packit
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================
name: Compile the kernel
on:
repository_dispatch:
workflow_dispatch:
inputs:
kernel_source:
description: "Select the kernel source"
required: false
default: "unifreq"
type: choice
options:
- unifreq
kernel_version:
description: "Select kernel version"
required: false
default: "5.15.1_6.1.1"
type: choice
options:
- 5.4.1_5.10.1
- 5.15.1_6.1.1
- 5.4.1
- 5.10.1
- 5.15.1
- 6.1.1
kernel_auto:
description: "Auto use the latest kernel"
required: false
default: true
type: boolean
kernel_package:
description: "Select compile package list"
required: false
default: "all"
type: choice
options:
- all
- dtbs
kernel_toolchain:
description: "Select the compilation toolchain"
required: false
default: "gcc"
type: choice
options:
- clang
- gcc
kernel_sign:
description: "Set the kernel custom signature"
required: false
default: "-ophub"
type: choice
options:
- -ophub
- -yourname
env:
TZ: America/New_York
jobs:
build:
runs-on: ubuntu-22.04
if: ${{ github.event.repository.owner.id }} == ${{ github.event.sender.id }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Initialization environment
id: init
env:
DEBIAN_FRONTEND: noninteractive
run: |
docker rmi `docker images -q`
[[ -n "${AGENT_TOOLSDIRECTORY}" ]] && sudo rm -rf "${AGENT_TOOLSDIRECTORY}"
sudo rm -rf /usr/share/dotnet /etc/apt/sources.list.d /usr/local/lib/android 2>/dev/null
sudo -E apt-get -y update
sudo -E apt-get -y purge azure-cli ghc* zulu* llvm* firefox google* dotnet* powershell openjdk* mongodb* moby* || true
sudo -E apt-get -y install $(curl -fsSL https://is.gd/depend_ubuntu2204_armbian)
sudo -E systemctl daemon-reload
#sudo -E apt-get -y full-upgrade
sudo -E apt-get -y autoremove --purge
sudo -E apt-get clean
sudo timedatectl set-timezone "${TZ}"
echo "status=success" >> ${GITHUB_OUTPUT}
- name: Compile the kernel [ ${{ inputs.kernel_version }} ]
uses: ophub/amlogic-s9xxx-armbian@main
if: ${{ steps.init.outputs.status }} == 'success' && !cancelled()
with:
build_target: kernel
kernel_source: ${{ inputs.kernel_source }}
kernel_version: ${{ inputs.kernel_version }}
kernel_auto: ${{ inputs.kernel_auto }}
kernel_package: ${{ inputs.kernel_package }}
kernel_sign: ${{ inputs.kernel_sign }}
kernel_toolchain: ${{ inputs.kernel_toolchain }}
- name: Upload Kernel to Release
uses: ncipollo/release-action@main
if: ${{ env.PACKAGED_STATUS }} == 'success' && !cancelled()
with:
tag: kernel_stable
artifacts: ${{ env.PACKAGED_OUTPUTPATH }}/*
allowUpdates: true
removeArtifacts: false
replacesArtifacts: true
token: ${{ secrets.GH_TOKEN }}
body: |
The kernel can be used to compile Armbian and OpenWrt.
The kernel source code comes from: ${{ inputs.kernel_source }}
The kernel compilation toolchain: ${{ inputs.kernel_toolchain }}