Upated to sqential execution of versions
All checks were successful
LXC-ImageBuilder/Alpine/pipeline/head This commit looks good

This commit is contained in:
2021-02-21 21:38:26 +01:00
parent 9454e7ad47
commit 29451f86e6

82
Jenkinsfile vendored
View File

@@ -1,3 +1,6 @@
String[] ImgReleaseList = ['3.13', 'edge']
String[] ImgVariantList = ['Default-minmal', 'Default-default']
pipeline { pipeline {
agent { label 'LXCBuilder' } agent { label 'LXCBuilder' }
parameters { parameters {
@@ -21,57 +24,38 @@ pipeline {
sh '''mkdir $WORKSPACE/REL''' sh '''mkdir $WORKSPACE/REL'''
} }
} }
stage("Image Configs") { stage('Image Configs'){
matrix { steps{
axes { script{
axis { for(ImgRelease in ImgReleaseList){
name 'ImgRelease' for(ImgVariant in ImgVariantList){
values '3.13', 'edge'
}
axis {
name 'ImgVariant'
values 'Default-minmal', 'Default-default'
}
}
// //Exclude unwanted conbinatinations
// excludes {
// exclude {
// axis {
// name 'ImgRelease'
// values 'edge'
// }
// axis {
// name 'ImgVariant'
// //use notValues to invert
// values 'Extra-extended'
// }
// }
// }
stages {
stage('Build image') {
when {
//ImgTypeTest //ImgTypeTest
anyOf { if (env.BuildDefault == 'true' && (ImgVariant).startsWith('Default-')) {
allOf { BuildThis = true
expression { return (env.ImgVariant).startsWith('Default-') } } else if (env.BuildExtra == 'true' && (ImgVariant).startsWith('Extra-')) {
environment name: 'BuildDefault', value: 'true' BuildThis = true
} } else {
allOf { BuildThis = false
expression { return (env.ImgVariant).startsWith('Extra-') }
environment name: 'BuildExtra', value: 'true'
}
}
}
steps {
// Build script
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh '''echo "$(date) Do Build for $ImgRelease - $ImgVariant"
ImgVariantName=${ImgVariant#Default-} && ImgVariantName=${ImgVariantName#Extra-}
sudo $WORKSPACE/distrobuilder build-lxc Alpine.yaml $WORKSPACE/REL/$ImgRelease-$ImgVariant/ -o image.release=$ImgRelease -o image.variant=$ImgVariantName
sudo chown jenkins:jenkins -R $WORKSPACE/REL
mv $WORKSPACE/REL/$ImgRelease-$ImgVariant/rootfs.tar.xz Alpine-$ImgRelease-$ImgVariant.tar.xz
'''
} }
//Exclude unwanted conbinatinations
// if (ImgRelease == 'buster' && ImgVariant == 'Default-default' ){
// BuildThis = false
// }
//Check if this combinations shoud be build
if (BuildThis == true) {
env.ImgRelease = ImgRelease
env.ImgVariant = ImgVariant
stage('Build image') {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') {
sh '''echo "$(date) Do Build for $ImgRelease - $ImgVariant"
ImgVariantName=${ImgVariant#Default-} && ImgVariantName=${ImgVariantName#Extra-}
sudo $WORKSPACE/distrobuilder build-lxc Alpine.yaml $WORKSPACE/REL/$ImgRelease-$ImgVariant/ -o image.release=$ImgRelease -o image.variant=$ImgVariantName
sudo chown jenkins:jenkins -R $WORKSPACE/REL
mv $WORKSPACE/REL/$ImgRelease-$ImgVariant/rootfs.tar.xz Alpine-$ImgRelease-$ImgVariant.tar.xz
'''
}
}
}
} }
} }
} }