pipeline { agent any ##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" } } } }