From 29451f86e6900e527c728876fd1cb02c691caf86 Mon Sep 17 00:00:00 2001 From: Bram Prieshof Date: Sun, 21 Feb 2021 21:38:26 +0100 Subject: [PATCH] Upated to sqential execution of versions --- Jenkinsfile | 82 +++++++++++++++++++++-------------------------------- 1 file changed, 33 insertions(+), 49 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index e7153b7..f5435c0 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,3 +1,6 @@ +String[] ImgReleaseList = ['3.13', 'edge'] +String[] ImgVariantList = ['Default-minmal', 'Default-default'] + pipeline { agent { label 'LXCBuilder' } parameters { @@ -21,57 +24,38 @@ pipeline { sh '''mkdir $WORKSPACE/REL''' } } - stage("Image Configs") { - matrix { - axes { - axis { - name 'ImgRelease' - 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 { + stage('Image Configs'){ + steps{ + script{ + for(ImgRelease in ImgReleaseList){ + for(ImgVariant in ImgVariantList){ //ImgTypeTest - anyOf { - allOf { - expression { return (env.ImgVariant).startsWith('Default-') } - environment name: 'BuildDefault', value: 'true' - } - allOf { - 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 - ''' + if (env.BuildDefault == 'true' && (ImgVariant).startsWith('Default-')) { + BuildThis = true + } else if (env.BuildExtra == 'true' && (ImgVariant).startsWith('Extra-')) { + BuildThis = true + } else { + BuildThis = false } + //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 + ''' + } + } + } } } }