| node ('build') { | |
| // Mark the code checkout 'stage'.... | |
| //stage 'Checkout' | |
| // Get cord from opencord repo | |
| //checkout([$class: 'RepoScm', currentBranch: true, manifestBranch: 'master', manifestRepositoryUrl: 'https://gerrit.opencord.org/manifest', quiet: true]) | |
| stage 'chdir to build' | |
| dir('build') { | |
| try { | |
| stage 'Bring up vagrant box' | |
| sh 'vagrant up corddev' | |
| stage 'Fetch build elements' | |
| sh 'vagrant ssh -c "cd /cord/build; ./gradlew fetch" corddev' | |
| stage 'Build Images' | |
| sh 'vagrant ssh -c "cd /cord/build; ./gradlew buildImages" corddev' | |
| stage 'Publish to headnode' | |
| sh 'vagrant ssh -c "cd /cord/build; ./gradlew -PtargetReg=10.90.0.251:5000 -PdeployConfig=config/onlab_develop_pod.yml publish" corddev' | |
| stage 'Deploy' | |
| sh 'vagrant ssh -c "cd /cord/build; ./gradlew -PtargetReg=10.90.0.251:5000 -PdeployConfig=config/onlab_develop_pod.yml deploy" corddev' | |
| currentBuild.result = 'SUCCESS' | |
| } catch (err) { | |
| currentBuild.result = 'FAILURE' | |
| step([$class: 'Mailer', notifyEveryUnstableBuild: true, recipients: 'ali@onlab.us', sendToIndividuals: false]) | |
| } finally { | |
| sh 'vagrant destroy -f corddev' | |
| } | |
| echo "RESULT: ${currentBuild.result}" | |
| } | |
| } |