diff --git a/Jenkinsfile b/Jenkinsfile index 8f2b956..d8062d1 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,89 +1,89 @@ -def build_appimage() -{ - sh ''' - set -e - set -x - cd $WORKSPACE - [ -d build ] && rm -rf build - mkdir build - for tag in /var/jenkins_home/workspace/nightly-antosaio/build/frontend/*; do - echo "Building for $arch version $tag" - ./mkimage.sh $arch $tag - done - ''' -} - -pipeline{ - agent { node{ label'master' }} - options { - // Limit build history with buildDiscarder option: - // daysToKeepStr: history is only kept up to this many days. - // numToKeepStr: only this many build logs are kept. - // artifactDaysToKeepStr: artifacts are only kept up to this many days. - // artifactNumToKeepStr: only this many builds have their artifacts kept. - buildDiscarder(logRotator(numToKeepStr: "1")) - // Enable timestamps in build log console - timestamps() - // Maximum time to run the whole pipeline before canceling it - timeout(time: 3, unit: 'HOURS') - // Use Jenkins ANSI Color Plugin for log console - ansiColor('xterm') - // Limit build concurrency to 1 per branch - disableConcurrentBuilds() - } - stages - { - stage('Build AMD64') { - agent { - docker { - image 'xsangle/ci-tools:latest-amd64' - args '-v /var/jenkins_home/workspace/nightly-antosaio:/var/jenkins_home/workspace/nightly-antosaio' - reuseNode true - } - } - steps { - script{ - env.arch = "amd64" - } - build_appimage() - } - } - stage('Build ARM64') { - agent { - docker { - image 'xsangle/ci-tools:latest-arm64' - args '-v /var/jenkins_home/workspace/nightly-antosaio:/var/jenkins_home/workspace/nightly-antosaio' - reuseNode true - } - } - steps { - script{ - env.arch = "arm64" - } - build_appimage() - } - } - stage('Build ARM') { - agent { - docker { - image 'xsangle/ci-tools:latest-arm' - args '-v /var/jenkins_home/workspace/nightly-antosaio:/var/jenkins_home/workspace/nightly-antosaio' - reuseNode true - } - } - steps { - script{ - env.arch = "arm" - } - build_appimage() - } - } - stage('Archive') { - steps { - script { - archiveArtifacts artifacts: 'build/', fingerprint: true - } - } - } - } +def build_appimage() +{ + sh ''' + set -e + set -x + cd $WORKSPACE + [ -d build ] && rm -rf build + mkdir build + for file in /var/jenkins_home/workspace/nightly-antosaio/build/frontend/*; do + echo "Building for $arch version $tag" + ./mkimage.sh $arch $(basename $file) + done + ''' +} + +pipeline{ + agent { node{ label'master' }} + options { + // Limit build history with buildDiscarder option: + // daysToKeepStr: history is only kept up to this many days. + // numToKeepStr: only this many build logs are kept. + // artifactDaysToKeepStr: artifacts are only kept up to this many days. + // artifactNumToKeepStr: only this many builds have their artifacts kept. + buildDiscarder(logRotator(numToKeepStr: "1")) + // Enable timestamps in build log console + timestamps() + // Maximum time to run the whole pipeline before canceling it + timeout(time: 3, unit: 'HOURS') + // Use Jenkins ANSI Color Plugin for log console + ansiColor('xterm') + // Limit build concurrency to 1 per branch + disableConcurrentBuilds() + } + stages + { + stage('Build AMD64') { + agent { + docker { + image 'xsangle/ci-tools:latest-amd64' + args '-v /var/jenkins_home/workspace/nightly-antosaio:/var/jenkins_home/workspace/nightly-antosaio' + reuseNode true + } + } + steps { + script{ + env.arch = "amd64" + } + build_appimage() + } + } + stage('Build ARM64') { + agent { + docker { + image 'xsangle/ci-tools:latest-arm64' + args '-v /var/jenkins_home/workspace/nightly-antosaio:/var/jenkins_home/workspace/nightly-antosaio' + reuseNode true + } + } + steps { + script{ + env.arch = "arm64" + } + build_appimage() + } + } + stage('Build ARM') { + agent { + docker { + image 'xsangle/ci-tools:latest-arm' + args '-v /var/jenkins_home/workspace/nightly-antosaio:/var/jenkins_home/workspace/nightly-antosaio' + reuseNode true + } + } + steps { + script{ + env.arch = "arm" + } + build_appimage() + } + } + stage('Archive') { + steps { + script { + archiveArtifacts artifacts: 'build/', fingerprint: true + } + } + } + } } \ No newline at end of file