Jenkins: Kernel: instead of 'git clone' the source use the tarball

This reduces the download and checkout overhead.
This commit is contained in:
Christian Poessinger 2021-01-09 22:16:27 +01:00
parent c844282315
commit bfe46626d5
2 changed files with 18 additions and 8 deletions

View File

@ -217,7 +217,9 @@ RUN apt-get update && apt-get install -y \
cpio
# Packages needed for Linux Kernel
# gnupg2 is required by Jenkins for the TAR verification
RUN apt-get update && apt-get install -y \
gnupg2 \
rsync \
libncurses5-dev \
flex \
@ -233,7 +235,7 @@ RUN apt-get update && apt-get install -y \
libssl-dev \
libpcre3-dev
# Packages needed for wireguard
# Packages needed for Wireguard
RUN apt-get update && apt-get install -y \
debhelper-compat \
dkms \

View File

@ -87,13 +87,21 @@ pipeline {
}
}
steps {
dir(env.BASE_DIR + '/linux') {
checkout([$class: 'GitSCM',
doGenerateSubmoduleConfigurations: false,
extensions: [[$class: 'CleanCheckout'],
[$class: 'CloneOption', depth: 1, noTags: false, reference: '', shallow: true]],
branches: [[name: 'v5.10.6' ]],
userRemoteConfigs: [[credentialsId: 'GitHub-vyosbot', url: 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git']]])
script {
dir(env.BASE_DIR) {
sh '''
KERNEL_VER='5.10.6'
gpg2 --locate-keys torvalds@kernel.org gregkh@kernel.org
curl -OL https://www.kernel.org/pub/linux/kernel/v5.x/linux-${KERNEL_VER}.tar.xz
curl -OL https://www.kernel.org/pub/linux/kernel/v5.x/linux-${KERNEL_VER}.tar.sign
xz -cd linux-${KERNEL_VER}.tar.xz | gpg2 --verify linux-${KERNEL_VER}.tar.sign -
if [ $? -ne 0 ]; then
exit 1
fi
tar xf linux-${KERNEL_VER}.tar.xz
ln -s linux-${KERNEL_VER} linux
'''
}
}
}
}