X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=Jenkinsfile;h=b39b1256be157a14d741806a19db963ecc65eb3e;hb=refs%2Fchanges%2F05%2F9705%2F1;hp=e283f05eaa18fd652cf6abfff4bfb105e0a83c75;hpb=d125caf630021538f19aadab045b5d17def67cdd;p=osm%2FNBI.git diff --git a/Jenkinsfile b/Jenkinsfile index e283f05..b39b125 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -18,6 +18,7 @@ properties([ string(defaultValue: 'osm/NBI', description: '', name: 'GERRIT_PROJECT'), string(defaultValue: env.GERRIT_REFSPEC, description: '', name: 'GERRIT_REFSPEC'), string(defaultValue: env.GERRIT_PATCHSET_REVISION, description: '', name: 'GERRIT_PATCHSET_REVISION'), + string(defaultValue: 'patchset-created', description: '', name: 'GERRIT_EVENT_TYPE'), string(defaultValue: 'https://osm.etsi.org/gerrit', description: '', name: 'PROJECT_URL_PREFIX'), booleanParam(defaultValue: false, description: '', name: 'TEST_INSTALL'), string(defaultValue: 'artifactory-osm', description: '', name: 'ARTIFACTORY_SERVER'), @@ -31,16 +32,62 @@ def devops_checkout() { } node('docker') { - checkout scm - devops_checkout() - - ci_stage_2 = load "devops/jenkins/ci-pipelines/ci_stage_2.groovy" - ci_stage_2.ci_pipeline( 'NBI', - params.PROJECT_URL_PREFIX, - params.GERRIT_PROJECT, - params.GERRIT_BRANCH, - params.GERRIT_REFSPEC, - params.GERRIT_PATCHSET_REVISION, - params.TEST_INSTALL, - params.ARTIFACTORY_SERVER) + stage('CURRENT PIPELINE') { + checkout scm + devops_checkout() + + ci_stage_2 = load "devops/jenkins/ci-pipelines/ci_stage_2.groovy" + ci_stage_2.ci_pipeline('NBI', + params.PROJECT_URL_PREFIX, + params.GERRIT_PROJECT, + params.GERRIT_BRANCH, + params.GERRIT_REFSPEC, + params.GERRIT_PATCHSET_REVISION, + // params.TEST_INSTALL, + false, + params.ARTIFACTORY_SERVER) + } + stage('NEW PIPELINE') { + // a devops changes in new-pipeline branch is required to receive GERRIT_EVENT_TYPE + // https://osm.etsi.org/gerrit/#/c/osm/devops/+/9701/ + // Meanwhile, stage_name is predefined + def stage_name = "patchset" + try { + switch(GERRIT_EVENT_TYPE) { + case "change-merged": + stage_name = "merge" + break + + case "patchset-created": + stage_name = "patchset" + break + } + } + catch(caughtError) { + println("No gerrit event found") + } + + def downstream_params = [ + string(name: 'GERRIT_BRANCH', value: params.GERRIT_BRANCH), + string(name: 'GERRIT_PROJECT', value: params.GERRIT_PROJECT), + string(name: 'GERRIT_REFSPEC', value: params.GERRIT_REFSPEC), + string(name: 'GERRIT_PATCHSET_REVISION', value: params.GERRIT_PATCHSET_REVISION), + string(name: 'PROJECT_URL_PREFIX', value: params.PROJECT_URL_PREFIX), + booleanParam(name: 'TEST_INSTALL', value: params.TEST_INSTALL), + // next params will have to be updated with the proper values + string(name: 'IMAGENAME', value: 'opensourcemano/nbi'), + string(name: 'DOCKER_REGISTRY', value: 'localhost:5000'), + string(name: 'DOCKER_REGISTRY_PROTOCOL', value: 'http://'), + string(name: 'DOCKER_CREDENTIALS', value: '') + ] + + downstream_job_name = "NBI-${stage_name}" + echo "Triggering NEW PIPELINE" + build job: "${downstream_job_name}", parameters: downstream_params + // build job: "${downstream_job_name}", parameters: downstream_params, propagate: true + // It calls the new pipeline defined in Jenkinsfile.new + // + //build job: '', parameters: [[$class: 'StringParameterValue', name: 'param1', value: 'test_param']] + } } +