2019-03-07 10:56:01 +01:00
pipeline {
2019-03-21 15:44:17 +01:00
agent {label 'physix_agent'}
2019-10-04 18:48:35 +02:00
environment {
// GRAFFY_OWNCLOUD_JENKINS_PWD's value has been obtained from https://cloud.ipr.univ-rennes1.fr as an app password and is defined in gitlab as a CI secret variable,
// then this app password has been declared to jenkins's credentials as a secret text with the name graffy-cloudipr-for-jenkinsipr
GRAFFY_OWNCLOUD_JENKINS_PWD = credentials('graffy-cloudipr-for-jenkinsipr')
2020-04-10 17:50:45 +02:00
// not sure pwd is the same as jenkin's variable $WORKSPACE
2020-04-10 17:53:01 +02:00
BUILD_ROOT_PATH = '${PWD}/build'
2019-10-04 18:48:35 +02:00
}
2019-03-07 10:56:01 +01:00
stages {
stage('Initial setup...') {
steps {
echo 'Initial setup...'
2019-10-01 12:45:22 +02:00
// erase old builds if anything is left
sh './scripts/cleanup.bash'
2019-07-17 16:56:05 +02:00
sh './scripts/install_fiji.bash'
2020-04-10 15:14:33 +02:00
sh 'make BUILD_ROOT_PATH=$BUILD_ROOT_PATH FIJI_ROOT_PATH=$(pwd)/Fiji.app install'
2019-03-07 10:56:01 +01:00
}
}
stage('Testing the package...') {
steps {
2020-04-10 15:14:33 +02:00
sh 'make BUILD_ROOT_PATH=$BUILD_ROOT_PATH FIJI_ROOT_PATH=$(pwd)/Fiji.app RAW_IMAGES_ROOT_PATH=/opt/ipr/cluster/work.global/graffy/jenkins-store/lipase/raw-images TESTS_OUTPUT_DATA_PATH=$TMP/$(whoami)/$JOB_NAME test'
2019-03-07 10:56:01 +01:00
}
}
2020-03-18 16:42:14 +01:00
stage('Building documentation...') {
steps {
echo 'Building documentation...'
2020-04-10 15:14:33 +02:00
sh 'make BUILD_ROOT_PATH=$BUILD_ROOT_PATH FIJI_ROOT_PATH=$(pwd)/Fiji.app RAW_IMAGES_ROOT_PATH=/opt/ipr/cluster/work.global/graffy/jenkins-store/lipase/raw-images doc'
2020-03-18 16:42:14 +01:00
}
}
2019-10-04 18:48:35 +02:00
stage('Releasing package...') {
steps {
echo 'Releasing package...'
sh './scripts/release_lipase_package.bash'
}
}
2019-03-07 10:56:01 +01:00
stage('Cleaning up...') {
steps {
echo 'Cleaning artifacts...'
2019-10-01 12:45:22 +02:00
sh './scripts/cleanup.bash'
2019-03-07 11:33:59 +01:00
// sh 'rm -rf ./install_resources'
// sh 'cd ./src/doc && make clean'
2019-03-07 10:56:01 +01:00
}
}
}
2022-03-16 10:48:54 +01:00
post
{
// always, success, failure, unstable, changed
failure
{
mail bcc: '', body: "<b>Validation failed</b><br>Project: ${env.JOB_NAME} <br>Build Number: ${env.BUILD_NUMBER} <br>Build URL: ${env.BUILD_URL}", cc: '', charset: 'UTF-8', from: '', mimeType: 'text/html', replyTo: '', subject: "CI build failed for ${env.JOB_NAME}", to: "guillaume.raffy@univ-rennes1.fr";
}
}
2019-03-07 10:56:01 +01:00
}