Skip to content

Commit 0c1698d

Browse files
committed
Revamp automation (using Ishaan's as the baseline)
Signed-off-by: Jonathan Dieter <[email protected]>
1 parent 3590a63 commit 0c1698d

File tree

7 files changed

+73
-136
lines changed

7 files changed

+73
-136
lines changed

.container_build_image

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
rocky-9-kernel-builder

.github/workflows/build-check_aarch64-rt.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

.github/workflows/build-check_aarch64.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

.github/workflows/build-check_x86_64-rt.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

.github/workflows/build-check_x86_64.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: Automated kernel build and test
2+
on: [push]
3+
4+
permissions:
5+
contents: read
6+
actions: read
7+
8+
jobs:
9+
build:
10+
name: Build ${{ matrix.runner == 'kernel-build' && 'x86_64' || 'aarch64' }}
11+
runs-on: ${{ matrix.runner }}
12+
strategy:
13+
fail-fast: false
14+
matrix:
15+
runner: [kernel-build, kernel-build-arm64]
16+
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v4
20+
with:
21+
fetch-depth: 1
22+
23+
# Host deps + KVM / FUSE validation
24+
- name: Install host dependencies & verify KVM/FUSE
25+
run: |
26+
set -euxo pipefail
27+
sudo apt-get update
28+
sudo apt-get install -y fuse3 cpu-checker podman
29+
sudo modprobe fuse # guarantee /dev/fuse
30+
if ! sudo kvm-ok ; then
31+
echo "::error::KVM acceleration not available on this runner."
32+
exit 1
33+
fi
34+
35+
# Kernel build inside CIQ builder
36+
- name: Build kernel inside CIQ builder container
37+
run: |
38+
set -euxo pipefail
39+
mkdir -p output
40+
df -h
41+
cat /proc/cpuinfo
42+
podman run --rm --pull=always \
43+
--privileged \
44+
--device=/dev/fuse \
45+
--device=/dev/kvm \
46+
-v "$PWD":/src \
47+
-v "$PWD/output":/output \
48+
--security-opt label=disable \
49+
pulp.prod.ciq.dev/ciq/cicd/lts-images/builder \
50+
build_kernel.sh
51+
52+
# Artifacts: qcow2 + metadata
53+
- name: Upload QCOW2 and metadata
54+
uses: actions/upload-artifact@v4
55+
with:
56+
name: kernel-build-${{ matrix.runner == 'kernel-build' && 'x86_64' || 'aarch64' }}
57+
path: |
58+
output/*.qcow2
59+
output/last_build_image.txt
60+
retention-days: 7
61+
if-no-files-found: warn
62+
63+
# Artifacts: logs
64+
- name: Upload build & dmesg logs
65+
uses: actions/upload-artifact@v4
66+
with:
67+
name: kernel-logs-${{ matrix.runner == 'kernel-build' && 'x86_64' || 'aarch64' }}
68+
path: |
69+
output/*.log
70+
retention-days: 7
71+
if-no-files-found: warn

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ modules.order
9494
#
9595
!.clang-format
9696
!.cocciconfig
97+
!.container_build_image
9798
!.get_maintainer.ignore
9899
!.gitattributes
99100
!.gitignore

0 commit comments

Comments
 (0)