From 5852d51a19460a00a5779ca423b07deef3daff1b Mon Sep 17 00:00:00 2001 From: David Prevot Date: Thu, 30 Jun 2022 10:40:49 +0200 Subject: [PATCH] CI: Add .Jenkinsfile --- .Jenkinsfile | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .Jenkinsfile diff --git a/.Jenkinsfile b/.Jenkinsfile new file mode 100644 index 0000000..7947dcb --- /dev/null +++ b/.Jenkinsfile @@ -0,0 +1,45 @@ +pipeline { + agent { label 'docker' } + stages { + stage('Build Debian package') { + agent { + docker { + image 'evolix/gbp:bullseye' + args '-u root --privileged' + } + } + when { + branch 'debian' + } + steps { + script { + sh 'mk-build-deps --install --remove debian/control' + sh 'rm -rf {source,*.gz,*.bz2,*.xz,*.deb,*.dsc,*.changes,*.buildinfo,lintian.txt}' + sh "gbp clone --debian-branch=$GIT_BRANCH $GIT_URL source" + sh 'cd source && git checkout $GIT_BRANCH && gbp buildpackage -us -uc' + } + archiveArtifacts allowEmptyArchive: true, artifacts: '*.gz,*.bz2,*.xz,*.deb,*.dsc,*.changes,*.buildinfo,lintian.txt' + } + } + + stage('Upload Debian package') { + when { + branch 'debian' + } + steps { + script { + sh 'echo Dummy line to remove once something actually happens.' + /* No crendentials yet. + sh 'rsync -avP evoadmin-mail* droneci@pub.evolix.net:/home/droneci/evoadmin-mail/' + */ + } + } + } + } + post { + // Clean after build + always { + cleanWs() + } + } +}