wip: Add Jenkins build pipeline
dustin/kitchenos/pipeline/head Something is wrong with the build of this commit Details

Dustin 2025-08-01 18:07:29 -05:00
parent dfe6bc6ef6
commit 49fc8c2d56
3 changed files with 72 additions and 0 deletions

35
ci/Jenkinsfile vendored Normal file
View File

@ -0,0 +1,35 @@
pipeline {
parameters {
booleanParam 'CLEAN_BUILD'
}
agent {
kubernetes {
yamlFile 'ci/podTemplate.yaml'
yamlMergeStrategy merge()
workspaceVolume persistentVolumeClaimWorkspaceVolume(
claimName: 'buildroot-kitchenos'
)
defaultContainer 'build'
}
}
stages {
stage('Clean') {
when {
expression {
params.CLEAN_BUILD == 'true'
}
}
steps {
sh 'git clean -fdx'
sh 'rm -rf buildroot'
}
}
stage('Build') {
steps {
sh '. ci/build.sh'
}
}
}
}

20
ci/build.sh Normal file
View File

@ -0,0 +1,20 @@
#!/bin/sh
BUILDROOT_REPO=https://gitlab.com/buildroot.org/buildroot.git
BUILDROOT_BRANCH=2025.05.x
DEFCONFIG=kitchenos_defconfig
if [ ! -d buildroot ]; then
git clone "${BUILDROOT_REPO}" --depth=1 -b "${BUILDROOT_BRANCH}"
else
git -C buildroot fetch --depth=1 origin "${BUILDROOT_BRANCH}"
git -C buildroot checkout -f "${BUILDROOT_BRANCH}"
git -C buildroot merge --ff-only
fi
if [ ! -f _build/.config ]; then
make -C buildroot O="${PWD}"/_build BR2_EXTERNAL="${PWD}" "${DEFCONFIG}"
fi
make -C _build

17
ci/podTemplate.yaml Normal file
View File

@ -0,0 +1,17 @@
spec:
containers:
- name: build
image: git.pyrocufflink.net/containerimages/buildroot
resources:
limits: &resources
cpu: 6
memory: 12Gi
requests: *resources
volumeMounts:
- mountPath: /etc/ssh/ssh_known_hosts
name: ssh-known-hosts
subPath: ssh_known_hosts
volumes:
- name: ssh-known-hosts
configMap:
name: ssh-known-hosts