Skip to content

Commit de17c13

Browse files
committed
Update kernel.yml
1 parent fdabd6c commit de17c13

File tree

1 file changed

+101
-0
lines changed

1 file changed

+101
-0
lines changed

.github/workflows/kernel.yml

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
name: Build deb package
2+
on: [push]
3+
jobs:
4+
build:
5+
runs-on: ubuntu-22.04
6+
steps:
7+
- name: Checkout
8+
uses: actions/checkout@v4
9+
- name: Download apt-get dependencies
10+
env:
11+
DEBIAN_FRONTEND: noninteractive
12+
run: |
13+
sudo apt-get -y purge unattended-upgrades
14+
sudo apt-get -y update
15+
sudo apt-get -y install git fakeroot \
16+
libelf-dev libssl-dev flex bison coreutils build-essential \
17+
xz-utils devscripts initramfs-tools wget debhelper linux-headers-6.5.0-18-generic
18+
- name: Kernel config
19+
run: |
20+
cp /usr/src/linux-headers-6.5.0-18-generic/.config .
21+
scripts/config --set-val CONFIG_FRAME_WARN 0 \
22+
--disable SYSTEM_TRUSTED_KEYS \
23+
--disable SYSTEM_REVOCATION_KEYS \
24+
--set-str CONFIG_SYSTEM_TRUSTED_KEYS "" \
25+
--set-str CONFIG_SYSTEM_REVOCATION_KEYS "" \
26+
--undefine DEBUG_INFO \
27+
--undefine DEBUG_INFO_COMPRESSED \
28+
--undefine DEBUG_INFO_REDUCED \
29+
--undefine DEBUG_INFO_SPLIT \
30+
--undefine GDB_SCRIPTS \
31+
--set-val DEBUG_INFO_DWARF5 n \
32+
--set-val DEBUG_INFO_NONE y \
33+
--disable DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT \
34+
--set-val CONFIG_WERROR y \
35+
--module CONFIG_TCP_CONG_DCTCP \
36+
--module CONFIG_TCP_CONG_PRAGUE \
37+
--module CONFIG_TCP_CONG_BBR \
38+
--module CONFIG_NET_IPIP \
39+
--module CONFIG_NET_CLS_U32 \
40+
--module CONFIG_NET_SCH_DUALPI2 \
41+
--module CONFIG_NET_SCH_PIE \
42+
--module CONFIG_NET_SCH_FQ \
43+
--module CONFIG_NET_SCH_FQ_CODEL \
44+
--module CONFIG_NET_SCH_CODEL \
45+
--module CONFIG_NET_SCH_RED \
46+
--module CONFIG_NET_SCH_CAKE \
47+
--module CONFIG_NET_SCH_HTB \
48+
--module CONFIG_NET_SCH_NETEM \
49+
--module CONFIG_NET_SCH_INGRESS \
50+
--module CONFIG_NET_ACT_MIRRED \
51+
--module CONFIG_IFB \
52+
--module CONFIG_VETH \
53+
--module CONFIG_BRIDGE \
54+
--module CONFIG_INET_DIAG
55+
make olddefconfig
56+
- name: make-deb
57+
run: make -j$(nproc) bindeb-pkg \
58+
LOCALVERSION=-$(git rev-parse --short HEAD)-l4steam-${GITHUB_RUN_NUMBER} \
59+
KDEB_PKGVERSION=1
60+
- name: Move artifacts
61+
run: |
62+
mkdir -p debian_build
63+
mv -t debian_build ../linux-*.deb
64+
- name: Upload artifacts
65+
uses: actions/upload-artifact@v4
66+
with:
67+
name: l4steam-kernel
68+
path: debian_build
69+
70+
release:
71+
name: Release build artifacts for the branch
72+
runs-on: ubuntu-22.04
73+
needs: build
74+
permissions: write-all
75+
if: ${{ github.ref != 'refs/heads/main'}}
76+
steps:
77+
- name: Get artifact
78+
uses: actions/download-artifact@v4
79+
with:
80+
name: l4steam-kernel
81+
- name: Include iproute2 into the pre-release archive
82+
run: |
83+
wget https://github.com/minuscat/iproute2-5.15/releases/download/net-next-build/iproute2-l4s.zip
84+
unzip iproute2-l4s
85+
mv -t . iproute2-l4s/*.deb
86+
- name: Extract branch name
87+
shell: bash
88+
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
89+
id: extract_branch
90+
- name: Zip artifacts
91+
run: |
92+
mkdir debian_build
93+
mv *.deb debian_build
94+
zip -r l4s-${{ steps.extract_branch.outputs.branch }}.zip debian_build
95+
- name: Release tip build
96+
uses: pyTooling/Actions/releaser@main
97+
with:
98+
token: ${{ secrets.GITHUB_TOKEN }}
99+
tag: ${{ steps.extract_branch.outputs.branch }}-build
100+
files: |
101+
l4s-${{ steps.extract_branch.outputs.branch }}.zip

0 commit comments

Comments
 (0)