X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=jenkins%2Fci-pipelines%2Fci_stage_3.groovy;h=67f3491e44f5e917e5e050c8d4f73c344e6a732e;hb=9ff106aeecabd2eb935caf8feba9b7df7a925f0f;hp=2e62dfe66c63a0e35d0ec552904200f9fa591da1;hpb=5db6febdb04d1ac7eb6c88a21ea52ef97a0c183e;p=osm%2Fdevops.git diff --git a/jenkins/ci-pipelines/ci_stage_3.groovy b/jenkins/ci-pipelines/ci_stage_3.groovy index 2e62dfe6..67f3491e 100644 --- a/jenkins/ci-pipelines/ci_stage_3.groovy +++ b/jenkins/ci-pipelines/ci_stage_3.groovy @@ -33,10 +33,11 @@ properties([ string(defaultValue: 'osm-stage_4', description: '', name: 'DOWNSTREAM_STAGE_NAME'), booleanParam(defaultValue: false, description: '', name: 'SAVE_CONTAINER_ON_FAIL'), booleanParam(defaultValue: false, description: '', name: 'SAVE_CONTAINER_ON_PASS'), + booleanParam(defaultValue: true, description: '', name: 'SAVE_ARTIFACTS_ON_SMOKE_SUCCESS'), booleanParam(defaultValue: false, description: '', name: 'DO_STAGE_4'), booleanParam(defaultValue: true, description: '', name: 'DO_BUILD'), - booleanParam(defaultValue: false, description: '', name: 'DO_INSTALL'), - booleanParam(defaultValue: false, description: '', name: 'DO_SMOKE'), + booleanParam(defaultValue: true, description: '', name: 'DO_INSTALL'), + booleanParam(defaultValue: true, description: '', name: 'DO_SMOKE'), booleanParam(defaultValue: false, description: '', name: 'SAVE_ARTIFACTS_OVERRIDE'), ]) ]) @@ -45,10 +46,16 @@ def uninstall_osm(stackName) { sh """ export OSM_USE_LOCAL_DEVOPS=true export PATH=$PATH:/snap/bin - installers/full_install_osm.sh -y -s ${stackName} --test --nolxd --nodocker --nojuju --nohostports --nohostclient --uninstall + installers/full_install_osm.sh -y -w /tmp/osm -t ${stackName} -s ${stackName} --test --nolxd --nodocker --nojuju --nohostports --nohostclient --uninstall """ } +def run_systest(stackName,tagName,testName) { + tempdir = sh(returnStdout: true, script: "mktemp -d").trim() + sh "docker run --network net${stackName} -v ${tempdir}:/usr/share/osm-devops/systest/reports osm/osmclient:${tagName} make -C /usr/share/osm-devops/systest ${testName}" + junit "${tempdir}/*.xml" +} + node("${params.NODE}") { sh 'env' @@ -80,7 +87,7 @@ node("${params.NODE}") { // grab all stable upstream builds based on the dir("${RELEASE}") { - def list = ["RO", "openvim", "osmclient", "IM", "devops", "MON", "N2VC", "NBI", "common", "LCM"] + def list = ["RO", "openvim", "osmclient", "IM", "devops", "MON", "N2VC", "NBI", "common", "LCM", "POL"] for (component in list) { step ([$class: 'CopyArtifact', projectName: "${component}${upstream_main_job}/${GERRIT_BRANCH}"]) @@ -197,6 +204,7 @@ node("${params.NODE}") { export PATH=$PATH:/snap/bin installers/full_install_osm.sh -y -s ${container_name} --test --nolxd --nodocker --nojuju --nohostports --nohostclient \ --nodockerbuild -t ${container_name} \ + -w /tmp/osm \ ${commit_id} \ ${repo_distro} \ ${repo_base_url} \ @@ -207,14 +215,18 @@ node("${params.NODE}") { } } + stage_archive = false if ( params.DO_SMOKE ) { + stage("OSM Health") { + sh "installers/osm_health.sh -s ${container_name}" + } stage("Smoke") { - ci_helper.systest_run(container_name, 'smoke') - junit '*.xml' + run_systest(container_name,container_name,"smoke") + // archive smoke success until stage_4 is ready + stage_archive = params.SAVE_ARTIFACTS_ON_SMOKE_SUCCESS } } - stage_4_archive = false if ( params.DO_STAGE_4 ) { stage("stage_4") { def downstream_params = [ @@ -225,13 +237,13 @@ node("${params.NODE}") { currentBuild.result = stage_4_result.result if ( stage_4_result.getResult().equals('SUCCESS') ) { - stage_4_archive = true; + stage_archive = true; } } } // override to save the artifacts - if ( params.SAVE_ARTIFACTS_OVERRIDE || stage_4_archive ) { + if ( params.SAVE_ARTIFACTS_OVERRIDE || stage_archive ) { stage("Archive") { sh "echo ${container_name} > build_version.txt" archiveArtifacts artifacts: "build_version.txt", fingerprint: true