diff options
| author | Arseney300 <Arseney300@gmail.com> | 2026-02-20 11:37:45 +0700 |
|---|---|---|
| committer | Arseney300 <Arseney300@gmail.com> | 2026-02-20 11:37:45 +0700 |
| commit | e5af9c67da207c49f41bdd478442f21e84b97903 (patch) | |
| tree | b6759ab0d563cffcf818e8dd87668b73007bb8ab | |
| parent | 68d5770c626dcad4f8e116a8b984d16458c557b6 (diff) | |
Add kernel-builder Docker image and Jenkinsfile example
Custom Debian bookworm image with all dependencies for building the
Linux kernel (gcc, flex, bison, libelf, libssl, dwarves, etc.).
Includes example Jenkinsfile showing kernel build with artifact archiving.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
| -rw-r--r-- | doc/Jenkinsfile.kernel-example | 24 | ||||
| -rw-r--r-- | jenkins/kernel-builder/Dockerfile | 30 |
2 files changed, 54 insertions, 0 deletions
diff --git a/doc/Jenkinsfile.kernel-example b/doc/Jenkinsfile.kernel-example new file mode 100644 index 0000000..f0ed164 --- /dev/null +++ b/doc/Jenkinsfile.kernel-example @@ -0,0 +1,24 @@ +// Example Jenkinsfile for building the Linux kernel +// Uses the custom kernel-builder image (jenkins/kernel-builder/Dockerfile) +// Build the image first: docker build -t kernel-builder jenkins/kernel-builder/ + +pipeline { + agent { + docker { image 'kernel-builder' } + } + + stages { + stage('Build') { + steps { + sh 'make defconfig' + sh 'make -j$(nproc)' + } + } + + stage('Archive') { + steps { + archiveArtifacts artifacts: 'arch/x86/boot/bzImage', fingerprint: true + } + } + } +} diff --git a/jenkins/kernel-builder/Dockerfile b/jenkins/kernel-builder/Dockerfile new file mode 100644 index 0000000..94ccf99 --- /dev/null +++ b/jenkins/kernel-builder/Dockerfile @@ -0,0 +1,30 @@ +FROM debian:bookworm + +RUN apt-get update && apt-get install -y \ + # Core build tools + build-essential \ + bc \ + kmod \ + cpio \ + # Kernel config/menuconfig + flex \ + bison \ + libncurses-dev \ + # Module signing and crypto + libssl-dev \ + # BTF/debug info + libelf-dev \ + dwarves \ + # Device tree (needed by some configs) + device-tree-compiler \ + # Documentation and misc + python3 \ + # Fetching sources + wget \ + curl \ + git \ + # Compression formats used by initramfs/modules + xz-utils \ + zstd \ + lz4 \ + && rm -rf /var/lib/apt/lists/* |
