forked from puppylinux-woof-CE/woof-CE
-
Notifications
You must be signed in to change notification settings - Fork 0
88 lines (86 loc) · 3.28 KB
/
kernel-kit.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
name: kernel-kit
on:
schedule:
- cron: '0 0 1,15 * *'
workflow_dispatch:
jobs:
build:
if: github.event_name != 'schedule' || (github.repository == 'puppylinux-woof-CE/woof-CE' && github.ref == 'refs/heads/testing')
runs-on: ubuntu-20.04
container:
image: ${{ matrix.image }}
continue-on-error: true
strategy:
matrix:
include:
- kernel-kit-config: 4.19.x-x86
image: ubuntu:bionic
- kernel-kit-config: 4.19.x-x86_64
image: ubuntu:bionic
- kernel-kit-config: 5.4.x-x86
image: ubuntu:focal
- kernel-kit-config: 5.4.x-x86_64
image: ubuntu:focal
- kernel-kit-config: 5.10.x-x86
image: debian:bullseye-slim
- kernel-kit-config: 5.10.x-x86_64
image: debian:bullseye-slim
- kernel-kit-config: 5.15.x-x86
image: debian:bullseye-slim
- kernel-kit-config: 5.15.x-x86_64
image: debian:bullseye-slim
- kernel-kit-config: 6.1.x-x86_64
image: debian:bookworm-slim
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
apt-get update -qq
apt-get install -y --no-install-recommends curl wget ca-certificates git file squashfs-tools xz-utils diffutils patch make flex bison python3 bc bzip2 kmod rsync libelf-dev libssl-dev dwarves gcc gcc-multilib jq
curl https://raw.githubusercontent.com/puppylinux-woof-CE/initrd_progs/master/pkg/w_apps_static/w_apps/vercmp.c | gcc -x c -o /usr/local/bin/vercmp -
echo "dash dash/sh boolean false" | debconf-set-selections
DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
- name: Build kernel
run: |
cd kernel-kit
cp -f ${{ matrix.kernel-kit-config }}-build.conf build.conf
CREATE_KBUILD_SFS=yes ./build.sh
mkdir small-output
mv `ls output/kernel_sources-*.sfs* output/kbuild-*.sfs* output/*.tar* 2>/dev/null` small-output
- name: Upload kernel
uses: actions/upload-artifact@v3
with:
name: kernel-kit-output-${{ matrix.kernel-kit-config }}
path: kernel-kit/small-output
retention-days: 16
usrmerge:
if: github.event_name != 'schedule' || (github.repository == 'puppylinux-woof-CE/woof-CE' && github.ref == 'refs/heads/testing')
needs: build
runs-on: ubuntu-20.04
container:
image: debian:bullseye-slim
continue-on-error: true
strategy:
matrix:
kernel-kit-config: [5.10.x-x86, 5.10.x-x86_64, 5.15.x-x86, 5.15.x-x86_64, 6.1.x-x86_64]
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
apt-get update -qq
apt-get install -y --no-install-recommends squashfs-tools bzip2
- name: Get build output
uses: actions/download-artifact@v3
with:
name: kernel-kit-output-${{ matrix.kernel-kit-config }}
path: kernel-kit/output
- name: Repackage kernel
run: |
cd kernel-kit
./usrmerge.sh
- name: Upload kernel
uses: actions/upload-artifact@v3
with:
name: kernel-kit-output-usrmerge-${{ matrix.kernel-kit-config }}
path: kernel-kit/output
retention-days: 16