playground/vagrant/Jenkinsfile

55 lines
1.0 KiB
Plaintext
Raw Permalink Normal View History

pipeline {
2021-08-29 04:28:28 +00:00
//agent none
//agent any
2021-08-29 04:24:29 +00:00
agent { label 'vagrant' }
2021-08-29 04:28:28 +00:00
//environment {
// CC = 'gcc'
// BUILD_TYPE = 'xxxx'
//}
stages {
stage('Build') {
steps {
echo "Building a virtual machine - ${env.BUILD_ID} on ${env.JENKINS_URL}"
sh "make up"
}
}
stage('Test') {
steps {
echo "Testing the virtual machine built"
2021-08-29 04:28:28 +00:00
// 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"
2021-08-29 08:11:32 +00:00
// TODO clean up before packaging
// remove stale log files, temporary files
// remove unneeded packages
// remove the default vagrant user and sshkey?
sh "make package"
2021-08-29 04:28:28 +00:00
// TODO copy the final artifacts to an artifact repository
// sh "make clean"
}
}
}
2021-08-29 04:24:29 +00:00
post {
success {
echo "SUCCESS!!!"
}
}
}