diff options
Diffstat (limited to 'Jenkinsfile')
-rw-r--r-- | Jenkinsfile | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 00000000..d46fdcbf --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,50 @@ +#!/usr/bin/env groovy + +@NonCPS +def setDescription() { + def item = Jenkins.instance.getItemByFullName(env.JOB_NAME) + item.setDescription("VyOS image build using a\nPipeline build inside Docker container.") + item.save() +} + +setDescription() + +/* Only keep the 10 most recent builds. */ +def projectProperties = [ + [$class: 'BuildDiscarderProperty',strategy: [$class: 'LogRotator', numToKeepStr: '5']], +] + +properties(projectProperties) + +pipeline { + agent { + dockerfile { + filename 'Dockerfile' + label 'jessie-amd64' + args '--privileged' + } + } + + stages { + stage('Configure') { + steps { + sh './configure --build-by="autobuild@vyos.net" --debian-mirror="http://ftp.us.debian.org/debian/"' + } + } + stage('Build ISO') { + steps { + sh 'sudo make iso' + } + } + } + + post { + always { + echo 'One way or another, I have finished' + // change build dir file permissions so wen can cleanup as regular + // user (jenkins) afterwards + sh 'sudo chmod -R 777 .' + deleteDir() /* cleanup our workspace */ + } + } +} |