git-annex/Jenkinsfile

55 lines
1.4 KiB
Groovy

currentBuild.result = 'SUCCESS'
def caught_exception = null
final def EMAIL_RECIPIENTS = 'joey+git-annex@joeyh.name'
properties([
buildDiscarder(logRotator(artifactNumToKeepStr: '1')),
pipelineTriggers([[$class: 'hudson.triggers.SCMTrigger', scmpoll_spec: ''],]) // pollScm('') in 2.22+
])
try {
node('windows') {
dir('git-annex') {
stage('Checkout') {
checkout scm
}
stage('Build') {
bat 'c:/cygwin/bin/sh standalone/windows/build.sh'
}
stage('Archive') {
archiveArtifacts 'git-annex-installer.exe,dist/build-version'
}
stage('Upload') {
withCredentials([usernamePassword(credentialsId: 'rsync-downloads-kitenet-net', passwordVariable: 'RSYNC_PASSWORD', usernameVariable: 'DUMMY')]) {
bat 'c:/cygwin/bin/rsync git-annex-installer.exe winautobuild@downloads.kitenet.net::winautobuild'
bat 'c:/cygwin/bin/rsync dist/build-version winautobuild@downloads.kitenet.net::winautobuild'
}
}
}
}
} catch (exception) {
caught_exception = exception
currentBuild.result = 'FAILURE'
} finally {
node('master') {
step([$class: 'Mailer', notifyEveryUnstableBuild: false, recipients: EMAIL_RECIPIENTS, sendToIndividuals: false])
}
if (caught_exception) {
throw caught_exception
}
}