playground/vagrant/Jenkinsfile

52 lines
934 B
Groovy

pipeline {
//agent none
//agent any
agent { label 'vagrant' }
//environment {
// CC = 'gcc'
// BUILD_TYPE = 'xxxx'
//}
stages {
stage('Build') {
steps {
echo "Building a virtual machine - ${env.BUILD_ID} on ${env.JENKINS_URL}"
sh "make init && make up"
}
}
stage('Test') {
steps {
echo "Testing the virtual machine built"
// TODO run the internal test script to check the internal aspect of the machine
// TODO run the external test scripts to test the machine over the network
}
}
stage('Deploy') {
when {
expression {
currentBuild.result == null || currentBuild.result == 'SUCCESS'
}
}
steps {
echo "Publishing the virtual machine built"
// TODO clean up before packaging
sh "make package"
// TODO copy the final artifacts to an artifact repository
// sh "make clean"
}
}
}
post {
success {
echo "SUCCESS!!!"
}
}
}