X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=jenkins%2Fci-pipelines%2Fci_stage_3.groovy;h=967bd5d30774f06004b433f958ae855ffac0aa62;hb=205920ea8c6d155c25b380b76d7f1bc1f7af71ba;hp=bc23e441b8468d42a8b05294ae4bfdc755ca40ce;hpb=0062727f3c596aa3c4e87b4ea497bdf69b3dedd9;p=osm%2Fdevops.git diff --git a/jenkins/ci-pipelines/ci_stage_3.groovy b/jenkins/ci-pipelines/ci_stage_3.groovy index bc23e441..967bd5d3 100644 --- a/jenkins/ci-pipelines/ci_stage_3.groovy +++ b/jenkins/ci-pipelines/ci_stage_3.groovy @@ -56,10 +56,23 @@ properties([ //////////////////////////////////////////////////////////////////////////////////////// // Helper Functions //////////////////////////////////////////////////////////////////////////////////////// -def run_robot_systest(tagName,testName,osmHostname,prometheusHostname,prometheus_port=null,envfile=null,portmappingfile=null,kubeconfig=null,clouds=null,hostfile=null,jujuPassword=null,pass_th='0.0',unstable_th='0.0') { - tempdir = sh(returnStdout: true, script: "mktemp -d").trim() - if ( !envfile ) - { +void run_robot_systest(String tagName, + String testName, + String osmHostname, + String prometheusHostname, + Integer prometheusPort=null, + String envfile=null, + String portmappingfile=null, + String jujudata=null, + String kubeconfig=null, + String clouds=null, + String hostfile=null, + String jujuPassword=null, + String osmRSAfile=null, + String pass_th='0.0', + String unstable_th='0.0') { + tempdir = sh(returnStdout: true, script: 'mktemp -d').trim() + if ( !envfile ) { sh(script: "touch ${tempdir}/env") envfile="${tempdir}/env" } @@ -78,7 +91,7 @@ def run_robot_systest(tagName,testName,osmHostname,prometheusHostname,prometheus } try { - sh "docker run --env OSM_HOSTNAME=${osmHostname} --env PROMETHEUS_HOSTNAME=${prometheusHostname} ${PROMETHEUS_PORT_VAR} ${JUJU_PASSWORD_VAR} --env-file ${envfile} -v ${clouds}:/etc/openstack/clouds.yaml -v ${kubeconfig}:/root/.kube/config -v ${tempdir}:/robot-systest/reports -v ${portmappingfile}:/root/port-mapping.yaml ${hostfilemount} opensourcemano/tests:${tagName} -c -t ${testName}" + sh "docker run --env OSM_HOSTNAME=${osmHostname} --env PROMETHEUS_HOSTNAME=${prometheusHostname} ${PROMETHEUS_PORT_VAR} ${JUJU_PASSWORD_VAR} --env-file ${envfile} -v ${clouds}:/etc/openstack/clouds.yaml -v ${jujudata}:/root/.local/share/juju -v ${osmRSAfile}:/root/osm_id_rsa -v ${kubeconfig}:/root/.kube/config -v ${tempdir}:/robot-systest/reports -v ${portmappingfile}:/root/port-mapping.yaml ${hostfilemount} opensourcemano/tests:${tagName} -c -t ${testName}" } finally { sh "cp ${tempdir}/* ." outputDirectory = sh(returnStdout: true, script: "pwd").trim() @@ -178,6 +191,7 @@ node("${params.NODE}") { server_id = null http_server_name = null devopstempdir = null + jujutempdir = null useCharmedInstaller = params.INSTALLER.equalsIgnoreCase("charmed") try { @@ -490,6 +504,13 @@ node("${params.NODE}") { /usr/share/osm-devops/installers/osm_health.sh -k -s ${stackName} """ } // stage("OSM Health") +/////////////////////////////////////////////////////////////////////////////////////// +// Get juju data from installed OSM in remote vm +/////////////////////////////////////////////////////////////////////////////////////// + jujutempdir = sh(returnStdout: true, script: "mktemp -d").trim() + jujudatafolder = jujutempdir + '/juju' + homefolder = sshCommand remote: remote, command: 'echo ${HOME}' + sshGet remote: remote, from: homefolder + '/.local/share/juju', into: jujutempdir, override: true } // if ( params.DO_INSTALL ) @@ -524,10 +545,12 @@ EOF""" prometheusPort, params.ROBOT_VIM, params.ROBOT_PORT_MAPPING_VIM, + jujudatafolder, params.KUBECONFIG, params.CLOUDS, hostfile, jujuPassword, + SSH_KEY, params.ROBOT_PASS_THRESHOLD, params.ROBOT_UNSTABLE_THRESHOLD ) @@ -638,5 +661,9 @@ EOF""" if ( devopstempdir != null ) { sh "rm -rf ${devopstempdir}" } + + if ( jujutempdir != null ) { + sh "rm -rf ${jujutempdir}" + } } }