blob: 8e290e8a5362724f3f75f200638aba059a0d9d2f [file] [log] [blame]
// input parameters:
// string: UPSTREAM_PROJECT
// string: NODE
//
// OpenStack VIM Credentials
// string: OS_AUTH_URL
// string: OS_USERNAME
// string: OS_PASSWORD
// string: OS_PROJECT_NAME
node("${params.NODE}") {
// grab the upstream artifact name
step ([$class: 'CopyArtifact',
projectName: params.UPSTREAM_PROJECT])
container_name = sh(returnStdout: true, script: 'cat build_version.txt').trim()
stage("get osm") {
// get the IP of the osm container
OSM_IP = sh(returnStdout: true, script: "lxc list ${container_name} -c 4|grep eth0 |awk '{print \$2}'").trim()
}
stage("checkout") {
checkout scm
}
// build the pytest container
stage("build-docker") {
sh 'docker build -t osmclient systest/.'
}
os_credentials = "OS_AUTH_URL=${params.OS_AUTH_URL} OS_USERNAME=${params.OS_USERNAME} OS_PASSWORD=${params.OS_PASSWORD} OS_PROJECT_NAME=${params.OS_PROJECT_NAME}"
// now run the built container.
withDockerContainer('osmclient') {
// install the osmclient
stage("install-osmclient") {
sh 'pip install git+https://osm.etsi.org/gerrit/osm/osmclient'
}
stage("build-descriptors") {
sh "make -C systest descriptors"
}
stage("smoke-test") {
sh "make -C systest OSM_HOSTNAME=${OSM_IP} smoke"
junit 'systest/reports/pytest-smoke.xml'
}
stage("cirros-test") {
sh """
make -C systest OSM_HOSTNAME=${OSM_IP} ${os_credentials} cirros
"""
junit 'systest/reports/pytest-cirros.xml'
}
}
}