Skip to content

Commit a451315

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

File tree

7 files changed

+71
-136
lines changed

7 files changed

+71
-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: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Automated kernel build and test
2+
3+
permissions:
4+
contents: read
5+
actions: read
6+
7+
jobs:
8+
build:
9+
runs-on: ubuntu-24.04
10+
11+
steps:
12+
- name: Checkout code
13+
uses: actions/checkout@v4
14+
with:
15+
fetch-depth: 1
16+
17+
# Host deps + KVM / FUSE validation
18+
- name: Install host dependencies & verify KVM/FUSE
19+
run: |
20+
set -euxo pipefail
21+
sudo apt-get update
22+
sudo apt-get install -y fuse3 cpu-checker podman
23+
sudo modprobe fuse # guarantee /dev/fuse
24+
if ! sudo kvm-ok ; then
25+
echo "::error::KVM acceleration not available on this runner."
26+
exit 1
27+
fi
28+
29+
# Podman (root-ful)
30+
- name: Install Podman
31+
run: |
32+
sudo apt-get -y install podman
33+
podman --version
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+
sudo podman run --rm --pull=always \
41+
--privileged \
42+
--device=/dev/fuse \
43+
--device=/dev/kvm \
44+
-v "$PWD":/src \
45+
-v "$PWD/output":/output \
46+
--security-opt label=disable \
47+
pulp.prod.ciq.dev/ciq/cicd/lts-images/builder \
48+
build_kernel.sh
49+
50+
# Artifacts: qcow2 + metadata
51+
- name: Upload QCOW2 and metadata
52+
uses: actions/upload-artifact@v4
53+
with:
54+
name: kernel-build
55+
path: |
56+
output/*.qcow2
57+
output/last_build_image.txt
58+
retention-days: 7
59+
if-no-files-found: warn
60+
61+
# Artifacts: logs
62+
- name: Upload build & dmesg logs
63+
uses: actions/upload-artifact@v4
64+
with:
65+
name: kernel-logs
66+
path: |
67+
output/*.log
68+
retention-days: 7
69+
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)