storj/Jenkinsfile
2018-08-22 09:18:50 -04:00

64 lines
1.4 KiB
Groovy

node('node') {
try {
currentBuild.result = "SUCCESS"
stage('Checkout') {
checkout scm
echo "Current build result: ${currentBuild.result}"
}
stage('Build Images') {
sh 'make test-docker images'
echo "Current build result: ${currentBuild.result}"
}
stage('Push Images') {
if (env.BRANCH_NAME == "master") {
echo 'Push to Repo'
sh 'make push-images'
}
echo "Current build result: ${currentBuild.result}"
}
stage('Deploy') {
/* This should only deploy to staging if the branch is master */
if (env.BRANCH_NAME == "master") {
sh "./scripts/deploy.staging.sh satellite storjlabs/storj-satellite:${commit_id}"
for (int i = 1; i < 60; i++) {
sh "./scripts/deploy.staging.sh storage-node-${i} storjlabs/storj-storage-node:${commit_id}"
}
}
echo "Current build result: ${currentBuild.result}"
}
}
catch (err) {
echo "Caught errors! ${err}"
echo "Setting build result to FAILURE"
currentBuild.result = "FAILURE"
/*
mail body: "project build error is here: ${env.BUILD_URL}" ,
from: 'build@storj.io',
replyTo: 'build@storj.io',
subject: 'project build failed',
to: "${env.CHANGE_AUTHOR_EMAIL}"
throw err
*/
}
finally {
stage('Cleanup') {
sh 'make test-docker-clean clean-images'
deleteDir()
}
}
}