diff options
66 files changed, 985 insertions, 533 deletions
diff --git a/jjb-sandbox/releng/releng-sandbox-jobs.yml b/jjb-sandbox/releng/releng-sandbox-jobs.yml index 97fea8992..f5aab1ac2 100644 --- a/jjb-sandbox/releng/releng-sandbox-jobs.yml +++ b/jjb-sandbox/releng/releng-sandbox-jobs.yml @@ -56,3 +56,4 @@ publishers: - archive-artifacts: artifacts: 'job_output/*' + - email-jenkins-admins-on-failure diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml index fd4dc9ff5..26eddb5b2 100644 --- a/jjb/apex/apex.yml +++ b/jjb/apex/apex.yml @@ -104,6 +104,34 @@ <<: *master - 'os-odl-bgpvpn-ha': <<: *master + - 'os-ovn-nofeature-noha': + <<: *master + - 'os-nosdn-fdio-noha': + <<: *master + - 'os-nosdn-fdio-ha': + <<: *master + - 'os-odl-fdio-noha': + <<: *master + - 'os-odl-fdio-ha': + <<: *master + - 'os-nosdn-bar-ha': + <<: *master + - 'os-nosdn-bar-noha': + <<: *master + - 'os-nosdn-nofeature-ha-ipv6': + <<: *master + - 'os-nosdn-ovs_dpdk-noha': + <<: *master + - 'os-nosdn-ovs_dpdk-ha': + <<: *master + - 'os-nosdn-kvm_ovs_dpdk-noha': + <<: *master + - 'os-nosdn-kvm_ovs_dpdk-ha': + <<: *master + - 'os-odl-sfc-noha': + <<: *master + - 'os-odl-sfc-ha': + <<: *master platform: - 'baremetal' @@ -667,6 +695,10 @@ abort-all-job: true git-revision: false + publishers: + - groovy-postbuild: + script: + !include-raw-escape: ./update-build-result.groovy # Baremetal test job - job-template: @@ -743,13 +775,15 @@ enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|nosdn-kvm|odl_l3-fdio)-ha/" abort-all-job: false git-revision: false - - conditional-step: - condition-kind: current-status - condition-worst: SUCCESS - condtion-best: SUCCESS - on-evaluation-failure: mark-unstable - steps: - - shell: 'echo "Tests Passed"' +# Build status is always success due conditional plugin prefetching +# build status before multijob phases execute +# - conditional-step: +# condition-kind: current-status +# condition-worst: SUCCESS +# condtion-best: SUCCESS +# on-evaluation-failure: mark-unstable +# steps: +# - shell: 'echo "Tests Passed"' # danube Daily @@ -1172,6 +1206,132 @@ abort-all-job: true git-revision: false + - name: 'apex-os-ovn-nofeature-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-fdio-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-fdio-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-odl-fdio-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-odl-fdio-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-bar-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-bar-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-kvm_ovs_dpdk-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-nosdn-kvm_ovs_dpdk-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-odl-sfc-noha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + + - name: 'apex-os-odl-sfc-ha-baremetal-master' + node-parameters: false + current-parameters: false + predefined-parameters: | + OPNFV_CLEAN=yes + kill-phase-on: NEVER + abort-all-job: true + git-revision: false + # snapshot create diff --git a/jjb/apex/apex.yml.j2 b/jjb/apex/apex.yml.j2 index d7b67c344..5d7f150cd 100644 --- a/jjb/apex/apex.yml.j2 +++ b/jjb/apex/apex.yml.j2 @@ -611,6 +611,10 @@ abort-all-job: true git-revision: false + publishers: + - groovy-postbuild: + script: + !include-raw-escape: ./update-build-result.groovy # Baremetal test job - job-template: @@ -687,13 +691,15 @@ enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|nosdn-kvm|odl_l3-fdio)-ha/" abort-all-job: false git-revision: false - - conditional-step: - condition-kind: current-status - condition-worst: SUCCESS - condtion-best: SUCCESS - on-evaluation-failure: mark-unstable - steps: - - shell: 'echo "Tests Passed"' +# Build status is always success due conditional plugin prefetching +# build status before multijob phases execute +# - conditional-step: +# condition-kind: current-status +# condition-worst: SUCCESS +# condtion-best: SUCCESS +# on-evaluation-failure: mark-unstable +# steps: +# - shell: 'echo "Tests Passed"' {% for stream in scenarios %} # {{ stream }} Daily diff --git a/jjb/apex/scenarios.yaml.hidden b/jjb/apex/scenarios.yaml.hidden index 748cd21b8..f49fa83c7 100644 --- a/jjb/apex/scenarios.yaml.hidden +++ b/jjb/apex/scenarios.yaml.hidden @@ -4,6 +4,20 @@ master: - 'os-odl-nofeature-ha' - 'os-odl-nofeature-noha' - 'os-odl-bgpvpn-ha' + - 'os-ovn-nofeature-noha' + - 'os-nosdn-fdio-noha' + - 'os-nosdn-fdio-ha' + - 'os-odl-fdio-noha' + - 'os-odl-fdio-ha' + - 'os-nosdn-bar-ha' + - 'os-nosdn-bar-noha' + - 'os-nosdn-nofeature-ha-ipv6' + - 'os-nosdn-ovs_dpdk-noha' + - 'os-nosdn-ovs_dpdk-ha' + - 'os-nosdn-kvm_ovs_dpdk-noha' + - 'os-nosdn-kvm_ovs_dpdk-ha' + - 'os-odl-sfc-noha' + - 'os-odl-sfc-ha' danube: - 'os-nosdn-nofeature-noha' - 'os-nosdn-nofeature-ha' diff --git a/jjb/apex/update-build-result.groovy b/jjb/apex/update-build-result.groovy new file mode 100644 index 000000000..9edca6b6b --- /dev/null +++ b/jjb/apex/update-build-result.groovy @@ -0,0 +1,5 @@ +import hudson.model.* +if (manager.logContains('^.*apex-deploy-baremetal.*SUCCESS$') + && manager.build.@result == hudson.model.Result.FAILURE) { + manager.build.@result = hudson.model.Result.UNSTABLE +} diff --git a/jjb/armband/armband-ci-jobs.yml b/jjb/armband/armband-ci-jobs.yml index e7de31908..a5d75bdca 100644 --- a/jjb/armband/armband-ci-jobs.yml +++ b/jjb/armband/armband-ci-jobs.yml @@ -11,27 +11,27 @@ branch: '{stream}' gs-pathname: '' disabled: false - danube: &danube - stream: danube + euphrates: &euphrates + stream: euphrates branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true #-------------------------------- # POD, INSTALLER, AND BRANCH MAPPING #-------------------------------- # CI POD's #-------------------------------- -# danube +# euphrates #-------------------------------- pod: - armband-baremetal: slave-label: armband-baremetal installer: fuel - <<: *danube + <<: *euphrates - armband-virtual: slave-label: armband-virtual installer: fuel - <<: *danube + <<: *euphrates #-------------------------------- # master #-------------------------------- @@ -46,24 +46,24 @@ #-------------------------------- # NONE-CI POD's #-------------------------------- -# danube +# euphrates #-------------------------------- - arm-pod2: slave-label: arm-pod2 installer: fuel - <<: *danube + <<: *euphrates - arm-pod3: slave-label: arm-pod3 installer: fuel - <<: *danube + <<: *euphrates - arm-pod4: slave-label: arm-pod4 installer: fuel - <<: *danube + <<: *euphrates - arm-virtual1: slave-label: arm-virtual1 installer: fuel - <<: *danube + <<: *euphrates #-------------------------------- # master #-------------------------------- @@ -253,6 +253,7 @@ publishers: - email: recipients: armband@enea.com + - email-jenkins-admins-on-failure ######################## # parameter macros @@ -314,36 +315,36 @@ - timed: '' #---------------------------------------------------------------------- -# Enea Armband CI Baremetal Triggers running against danube branch +# Enea Armband CI Baremetal Triggers running against euphrates branch #---------------------------------------------------------------------- - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-armband-baremetal-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 0,16 * * 2,4' + - timed: '' - trigger: - name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 0 * * 1,5,7' + - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-armband-baremetal-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 16 * * 1,5,7' + - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-armband-baremetal-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 8 * * 2,4,6' + - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-armband-baremetal-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 8 * * 1,3,5,7' + - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-armband-baremetal-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 0 * * 3,6' + - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-armband-baremetal-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-armband-baremetal-euphrates-trigger' triggers: - - timed: '0 16 * * 3,6' + - timed: '' #--------------------------------------------------------------- # Enea Armband CI Virtual Triggers running against master branch #--------------------------------------------------------------- @@ -376,66 +377,66 @@ triggers: - timed: '' #-------------------------------------------------------------------- -# Enea Armband CI Virtual Triggers running against danube branch +# Enea Armband CI Virtual Triggers running against euphrates branch #-------------------------------------------------------------------- - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-armband-virtual-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-armband-virtual-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-nofeature-ha-armband-virtual-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-armband-virtual-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-armband-virtual-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-armband-virtual-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-armband-virtual-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-armband-virtual-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-armband-virtual-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-armband-virtual-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-armband-virtual-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-armband-virtual-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-armband-virtual-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-armband-virtual-euphrates-trigger' triggers: - timed: '' #-------------------------------------------------------------------- -# Enea Armband Non CI Virtual Triggers running against danube branch +# Enea Armband Non CI Virtual Triggers running against euphrates branch #-------------------------------------------------------------------- - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-arm-virtual1-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-arm-virtual1-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-nofeature-ha-arm-virtual1-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-arm-virtual1-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-arm-virtual1-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-arm-virtual1-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-arm-virtual1-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-arm-virtual1-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-arm-virtual1-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-arm-virtual1-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-arm-virtual1-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-arm-virtual1-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-arm-virtual1-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-arm-virtual1-euphrates-trigger' triggers: - timed: '' @@ -503,34 +504,34 @@ triggers: - timed: '' #--------------------------------------------------------------- -# Enea Armband POD 2 Triggers running against danube branch +# Enea Armband POD 2 Triggers running against euphrates branch #--------------------------------------------------------------- - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-arm-pod2-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-arm-pod2-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-nofeature-ha-arm-pod2-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-arm-pod2-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-arm-pod2-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-arm-pod2-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-arm-pod2-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-arm-pod2-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-arm-pod2-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-arm-pod2-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-arm-pod2-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-arm-pod2-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-arm-pod2-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-arm-pod2-euphrates-trigger' triggers: - timed: '' #---------------------------------------------------------- @@ -565,34 +566,34 @@ triggers: - timed: '' #--------------------------------------------------------------- -# Enea Armband POD 3 Triggers running against danube branch +# Enea Armband POD 3 Triggers running against euphrates branch #--------------------------------------------------------------- - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-arm-pod3-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-arm-pod3-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-nofeature-ha-arm-pod3-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-arm-pod3-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-arm-pod3-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-arm-pod3-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-arm-pod3-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-arm-pod3-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-arm-pod3-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-arm-pod3-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-arm-pod3-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-arm-pod3-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-arm-pod3-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-arm-pod3-euphrates-trigger' triggers: - timed: '' #-------------------------------------------------------------------------- @@ -627,33 +628,33 @@ triggers: - timed: '' #-------------------------------------------------------------------------- -# Enea Armband POD 3 Triggers running against danube branch (aarch64 slave) +# Enea Armband POD 3 Triggers running against euphrates branch (aarch64 slave) #-------------------------------------------------------------------------- - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-arm-pod4-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-arm-pod4-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-nofeature-ha-arm-pod4-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-arm-pod4-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-arm-pod4-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-arm-pod4-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-arm-pod4-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-arm-pod4-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-arm-pod4-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-arm-pod4-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-arm-pod4-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-arm-pod4-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-arm-pod4-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-arm-pod4-euphrates-trigger' triggers: - timed: '' diff --git a/jjb/armband/armband-deploy.sh b/jjb/armband/armband-deploy.sh index 9964ed5cc..08d323325 100755 --- a/jjb/armband/armband-deploy.sh +++ b/jjb/armband/armband-deploy.sh @@ -70,10 +70,6 @@ if [[ $LAB_CONFIG_URL =~ ^(git|ssh):// ]]; then fi fi -if [[ "$NODE_NAME" =~ "virtual" ]]; then - POD_NAME="virtual_kvm" -fi - # releng wants us to use nothing else but opnfv.iso for now. We comply. ISO_FILE=$WORKSPACE/opnfv.iso @@ -95,7 +91,7 @@ fi # construct the command DEPLOY_COMMAND="$WORKSPACE/ci/deploy.sh -b ${LAB_CONFIG_URL} \ -l $LAB_NAME -p $POD_NAME -s $DEPLOY_SCENARIO -i file://${ISO_FILE} \ - -H -B ${DEFAULT_BRIDGE:-pxebr} -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME \ + -B ${DEFAULT_BRIDGE:-,,,} -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME \ ${DEPLOY_CACHE}" # log info to console diff --git a/jjb/armband/armband-project-jobs.yml b/jjb/armband/armband-project-jobs.yml index f6840a008..0623b5576 100644 --- a/jjb/armband/armband-project-jobs.yml +++ b/jjb/armband/armband-project-jobs.yml @@ -17,10 +17,10 @@ branch: '{stream}' gs-pathname: '' disabled: false - - danube: + - euphrates: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true - job-template: name: 'armband-{installer}-build-daily-{stream}' @@ -67,6 +67,7 @@ publishers: - email: recipients: armband@enea.com + - email-jenkins-admins-on-failure ######################## # parameter macros diff --git a/jjb/armband/armband-verify-jobs.yml b/jjb/armband/armband-verify-jobs.yml index 567456d9b..c9476b1a2 100644 --- a/jjb/armband/armband-verify-jobs.yml +++ b/jjb/armband/armband-verify-jobs.yml @@ -12,10 +12,10 @@ branch: '{stream}' gs-pathname: '' disabled: false - - danube: + - euphrates: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true ##################################### # patch verification phases ##################################### diff --git a/jjb/bottlenecks/bottlenecks-ci-jobs.yml b/jjb/bottlenecks/bottlenecks-ci-jobs.yml index c56ca19e9..71601cf75 100644 --- a/jjb/bottlenecks/bottlenecks-ci-jobs.yml +++ b/jjb/bottlenecks/bottlenecks-ci-jobs.yml @@ -35,22 +35,22 @@ pod: #compass CI PODs - baremetal: - slave-label: compass-baremetal + slave-label: compass-baremetal-master installer: compass auto-trigger-name: 'daily-trigger-disabled' <<: *master - virtual: - slave-label: compass-virtual + slave-label: compass-virtual-master installer: compass auto-trigger-name: 'daily-trigger-disabled' <<: *master - baremetal: - slave-label: compass-baremetal + slave-label: compass-baremetal-branch installer: compass auto-trigger-name: 'daily-trigger-disabled' <<: *danube - virtual: - slave-label: compass-virtual + slave-label: compass-virtual-branch installer: compass auto-trigger-name: 'daily-trigger-disabled' <<: *danube @@ -70,8 +70,6 @@ # <<: *master #-------------------------------------------- suite: - - 'rubbos' - - 'vstf' - 'posca_stress_traffic' - 'posca_stress_ping' @@ -130,7 +128,8 @@ publishers: - email: - recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com liangqi1@huawei.com sunshine.wang@huawei.com + recipients: gabriel.yuyang@huawei.com, liyin11@huawei.com + - email-jenkins-admins-on-failure ######################## # builder macros @@ -152,25 +151,33 @@ #################### - parameter: - name: 'bottlenecks-params-compass-baremetal' + name: 'bottlenecks-params-compass-baremetal-master' parameters: - string: name: BOTTLENECKS_DB_TARGET - default: '104.197.68.199:8086' + default: 'http://testresults.opnfv.org/test/api/v1/results' description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'bottlenecks-params-compass-virtual' + name: 'bottlenecks-params-compass-virtual-master' parameters: - string: name: BOTTLENECKS_DB_TARGET - default: '' + default: 'http://testresults.opnfv.org/test/api/v1/results' description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'bottlenecks-params-orange-pod2' + name: 'bottlenecks-params-compass-baremetal-branch' parameters: - string: name: BOTTLENECKS_DB_TARGET - default: '104.197.68.199:8086' + default: 'http://testresults.opnfv.org/test/api/v1/results' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'bottlenecks-params-compass-virtual-branch' + parameters: + - string: + name: BOTTLENECKS_DB_TARGET + default: 'http://testresults.opnfv.org/test/api/v1/results' description: 'Arguments to use in order to choose the backend DB' diff --git a/jjb/bottlenecks/bottlenecks-cleanup.sh b/jjb/bottlenecks/bottlenecks-cleanup.sh index 04e620c7f..d0e2088c7 100644 --- a/jjb/bottlenecks/bottlenecks-cleanup.sh +++ b/jjb/bottlenecks/bottlenecks-cleanup.sh @@ -10,6 +10,7 @@ #clean up correlated dockers and their images bash $WORKSPACE/docker/docker_cleanup.sh -d bottlenecks --debug +bash $WORKSPACE/docker/docker_cleanup.sh -d Bottlenecks --debug bash $WORKSPACE/docker/docker_cleanup.sh -d yardstick --debug bash $WORKSPACE/docker/docker_cleanup.sh -d kibana --debug bash $WORKSPACE/docker/docker_cleanup.sh -d elasticsearch --debug diff --git a/jjb/bottlenecks/bottlenecks-run-suite.sh b/jjb/bottlenecks/bottlenecks-run-suite.sh index e6f8d1ba5..6bab0e4d2 100644 --- a/jjb/bottlenecks/bottlenecks-run-suite.sh +++ b/jjb/bottlenecks/bottlenecks-run-suite.sh @@ -1,66 +1,79 @@ #!/bin/bash +############################################################################## +# Copyright (c) 2017 Huawei Technologies Co.,Ltd and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + #set -e [[ $GERRIT_REFSPEC_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null" BOTTLENECKS_IMAGE=opnfv/bottlenecks REPORT="True" -if [[ $SUITE_NAME == rubbos || $SUITE_NAME == vstf ]]; then - echo "Bottlenecks: to pull image $BOTTLENECKS_IMAGE:${DOCKER_TAG}" - docker pull $BOTTLENECKS_IMAGE:$DOCKER_TAG >${redirect} +RELENG_REPO=${WORKSPACE}/releng +[ -d ${RELENG_REPO} ] && rm -rf ${RELENG_REPO} +git clone https://gerrit.opnfv.org/gerrit/releng ${RELENG_REPO} >${redirect} - echo "Bottlenecks: docker start running" - opts="--privileged=true -id" - envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \ - -e NODE_NAME=${NODE_NAME} -e EXTERNAL_NET=${EXTERNAL_NETWORK} \ - -e BOTTLENECKS_BRANCH=${BOTTLENECKS_BRANCH} -e GERRIT_REFSPEC_DEBUG=${GERRIT_REFSPEC_DEBUG} \ - -e BOTTLENECKS_DB_TARGET=${BOTTLENECKS_DB_TARGET} -e PACKAGE_URL=${PACKAGE_URL}" - cmd="sudo docker run ${opts} ${envs} $BOTTLENECKS_IMAGE:${DOCKER_TAG} /bin/bash" - echo "Bottlenecks: docker cmd running ${cmd}" - ${cmd} >${redirect} +OPENRC=/tmp/admin_rc.sh +OS_CACERT=/tmp/os_cacert + +if [[ $SUITE_NAME == *posca* ]]; then + POSCA_SCRIPT=/home/opnfv/bottlenecks/testsuites/posca + + echo "BOTTLENECKS INFO: fetching os credentials from $INSTALLER_TYPE" + if [[ $INSTALLER_TYPE == 'compass' ]]; then + if [[ ${BRANCH} == 'master' ]]; then + ${RELENG_REPO}/utils/fetch_os_creds.sh -d ${OPENRC} -i ${INSTALLER_TYPE} -a ${INSTALLER_IP} -o ${OS_CACERT} >${redirect} + if [[ -f ${OS_CACERT} ]]; then + echo "BOTTLENECKS INFO: successfully fetching os_cacert for openstack: ${OS_CACERT}" + else + echo "BOTTLENECKS ERROR: couldn't find os_cacert file: ${OS_CACERT}, please check if the it's been properly provided." + exit 1 + fi + else + ${RELENG_REPO}/utils/fetch_os_creds.sh -d ${OPENRC} -i ${INSTALLER_TYPE} -a ${INSTALLER_IP} >${redirect} + fi + fi - echo "Bottlenecks: obtain docker id" - container_id=$(docker ps | grep "$BOTTLENECKS_IMAGE:${DOCKER_TAG}" | awk '{print $1}' | head -1) - if [ -z ${container_id} ]; then - echo "Cannot find $BOTTLENECKS_IMAGE container ID ${container_id}. Please check if it exists." - docker ps -a + if [[ -f ${OPENRC} ]]; then + echo "BOTTLENECKS INFO: openstack credentials path is ${OPENRC}" + if [[ $INSTALLER_TYPE == 'compass' && ${BRANCH} == 'master' ]]; then + echo "BOTTLENECKS INFO: writing ${OS_CACERT} to ${OPENRC}" + echo "export OS_CACERT=${OS_CACERT}" >> ${OPENRC} + fi + cat ${OPENRC} + else + echo "BOTTLENECKS ERROR: couldn't find openstack rc file: ${OPENRC}, please check if the it's been properly provided." exit 1 fi - echo "Bottlenecks: to prepare openstack environment" - prepare_env="${REPO_DIR}/ci/prepare_env.sh" - echo "Bottlenecks: docker cmd running: ${prepare_env}" - sudo docker exec ${container_id} ${prepare_env} + echo "INFO: pulling Bottlenecks docker ${DOCKER_TAG}" + docker pull opnfv/bottlenecks:${DOCKER_TAG} >$redirect - echo "Bottlenecks: to run testsuite ${SUITE_NAME}" - run_testsuite="${REPO_DIR}/run_tests.sh -s ${SUITE_NAME}" - echo "Bottlenecks: docker cmd running: ${run_testsuite}" - sudo docker exec ${container_id} ${run_testsuite} -else - echo "Bottlenecks: installing POSCA docker-compose" - if [ -d usr/local/bin/docker-compose ]; then - rm -rf usr/local/bin/docker-compose - fi - curl -L https://github.com/docker/compose/releases/download/1.11.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose - chmod +x /usr/local/bin/docker-compose + opts="--privileged=true -id" + envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \ + -e NODE_NAME=${NODE_NAME} -e EXTERNAL_NET=${EXTERNAL_NETWORK} \ + -e BRANCH=${BRANCH} -e GERRIT_REFSPEC_DEBUG=${GERRIT_REFSPEC_DEBUG} \ + -e BOTTLENECKS_DB_TARGET=${BOTTLENECKS_DB_TARGET} -e PACKAGE_URL=${PACKAGE_URL} \ + -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO}" + docker_volume="-v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp" - echo "Bottlenecks: composing up dockers" - cd $WORKSPACE - docker-compose -f $WORKSPACE/docker/bottleneck-compose/docker-compose.yml up -d + cmd="docker run ${opts} ${envs} --name bottlenecks-load-master ${docker_volume} opnfv/bottlenecks:${DOCKER_TAG} /bin/bash" + echo "BOTTLENECKS INFO: running docker run commond: ${cmd}" + ${cmd} >$redirect + sleep 5 - echo "Bottlenecks: running traffic stress/factor testing in posca testsuite " - POSCA_SCRIPT=/home/opnfv/bottlenecks/testsuites/posca if [[ $SUITE_NAME == posca_stress_traffic ]]; then TEST_CASE=posca_factor_system_bandwidth - echo "Bottlenecks: pulling tutum/influxdb for yardstick" - docker pull tutum/influxdb:0.13 - sleep 5 - docker exec bottleneckcompose_bottlenecks_1 python ${POSCA_SCRIPT}/run_posca.py testcase $TEST_CASE $REPORT + testcase_cmd="docker exec bottlenecks-load-master python ${POSCA_SCRIPT}/../run_testsuite.py testcase $TEST_CASE $REPORT" + echo "BOTTLENECKS INFO: running test case ${TEST_CASE} with report indicator: ${testcase_cmd}" + ${testcase_cmd} >$redirect elif [[ $SUITE_NAME == posca_stress_ping ]]; then TEST_CASE=posca_factor_ping - sleep 5 - docker exec bottleneckcompose_bottlenecks_1 python ${POSCA_SCRIPT}/run_posca.py testcase $TEST_CASE $REPORT + testcase_cmd="docker exec bottlenecks-load-master python ${POSCA_SCRIPT}/../run_testsuite.py testcase $TEST_CASE $REPORT" + echo "BOTTLENECKS INFO: running test case ${TEST_CASE} with report indicator: ${testcase_cmd}" + ${testcase_cmd} >$redirect fi - - echo "Bottlenecks: cleaning up docker-compose images and dockers" - docker-compose -f $WORKSPACE/docker/bottleneck-compose/docker-compose.yml down --rmi all -fi
\ No newline at end of file +fi diff --git a/jjb/ci_gate_security/anteater-report-to-gerrit.sh b/jjb/ci_gate_security/anteater-report-to-gerrit.sh index fc3018fb4..00a78ceba 100644 --- a/jjb/ci_gate_security/anteater-report-to-gerrit.sh +++ b/jjb/ci_gate_security/anteater-report-to-gerrit.sh @@ -12,14 +12,14 @@ if [[ -e securityaudit.log ]] ; then if grep ERROR securityaudit.log; then EXITSTATUS=1 fi - - cat securityaudit.log | awk -F"ERROR - " '{print $2}' > shortlog - + + cat securityaudit.log | awk -F"ERROR - " '{print $2}' | sed -e "s/\"/\\\\\"/g;s/\'/\\\\\'/g"> shortlog + ssh -p 29418 gerrit.opnfv.org \ "gerrit review -p $GERRIT_PROJECT \ -m \"$(cat shortlog)\" \ $GERRIT_PATCHSET_REVISION \ --notify NONE" - + exit $EXITSTATUS fi diff --git a/jjb/ci_gate_security/anteater-security-audit.sh b/jjb/ci_gate_security/anteater-security-audit.sh index 9bd3cc34f..35f9354e0 100644 --- a/jjb/ci_gate_security/anteater-security-audit.sh +++ b/jjb/ci_gate_security/anteater-security-audit.sh @@ -1,5 +1,7 @@ #!/bin/bash cd $WORKSPACE +REPORTDIR='.reports' +mkdir -p $REPORTDIR echo "Generating patchset file to list changed files" git diff HEAD^1 --name-only | sed "s#^#/home/opnfv/anteater/$PROJECT/#" > $WORKSPACE/patchset echo "Changed files are" @@ -7,7 +9,7 @@ echo "--------------------------------------------------------" cat $WORKSPACE/patchset echo "--------------------------------------------------------" -vols="-v $WORKSPACE:/home/opnfv/anteater/$PROJECT" +vols="-v $WORKSPACE:/home/opnfv/anteater/$PROJECT -v $WORKSPACE/$REPORTDIR:/home/opnfv/anteater/$REPORTDIR" envs="-e PROJECT=$PROJECT" echo "Pulling releng-anteater docker image" diff --git a/jjb/ci_gate_security/opnfv-ci-gate-security.yml b/jjb/ci_gate_security/opnfv-ci-gate-security.yml index d991573b0..55d629cb4 100644 --- a/jjb/ci_gate_security/opnfv-ci-gate-security.yml +++ b/jjb/ci_gate_security/opnfv-ci-gate-security.yml @@ -93,6 +93,10 @@ builders: - anteater-security-audit - report-security-audit-result-to-gerrit + publishers: + - archive-artifacts: + artifacts: ".reports/*" + ######################## # builder macros ######################## diff --git a/jjb/compass4nfv/compass-ci-jobs.yml b/jjb/compass4nfv/compass-ci-jobs.yml index 310347de2..4c12f199e 100644 --- a/jjb/compass4nfv/compass-ci-jobs.yml +++ b/jjb/compass4nfv/compass-ci-jobs.yml @@ -362,7 +362,7 @@ - trigger: name: 'compass-os-odl_l2-nofeature-ha-baremetal-centos-master-trigger' triggers: - - timed: '0 23 * * *' + - timed: '' - trigger: name: 'compass-os-odl_l3-nofeature-ha-baremetal-centos-master-trigger' triggers: @@ -411,7 +411,7 @@ - trigger: name: 'compass-os-odl_l2-nofeature-ha-baremetal-master-trigger' triggers: - - timed: '0 22 * * *' + - timed: '' - trigger: name: 'compass-os-odl_l3-nofeature-ha-baremetal-master-trigger' triggers: @@ -431,7 +431,7 @@ - trigger: name: 'compass-os-odl_l2-moon-ha-baremetal-master-trigger' triggers: - - timed: '' + - timed: '0 12 * * *' - trigger: name: 'compass-os-nosdn-kvm-ha-baremetal-master-trigger' triggers: @@ -443,7 +443,7 @@ - trigger: name: 'compass-k8-nosdn-nofeature-ha-baremetal-master-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' - trigger: name: 'compass-os-odl-sfc-ha-baremetal-master-trigger' triggers: @@ -511,7 +511,7 @@ - trigger: name: 'compass-os-odl_l2-nofeature-ha-virtual-master-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' - trigger: name: 'compass-os-odl_l3-nofeature-ha-virtual-master-trigger' triggers: @@ -531,7 +531,7 @@ - trigger: name: 'compass-os-odl_l2-moon-ha-virtual-master-trigger' triggers: - - timed: '' + - timed: '0 22 * * *' - trigger: name: 'compass-os-nosdn-kvm-ha-virtual-master-trigger' triggers: @@ -543,7 +543,7 @@ - trigger: name: 'compass-k8-nosdn-nofeature-ha-virtual-master-trigger' triggers: - - timed: '0 18 * * *' + - timed: '' - trigger: name: 'compass-os-odl-sfc-ha-virtual-master-trigger' triggers: diff --git a/jjb/compass4nfv/compass-verify-jobs.yml b/jjb/compass4nfv/compass-verify-jobs.yml index f016b91c7..ee91e02da 100644 --- a/jjb/compass4nfv/compass-verify-jobs.yml +++ b/jjb/compass4nfv/compass-verify-jobs.yml @@ -158,15 +158,17 @@ projects: - name: 'functest-compass-virtual-suite-{stream}' current-parameters: false - predefined-parameters: + predefined-parameters: | FUNCTEST_SUITE_NAME=healthcheck + DEPLOY_SCENARIO=os-nosdn-nofeature-ha node-parameters: true kill-phase-on: NEVER abort-all-job: true - name: 'functest-compass-virtual-suite-{stream}' current-parameters: false - predefined-parameters: + predefined-parameters: | FUNCTEST_SUITE_NAME=vping_ssh + DEPLOY_SCENARIO=os-nosdn-nofeature-ha node-parameters: true kill-phase-on: NEVER abort-all-job: true diff --git a/jjb/daisy4nfv/daisy-daily-jobs.yml b/jjb/daisy4nfv/daisy-daily-jobs.yml index 592e54dc5..6524d2051 100644 --- a/jjb/daisy4nfv/daisy-daily-jobs.yml +++ b/jjb/daisy4nfv/daisy-daily-jobs.yml @@ -46,10 +46,10 @@ - 'os-nosdn-nofeature-noha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' # ODL_L3 scenarios - - 'os-odl_l3-nofeature-noha': + - 'os-odl_l3-nofeature-ha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' # ODL_L2 scenarios - - 'os-odl_l2-nofeature-noha': + - 'os-odl_l2-nofeature-ha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' jobs: @@ -150,7 +150,7 @@ installer: '{installer}' - string: name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' + default: 'os-nosdn-nofeature-ha' - 'daisy-project-parameter': gs-pathname: '{gs-pathname}' - string: @@ -184,20 +184,20 @@ - trigger: name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '' + - timed: '0 12 * * *' # NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-master-trigger' triggers: - - timed: 'H 12 * * *' + - timed: '' # ODL_L3 Scenarios - trigger: - name: 'daisy-os-odl_l3-nofeature-noha-baremetal-daily-master-trigger' + name: 'daisy-os-odl_l3-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: 'H 16 * * *' + - timed: '0 16 * * *' # ODL_L2 Scenarios - trigger: - name: 'daisy-os-odl_l2-nofeature-noha-baremetal-daily-master-trigger' + name: 'daisy-os-odl_l2-nofeature-ha-baremetal-daily-master-trigger' triggers: - timed: '' #----------------------------------------------- @@ -206,20 +206,20 @@ - trigger: name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-master-trigger' triggers: - - timed: '' + - timed: '0 12 * * *' # NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-master-trigger' triggers: - - timed: 'H 12 * * *' + - timed: '' # ODL_L3 Scenarios - trigger: - name: 'daisy-os-odl_l3-nofeature-noha-virtual-daily-master-trigger' + name: 'daisy-os-odl_l3-nofeature-ha-virtual-daily-master-trigger' triggers: - - timed: 'H 16 * * *' + - timed: '0 16 * * *' # ODL_L3 Scenarios - trigger: - name: 'daisy-os-odl_l2-nofeature-noha-virtual-daily-master-trigger' + name: 'daisy-os-odl_l2-nofeature-ha-virtual-daily-master-trigger' triggers: - timed: '' diff --git a/jjb/daisy4nfv/daisy-project-jobs.yml b/jjb/daisy4nfv/daisy-project-jobs.yml index 57e44e314..fd0da7928 100644 --- a/jjb/daisy4nfv/daisy-project-jobs.yml +++ b/jjb/daisy4nfv/daisy-project-jobs.yml @@ -125,6 +125,7 @@ publishers: - '{installer}-recipients' + - email-jenkins-admins-on-failure - job-template: name: '{installer}-{phase}-daily-{stream}' @@ -161,7 +162,7 @@ description: 'Git URL to use on this Jenkins Slave' - string: name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-noha' + default: 'os-nosdn-nofeature-ha' - '{installer}-project-parameter': gs-pathname: '{gs-pathname}' @@ -209,6 +210,7 @@ publishers: - email: recipients: hu.zhijiang@zte.com.cn lu.yao135@zte.com.cn zhou.ya@zte.com.cn yangyang1@zte.com.cn julienjut@gmail.com + - email-jenkins-admins-on-failure - parameter: name: 'daisy-project-parameter' diff --git a/jjb/doctor/doctor.yml b/jjb/doctor/doctor.yml index c6b2cb6d0..afde9efe8 100644 --- a/jjb/doctor/doctor.yml +++ b/jjb/doctor/doctor.yml @@ -114,6 +114,7 @@ - '{auto-trigger-name}': project: '{project}' branch: '{branch}' + files: 'tests/**' builders: - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh" @@ -179,6 +180,7 @@ - '{auto-trigger-name}': project: '{project}' branch: '{branch}' + files: 'tests/**' builders: - 'clean-workspace-log' @@ -206,6 +208,7 @@ artifacts: 'tests/*.log' - archive: artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log' + - email-jenkins-admins-on-failure ##################################### @@ -234,7 +237,7 @@ branch-pattern: '**/{branch}' file-paths: - compare-type: ANT - pattern: 'tests/**' + pattern: '{files}' skip-vote: successful: true failed: true diff --git a/jjb/dovetail/dovetail-ci-jobs.yml b/jjb/dovetail/dovetail-ci-jobs.yml index bcda2b7ca..3f130c9e7 100644 --- a/jjb/dovetail/dovetail-ci-jobs.yml +++ b/jjb/dovetail/dovetail-ci-jobs.yml @@ -25,7 +25,7 @@ branch: 'stable/{stream}' dovetail-branch: master gs-pathname: '/{stream}' - docker-tag: 'cvp.0.3.0' + docker-tag: 'cvp.0.4.0' #----------------------------------- # POD, PLATFORM, AND BRANCH MAPPING @@ -257,6 +257,7 @@ artifacts: 'results/**/*' allow-empty: true fingerprint: true + - email-jenkins-admins-on-failure #-------------------------- # builder macros diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh index bf96fd492..a078c8f59 100755 --- a/jjb/dovetail/dovetail-run.sh +++ b/jjb/dovetail/dovetail-run.sh @@ -83,6 +83,8 @@ if [[ ${INSTALLER_TYPE} == compass ]]; then options="-u root -p root" elif [[ ${INSTALLER_TYPE} == fuel ]]; then options="-u root -p r00tme" +elif [[ ${INSTALLER_TYPE} == apex ]]; then + options="-u stack -k /root/.ssh/id_rsa" else echo "Don't support to generate pod.yaml on ${INSTALLER_TYPE} currently." echo "HA test cases may not run properly." @@ -115,6 +117,11 @@ if [ "$INSTALLER_TYPE" == "fuel" ]; then sshpass -p r00tme sudo scp $ssh_options root@${INSTALLER_IP}:~/.ssh/id_rsa ${DOVETAIL_CONFIG}/id_rsa fi +if [ "$INSTALLER_TYPE" == "apex" ]; then + echo "Fetching id_rsa file from jump_server $INSTALLER_IP..." + sudo scp $ssh_options stack@${INSTALLER_IP}:~/.ssh/id_rsa ${DOVETAIL_CONFIG}/id_rsa +fi + # sdnvpn test case needs to download this image first before running echo "Download image ubuntu-16.04-server-cloudimg-amd64-disk1.img ..." wget -q -nc http://artifacts.opnfv.org/sdnvpn/ubuntu-16.04-server-cloudimg-amd64-disk1.img -P ${DOVETAIL_CONFIG} @@ -163,5 +170,8 @@ sudo cp -r ${DOVETAIL_HOME}/results ./ # PRIMARY_GROUP=$(id -gn $CURRENT_USER) # sudo chown -R ${CURRENT_USER}:${PRIMARY_GROUP} ${WORKSPACE}/results +#remove useless workspace from yardstick to save disk space +sudo rm -rf ./results/workspace + echo "Dovetail: done!" diff --git a/jjb/dovetail/dovetail-weekly-jobs.yml b/jjb/dovetail/dovetail-weekly-jobs.yml index 700657d68..11904cbcd 100644 --- a/jjb/dovetail/dovetail-weekly-jobs.yml +++ b/jjb/dovetail/dovetail-weekly-jobs.yml @@ -120,6 +120,7 @@ artifacts: 'results/**/*' allow-empty: true fingerprint: true + - email-jenkins-admins-on-failure ######################## # builder macros diff --git a/jjb/fuel/fuel-daily-jobs.yml b/jjb/fuel/fuel-daily-jobs.yml index 7a57cb554..4b2f8e9cc 100644 --- a/jjb/fuel/fuel-daily-jobs.yml +++ b/jjb/fuel/fuel-daily-jobs.yml @@ -15,10 +15,10 @@ branch: '{stream}' disabled: false gs-pathname: '' - danube: &danube - stream: danube + euphrates: &euphrates + stream: euphrates branch: 'stable/{stream}' - disabled: false + disabled: true gs-pathname: '/{stream}' #-------------------------------- # POD, INSTALLER, AND BRANCH MAPPING @@ -34,28 +34,25 @@ <<: *master - baremetal: slave-label: fuel-baremetal - <<: *danube + <<: *euphrates - virtual: slave-label: fuel-virtual - <<: *danube + <<: *euphrates #-------------------------------- # None-CI PODs #-------------------------------- - zte-pod1: slave-label: zte-pod1 <<: *master - - zte-pod2: - slave-label: zte-pod2 - <<: *master - zte-pod3: slave-label: zte-pod3 <<: *master - zte-pod1: slave-label: zte-pod1 - <<: *danube + <<: *euphrates - zte-pod3: slave-label: zte-pod3 - <<: *danube + <<: *euphrates #-------------------------------- # scenarios #-------------------------------- @@ -211,7 +208,7 @@ build-step-failure-threshold: 'never' failure-threshold: 'never' unstable-threshold: 'FAILURE' - # ZTE pod1 weekly(Sunday), os-odl_l2-nofeature-ha, run against master and danube + # ZTE pod1 weekly(Sunday), os-odl_l2-nofeature-ha, run against master and euphrates - conditional-step: condition-kind: and condition-operands: @@ -242,6 +239,7 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure - job-template: name: 'fuel-deploy-{pod}-daily-{stream}' @@ -301,6 +299,7 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure ######################## # parameter macros @@ -421,96 +420,96 @@ triggers: - timed: '' #----------------------------------------------- -# Triggers for job running on fuel-baremetal against danube branch +# Triggers for job running on fuel-baremetal against euphrates branch #----------------------------------------------- # HA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' # '0 20 * * *' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 23 * * *' + - timed: '' # '0 23 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 2 * * *' + - timed: '' # '0 2 * * *' - trigger: - name: 'fuel-os-onos-sfc-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-baremetal-daily-euphrates-trigger' triggers: - timed: '' # '0 5 * * *' - trigger: - name: 'fuel-os-onos-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - timed: '' # '0 8 * * *' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 11 * * *' + - timed: '' # '0 11 * * *' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 14 * * *' + - timed: '' # '0 14 * * *' - trigger: - name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 17 * * *' + - timed: '' # '0 17 * * *' - trigger: - name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' # '0 20 * * *' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 12 * * *' + - timed: '' # '0 12 * * *' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 8 * * *' + - timed: '' # '0 8 * * *' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' #----------------------------------------------- @@ -606,97 +605,97 @@ triggers: - timed: '' # '30 20 * * *' #----------------------------------------------- -# Triggers for job running on fuel-virtual against danube branch +# Triggers for job running on fuel-virtual against euphrates branch #----------------------------------------------- - trigger: - name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-ha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 13 * * *' + - timed: '' # '0 13 * * *' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '30 15 * * *' + - timed: '' # '30 15 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 18 * * *' + - timed: '' # '0 18 * * *' - trigger: - name: 'fuel-os-onos-sfc-noha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-virtual-daily-euphrates-trigger' triggers: - timed: '' # '30 20 * * *' - trigger: - name: 'fuel-os-onos-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - timed: '' # '0 23 * * *' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '30 1 * * *' + - timed: '' # '30 1 * * *' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 4 * * *' + - timed: '' # '0 4 * * *' - trigger: - name: 'fuel-os-nosdn-kvm-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '30 6 * * *' + - timed: '' # '30 6 * * *' - trigger: - name: 'fuel-os-nosdn-ovs-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 9 * * *' + - timed: '' # '0 9 * * *' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 16 * * *' + - timed: '' # '0 16 * * *' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' # '0 20 * * *' #----------------------------------------------- # ZTE POD1 Triggers running against master branch #----------------------------------------------- @@ -735,7 +734,7 @@ - trigger: name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger' triggers: - - timed: '' + - timed: '0 18 * * *' - trigger: name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-master-trigger' triggers: @@ -789,106 +788,13 @@ name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-master-trigger' triggers: - timed: '' - -#----------------------------------------------- -# ZTE POD2 Triggers running against master branch -#----------------------------------------------- -- trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -# NOHA Scenarios -- trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' #----------------------------------------------- # ZTE POD3 Triggers running against master branch #----------------------------------------------- - trigger: name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-master-trigger' triggers: - - timed: '' + - timed: '0 10 * * *' - trigger: name: 'fuel-os-odl_l2-nofeature-ha-zte-pod3-daily-master-trigger' triggers: @@ -916,7 +822,7 @@ - trigger: name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-master-trigger' triggers: - - timed: '0 10 * * *' + - timed: '' - trigger: name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-master-trigger' triggers: @@ -975,279 +881,186 @@ triggers: - timed: '' #----------------------------------------------- -# ZTE POD1 Triggers running against danube branch -#----------------------------------------------- -- trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '0 2 * * *' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -# NOHA Scenarios -- trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' - -#----------------------------------------------- -# ZTE POD2 Triggers running against danube branch +# ZTE POD1 Triggers running against euphrates branch #----------------------------------------------- - trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - - timed: '' + - timed: '' # '0 2 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' #----------------------------------------------- -# ZTE POD3 Triggers running against danube branch +# ZTE POD3 Triggers running against euphrates branch #----------------------------------------------- - trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - - timed: '0 18 * * *' + - timed: '' # '0 18 * * *' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-euphrates-trigger' triggers: - - timed: '0 2 * * *' + - timed: '' # '0 2 * * *' - trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l2-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l3-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l2-sfc-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh index 2fb5c71e4..29b173ae5 100755 --- a/jjb/fuel/fuel-deploy.sh +++ b/jjb/fuel/fuel-deploy.sh @@ -33,7 +33,7 @@ fi # set deployment parameters export TMPDIR=$HOME/tmpdir -BRIDGE=${BRIDGE:-pxebr} +BRIDGE=${BRIDGE:-,,,} LAB_NAME=${NODE_NAME/-*} POD_NAME=${NODE_NAME/*-} @@ -69,7 +69,7 @@ FUEL_LOG_FILENAME="${JOB_NAME}_${BUILD_NUMBER}.log.tar.gz" # construct the command DEPLOY_COMMAND="sudo $WORKSPACE/ci/deploy.sh -b file://$WORKSPACE/securedlab \ -l $LAB_NAME -p $POD_NAME -s $DEPLOY_SCENARIO -i file://$WORKSPACE/opnfv.iso \ - -H -B $BRIDGE -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME" + -B $BRIDGE -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME" # log info to console echo "Deployment parameters" diff --git a/jjb/fuel/fuel-project-jobs.yml b/jjb/fuel/fuel-project-jobs.yml index 1f0ddd363..6bb7e51d0 100644 --- a/jjb/fuel/fuel-project-jobs.yml +++ b/jjb/fuel/fuel-project-jobs.yml @@ -13,10 +13,10 @@ branch: '{stream}' gs-pathname: '' disabled: false - - danube: + - euphrates: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true jobs: - 'fuel-build-daily-{stream}' @@ -79,6 +79,7 @@ publishers: - email: recipients: fzhadaev@mirantis.com + - email-jenkins-admins-on-failure - job-template: name: 'fuel-merge-build-{stream}' @@ -211,6 +212,7 @@ publishers: - email: recipients: fzhadaev@mirantis.com + - email-jenkins-admins-on-failure - job-template: name: 'fuel-deploy-generic-daily-{stream}' diff --git a/jjb/fuel/fuel-verify-jobs.yml b/jjb/fuel/fuel-verify-jobs.yml index 549f7dafa..469ca9258 100644 --- a/jjb/fuel/fuel-verify-jobs.yml +++ b/jjb/fuel/fuel-verify-jobs.yml @@ -12,10 +12,10 @@ branch: '{stream}' gs-pathname: '' disabled: false - - danube: + - euphrates: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true ##################################### # patch verification phases ##################################### diff --git a/jjb/fuel/fuel-weekly-jobs.yml b/jjb/fuel/fuel-weekly-jobs.yml index bd42ed85c..57e36e164 100644 --- a/jjb/fuel/fuel-weekly-jobs.yml +++ b/jjb/fuel/fuel-weekly-jobs.yml @@ -15,10 +15,10 @@ branch: '{stream}' disabled: false gs-pathname: '' - danube: &danube - stream: danube + euphrates: &euphrates + stream: euphrates branch: 'stable/{stream}' - disabled: false + disabled: true gs-pathname: '/{stream}' #-------------------------------- # POD, INSTALLER, AND BRANCH MAPPING @@ -34,10 +34,10 @@ <<: *master - baremetal: slave-label: fuel-baremetal - <<: *danube + <<: *euphrates - virtual: slave-label: fuel-virtual - <<: *danube + <<: *euphrates #-------------------------------- # scenarios #-------------------------------- @@ -119,6 +119,7 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure - job-template: name: 'fuel-deploy-{pod}-weekly-{stream}' @@ -178,6 +179,7 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure ######################## # parameter macros diff --git a/jjb/functest/functest-alpine.sh b/jjb/functest/functest-alpine.sh index 512a01edc..9084ccaa7 100644 --- a/jjb/functest/functest-alpine.sh +++ b/jjb/functest/functest-alpine.sh @@ -64,7 +64,7 @@ if [[ ${INSTALLER_TYPE} == 'compass' && ${DEPLOY_SCENARIO} == *'os-nosdn-openo-h envs=${env}" -e OPENO_MSB_ENDPOINT=${openo_msb_endpoint}" fi -volumes="${images_vol} ${results_vol} ${sshkey_vol} ${rc_file_vol}" +volumes="${images_vol} ${results_vol} ${sshkey_vol} ${rc_file_vol} ${cacert_file_vol}" tiers=(healthcheck smoke) diff --git a/jjb/functest/functest-project-jobs.yml b/jjb/functest/functest-project-jobs.yml index 353423d59..1966e52de 100644 --- a/jjb/functest/functest-project-jobs.yml +++ b/jjb/functest/functest-project-jobs.yml @@ -80,6 +80,7 @@ healthy: 50 unhealthy: 40 failing: 30 + - email-jenkins-admins-on-failure - job-template: name: 'functest-docs-upload-{stream}' diff --git a/jjb/global/installer-params.yml b/jjb/global/installer-params.yml index 5e07a11f9..17101ed76 100644 --- a/jjb/global/installer-params.yml +++ b/jjb/global/installer-params.yml @@ -55,8 +55,8 @@ description: 'external network for test' - string: name: BRIDGE - default: 'pxebr' - description: 'pxe bridge for booting of Fuel master' + default: ',,,' + description: 'Bridge(s) to be used by salt master' - parameter: name: 'joid-defaults' diff --git a/jjb/global/releng-macros.yml b/jjb/global/releng-macros.yml index 92199d6e7..89a38029e 100644 --- a/jjb/global/releng-macros.yml +++ b/jjb/global/releng-macros.yml @@ -150,7 +150,7 @@ branch-pattern: '**/{branch}' file-paths: - compare-type: 'ANT' - pattern: 'tests/**' + pattern: '{files}' skip-vote: successful: true failed: true diff --git a/jjb/global/slave-params.yml b/jjb/global/slave-params.yml index 7a257f162..375468f83 100644 --- a/jjb/global/slave-params.yml +++ b/jjb/global/slave-params.yml @@ -679,6 +679,20 @@ default: 'br0' description: 'pxe bridge for booting of Fuel master' - parameter: + name: zte-pod4-defaults + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - zte-pod4 + default-slaves: + - zte-pod4 + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' +- parameter: name: 'juniper-pod1-defaults' parameters: - node: diff --git a/jjb/joid/joid-daily-jobs.yml b/jjb/joid/joid-daily-jobs.yml index 1ff260ac8..1c7b8cd0d 100644 --- a/jjb/joid/joid-daily-jobs.yml +++ b/jjb/joid/joid-daily-jobs.yml @@ -70,6 +70,8 @@ auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger' - 'k8-ovn-lb-noha': auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger' + - 'os-nosdn-openbaton-ha': + auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger' jobs: - 'joid-{scenario}-{pod}-daily-{stream}' @@ -400,3 +402,21 @@ name: 'joid-k8-ovn-lb-noha-cengn-pod1-master-trigger' triggers: - timed: '' + +# os-nosdn-openbaton-ha trigger - branch: master +- trigger: + name: 'joid-os-nosdn-openbaton-ha-baremetal-master-trigger' + triggers: + - timed: '5 25 * * *' +- trigger: + name: 'joid-os-nosdn-openbaton-ha-virtual-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'joid-os-nosdn-openbaton-ha-orange-pod1-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'joid-os-nosdn-openbaton-ha-cengn-pod1-master-trigger' + triggers: + - timed: '' diff --git a/jjb/kvmfornfv/kvmfornfv.yml b/jjb/kvmfornfv/kvmfornfv.yml index e5b56bf9b..a39249ad2 100644 --- a/jjb/kvmfornfv/kvmfornfv.yml +++ b/jjb/kvmfornfv/kvmfornfv.yml @@ -26,6 +26,7 @@ testname: - 'cyclictest' - 'packet_forward' + - 'livemigration' ##################################### # patch verification phases ##################################### @@ -236,6 +237,17 @@ git-revision: true kill-phase-on: FAILURE abort-all-job: true + - multijob: + name: livemigration-test + condition: SUCCESSFUL + projects: + - name: 'kvmfornfv-livemigration-daily-test-{stream}' + current-parameters: false + node-parameters: false + git-revision: true + kill-phase-on: FAILURE + abort-all-job: true + - job-template: name: 'kvmfornfv-daily-build-{stream}' @@ -344,6 +356,14 @@ !include-raw: ./kvmfornfv-download-artifact.sh - shell: !include-raw: ./kvmfornfv-test.sh +- builder: + name: 'kvmfornfv-livemigration-daily-test-macro' + builders: + - shell: + !include-raw: ./kvmfornfv-download-artifact.sh + - shell: + !include-raw: ./kvmfornfv-test.sh + ##################################### # parameter macros ##################################### diff --git a/jjb/multisite/fuel-deploy-for-multisite.sh b/jjb/multisite/fuel-deploy-for-multisite.sh index 71c6cc11d..827e5c28d 100755 --- a/jjb/multisite/fuel-deploy-for-multisite.sh +++ b/jjb/multisite/fuel-deploy-for-multisite.sh @@ -46,7 +46,7 @@ curl -L -s -o $WORKSPACE/opnfv.iso http://$OPNFV_ARTIFACT_URL > gsutil.iso.log 2 # set deployment parameters DEPLOY_SCENARIO="os-nosdn-nofeature-noha" export TMPDIR=$HOME/tmpdir -BRIDGE=${BRIDGE:-pxebr} +BRIDGE=${BRIDGE:-,,,} LAB_NAME=${NODE_NAME/-*} POD_NAME=${NODE_NAME/*-} @@ -89,7 +89,7 @@ FUEL_LOG_FILENAME="${JOB_NAME}_${BUILD_NUMBER}.log.tar.gz" # construct the command DEPLOY_COMMAND="sudo $WORKSPACE/fuel/ci/deploy.sh -b file://$WORKSPACE/securedlab \ -l $LAB_NAME -p $POD_NAME -s $DEPLOY_SCENARIO -i file://$WORKSPACE/opnfv.iso \ - -H -B $BRIDGE -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME" + -B $BRIDGE -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME" # log info to console echo "Deployment parameters" diff --git a/jjb/multisite/multisite-daily-jobs.yml b/jjb/multisite/multisite-daily-jobs.yml index 06cefb646..c5e1866e3 100644 --- a/jjb/multisite/multisite-daily-jobs.yml +++ b/jjb/multisite/multisite-daily-jobs.yml @@ -193,6 +193,7 @@ publishers: - 'multisite-{phase}-publisher' + - email-jenkins-admins-on-failure ######################## # builder macros diff --git a/jjb/orchestra/orchestra-daily-jobs.yml b/jjb/orchestra/orchestra-daily-jobs.yml new file mode 100644 index 000000000..6baaab896 --- /dev/null +++ b/jjb/orchestra/orchestra-daily-jobs.yml @@ -0,0 +1,98 @@ +################################### +# job configuration for orchestra +################################### +- project: + name: 'orchestra-daily-jobs' + + project: 'orchestra' + +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + disabled: false + +#------------------------------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#------------------------------------------------------- + pod: + - virtual: + slave-label: 'joid-virtual' + os-version: 'xenial' + <<: *master + + jobs: + - 'orchestra-{pod}-daily-{stream}' + +################################ +# job template +################################ +- job-template: + name: 'orchestra-{pod}-daily-{stream}' + + project-type: multijob + + disabled: '{obj:disabled}' + + concurrent: false + + properties: + - logrotate-default + - throttle: + enabled: true + max-total: 1 + max-per-node: 1 + option: 'project' + + scm: + - git-scm + + wrappers: + - ssh-agent-wrapper + + - timeout: + timeout: 240 + fail: true + + triggers: + - timed: '@daily' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - string: + name: DEPLOY_SCENARIO + default: os-nosdn-openbaton-ha + - '{slave-label}-defaults' + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'joid-deploy-{pod}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO=os-nosdn-openbaton-ha + COMPASS_OS_VERSION=xenial + node-parameters: true + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: functest + condition: SUCCESSFUL + projects: + - name: 'functest-joid-{pod}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO=os-nosdn-openbaton-ha + FUNCTEST_SUITE_NAME=orchestra_ims + node-parameters: true + kill-phase-on: NEVER + abort-all-job: true diff --git a/jjb/orchestra/orchestra-project-jobs.yml b/jjb/orchestra/orchestra-project-jobs.yml new file mode 100644 index 000000000..0f0c0f6c9 --- /dev/null +++ b/jjb/orchestra/orchestra-project-jobs.yml @@ -0,0 +1,50 @@ +- project: + + name: orchestra-project + + project: 'orchestra' + + stream: + - master: + branch: '{stream}' + gs-pathname: '' + + jobs: + - 'orchestra-build-{stream}' + +- job-template: + name: 'orchestra-build-{stream}' + + concurrent: true + + properties: + - logrotate-default + - throttle: + enabled: true + max-total: 1 + max-per-node: 1 + option: 'project' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + + scm: + - git-scm + + triggers: + - timed: 'H 23 * * *' + + builders: + - 'orchestra-build-macro' + +- builder: + name: 'orchestra-build-macro' + builders: + - shell: | + #!/bin/bash + + echo "Hello world!" + + diff --git a/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml new file mode 100644 index 000000000..ed6df41e3 --- /dev/null +++ b/jjb/ovn4nfv/ovn4nfv-daily-jobs.yml @@ -0,0 +1,87 @@ +- project: + name: 'ovn4nfv-daily-jobs' + + project: 'ovn4nfv' + + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + disabled: false + + pod: + - virtual: + slave-label: 'joid-virtual' + os-version: 'xenial' + <<: *master + + jobs: + - 'ovn4nfv-{pod}-daily-{stream}' + +- job-template: + name: 'ovn4nfv-{pod}-daily-{stream}' + + project-type: multijob + + disabled: '{obj:disabled}' + + concurrent: false + + properties: + - logrotate-default + - throttle: + enabled: true + max-total: 1 + max-per-node: 1 + option: 'project' + + scm: + - git-scm + + wrappers: + - ssh-agent-wrapper + + - timeout: + timeout: 240 + fail: true + + triggers: + - timed: '@daily' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - string: + name: DEPLOY_SCENARIO + default: os-ovn-nofeature-noha + - '{slave-label}-defaults' + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: deploy + condition: SUCCESSFUL + projects: + - name: 'joid-deploy-{pod}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO=os-ovn-nofeature-noha + COMPASS_OS_VERSION=xenial + node-parameters: true + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: functest + condition: SUCCESSFUL + projects: + - name: 'functest-joid-{pod}-daily-{stream}' + current-parameters: false + predefined-parameters: | + DEPLOY_SCENARIO=os-ovn-nofeature-ha + FUNCTEST_SUITE_NAME=ovn4nfv_test_suite + node-parameters: true + kill-phase-on: NEVER + abort-all-job: true + diff --git a/jjb/ovn4nfv/ovn4nfv-project-jobs.yml b/jjb/ovn4nfv/ovn4nfv-project-jobs.yml new file mode 100644 index 000000000..805aa04a6 --- /dev/null +++ b/jjb/ovn4nfv/ovn4nfv-project-jobs.yml @@ -0,0 +1,51 @@ +- project: + name: ovn4nfv + + project: '{name}' + + + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + + jobs: + - 'ovn4nfv-build-{stream}' + +- job-template: + name: 'ovn4nfv-build-{stream}' + + concurrent: true + + disabled: '{obj:disabled}' + + properties: + - logrotate-default + - throttle: + enabled: true + max-total: 1 + max-per-node: 1 + option: 'project' + + parametert: + - project-parameter: + project: '{project}' + branch: '{branch}' + + scm: + - git-scm + + triggers: + - timed: 'H 23 * * *' + + builders: + - 'ovn4nfv-build-macro' + +- builder: + name: 'ovn4nfv-build-macro' + builders: + - shell: | + #!/bin/bash + + echo "hello world" diff --git a/jjb/ovsnfv/ovsnfv.yml b/jjb/ovsnfv/ovsnfv.yml index 0e8c713fd..62f6de05a 100644 --- a/jjb/ovsnfv/ovsnfv.yml +++ b/jjb/ovsnfv/ovsnfv.yml @@ -141,6 +141,7 @@ publishers: - email: recipients: therbert@redhat.com mark.d.gray@intel.com billy.o.mahony@intel.com + - email-jenkins-admins-on-failure - builder: name: build-rpms diff --git a/jjb/qtip/qtip-integration-jobs.yml b/jjb/qtip/qtip-integration-jobs.yml new file mode 100644 index 000000000..a349fc33b --- /dev/null +++ b/jjb/qtip/qtip-integration-jobs.yml @@ -0,0 +1,48 @@ +###################### +# verify before MERGE +###################### + +- project: + name: qtip-integration-jobs + project: qtip + jobs: + - 'qtip-storage-{stream}' + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + +################################ +## job templates +################################# + +- job-template: + name: 'qtip-storage-{stream}' + + disabled: '{obj:disabled}' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + # Pin the tests on zte-pod4 with apex deployment + - apex-defaults + - zte-pod4-defaults + scm: + - git-scm-gerrit + + triggers: + - experimental: + project: {project} + branch: {branch} + files: '**' + + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + set -o xtrace + + source integration/storperf/storperf.sh diff --git a/jjb/qtip/qtip-validate-jobs.yml b/jjb/qtip/qtip-validate-jobs.yml index 9f1ccecaf..73d7993c9 100644 --- a/jjb/qtip/qtip-validate-jobs.yml +++ b/jjb/qtip/qtip-validate-jobs.yml @@ -66,6 +66,7 @@ - qtip-validate-deploy publishers: - qtip-common-publishers + - email-jenkins-admins-on-failure ################ # MARCOS diff --git a/jjb/qtip/qtip-verify-jobs.yml b/jjb/qtip/qtip-verify-jobs.yml index 57d24b432..a273c858f 100644 --- a/jjb/qtip/qtip-verify-jobs.yml +++ b/jjb/qtip/qtip-verify-jobs.yml @@ -64,6 +64,7 @@ - qtip-unit-tests-and-docs-build publishers: - publish-coverage + - email-jenkins-admins-on-failure # upload juypter notebook to artifacts for review - job-template: @@ -192,4 +193,4 @@ echo "Document link(s):" >> gerrit_comment.txt find "$local_path" | grep -e 'ipynb$' | \ - sed -e "s|^$local_path| https://nbviewer.jupyter.org/urls/$gs_path|" >> gerrit_comment.txt + sed -e "s|^$local_path| https://nbviewer.jupyter.org/url/$gs_path|" >> gerrit_comment.txt diff --git a/jjb/qtip/qtip-weekly-jobs.yml b/jjb/qtip/qtip-weekly-jobs.yml index 2170de7b8..018248871 100644 --- a/jjb/qtip/qtip-weekly-jobs.yml +++ b/jjb/qtip/qtip-weekly-jobs.yml @@ -71,6 +71,7 @@ publishers: - email: recipients: wu.zhihui1@zte.com.cn, zhang.yujunz@zte.com.cn + - email-jenkins-admins-on-failure ################ # MARCOS diff --git a/jjb/releng/automate.yml b/jjb/releng/automate.yml index 4f6044bb5..d12ee5d68 100644 --- a/jjb/releng/automate.yml +++ b/jjb/releng/automate.yml @@ -90,6 +90,7 @@ publishers: - publish-coverage + - email-jenkins-admins-on-failure - job-template: name: '{module}-automate-{stream}' @@ -170,6 +171,7 @@ publishers: - 'email-publisher' + - email-jenkins-admins-on-failure - job-template: name: '{module}-automate-{phase}-{stream}' diff --git a/jjb/releng/opnfv-docker-arm.yml b/jjb/releng/opnfv-docker-arm.yml index 7502b17a1..d70640a7c 100644 --- a/jjb/releng/opnfv-docker-arm.yml +++ b/jjb/releng/opnfv-docker-arm.yml @@ -87,3 +87,4 @@ publishers: - email: recipients: '{receivers}' + - email-jenkins-admins-on-failure diff --git a/jjb/releng/opnfv-docker.yml b/jjb/releng/opnfv-docker.yml index fa9c441e8..7e605b9cb 100644 --- a/jjb/releng/opnfv-docker.yml +++ b/jjb/releng/opnfv-docker.yml @@ -171,6 +171,7 @@ publishers: - email: recipients: '{receivers}' + - email-jenkins-admins-on-failure - job-template: name: '{project}-docker-build-push-monitor-{stream}' diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml index ecc87303f..dc9bfd5dc 100644 --- a/jjb/releng/releng-ci-jobs.yml +++ b/jjb/releng/releng-ci-jobs.yml @@ -52,6 +52,7 @@ publishers: - archive-artifacts: artifacts: 'job_output/*' + - email-jenkins-admins-on-failure - job-template: name: 'releng-merge-jjb' diff --git a/jjb/storperf/storperf.yml b/jjb/storperf/storperf.yml index 13186a1ad..f675cbb2a 100644 --- a/jjb/storperf/storperf.yml +++ b/jjb/storperf/storperf.yml @@ -81,6 +81,7 @@ healthy: 50 unhealthy: 40 failing: 30 + - email-jenkins-admins-on-failure - job-template: name: 'storperf-merge-{stream}' @@ -135,6 +136,7 @@ healthy: 50 unhealthy: 40 failing: 30 + - email-jenkins-admins-on-failure - job-template: name: 'storperf-daily-{stream}' diff --git a/jjb/xci/bifrost-cleanup-job.yml b/jjb/xci/bifrost-cleanup-job.yml index d5a444d09..998464a5e 100644 --- a/jjb/xci/bifrost-cleanup-job.yml +++ b/jjb/xci/bifrost-cleanup-job.yml @@ -83,6 +83,7 @@ publishers: - email: recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com zhang.jun3g@zte.com.cn + - email-jenkins-admins-on-failure #-------------------------------- # trigger macros #-------------------------------- diff --git a/jjb/xci/bifrost-verify-jobs.yml b/jjb/xci/bifrost-verify-jobs.yml index 319f8eb28..fbe7ecf41 100644 --- a/jjb/xci/bifrost-verify-jobs.yml +++ b/jjb/xci/bifrost-verify-jobs.yml @@ -169,6 +169,7 @@ publishers: - email: recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com + - email-jenkins-admins-on-failure #-------------------------------- # trigger macros #-------------------------------- diff --git a/jjb/xci/xci-daily-jobs.yml b/jjb/xci/xci-daily-jobs.yml index 64e13d3eb..b582772c2 100644 --- a/jjb/xci/xci-daily-jobs.yml +++ b/jjb/xci/xci-daily-jobs.yml @@ -148,6 +148,7 @@ publishers: - email: recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com + - email-jenkins-admins-on-failure - job-template: name: 'xci-{phase}-{pod}-{distro}-daily-{stream}' diff --git a/jjb/yardstick/yardstick-daily-jobs.yml b/jjb/yardstick/yardstick-daily-jobs.yml index 4dcface59..007384b7a 100644 --- a/jjb/yardstick/yardstick-daily-jobs.yml +++ b/jjb/yardstick/yardstick-daily-jobs.yml @@ -287,6 +287,7 @@ publishers: - email: recipients: jean.gaoliang@huawei.com limingjiang@huawei.com ross.b.brattain@intel.com + - email-jenkins-admins-on-failure ######################## # builder macros diff --git a/utils/create_pod_file.py b/utils/create_pod_file.py index 197e4933c..e2c57d23f 100644 --- a/utils/create_pod_file.py +++ b/utils/create_pod_file.py @@ -49,7 +49,7 @@ def get_with_passwd(): args.user, installer_pwd=args.password) -def create_file(handler): +def create_file(handler, INSTALLER_TYPE): """ Create the yaml file of nodes info. As Yardstick required, node name must be node1, node2, ... and node1 must @@ -62,27 +62,30 @@ def create_file(handler): nodes = handler.nodes node_list = [] index = 1 + user = 'root' + if INSTALLER_TYPE == 'apex': + user = 'heat-admin' for node in nodes: try: if node.roles[0].lower() == "controller": node_info = {'name': "node%s" % index, 'role': node.roles[0], - 'ip': node.ip, 'user': 'root'} + 'ip': node.ip, 'user': user} node_list.append(node_info) index += 1 except Exception: node_info = {'name': node.name, 'role': 'unknown', 'ip': node.ip, - 'user': 'root'} + 'user': user} node_list.append(node_info) for node in nodes: try: if node.roles[0].lower() == "compute": node_info = {'name': "node%s" % index, 'role': node.roles[0], - 'ip': node.ip, 'user': 'root'} + 'ip': node.ip, 'user': user} node_list.append(node_info) index += 1 except Exception: node_info = {'name': node.name, 'role': 'unknown', 'ip': node.ip, - 'user': 'root'} + 'user': user} node_list.append(node_info) if args.INSTALLER_TYPE == 'compass': for item in node_list: @@ -105,7 +108,7 @@ def main(): if not handler: print("Error: failed to get the node's handler.") return 1 - create_file(handler) + create_file(handler, args.INSTALLER_TYPE) if __name__ == '__main__': diff --git a/utils/push-test-logs.sh b/utils/push-test-logs.sh index 5021b7832..eb57deb7b 100644 --- a/utils/push-test-logs.sh +++ b/utils/push-test-logs.sh @@ -30,7 +30,8 @@ node_list=(\ 'arm-pod1' 'arm-pod3' \ 'huawei-pod1' 'huawei-pod2' 'huawei-pod3' 'huawei-pod4' 'huawei-pod5' \ 'huawei-pod6' 'huawei-pod7' 'huawei-pod12' \ -'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4'\ +'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4' \ +'zte-pod2' \ 'zte-virtual1') diff --git a/utils/test/testapi/docker/prepare-env.sh b/utils/test/testapi/docker/prepare-env.sh index 4f1be7d6a..b14bc2448 100755 --- a/utils/test/testapi/docker/prepare-env.sh +++ b/utils/test/testapi/docker/prepare-env.sh @@ -8,7 +8,6 @@ fi if [ "$base_url" != "" ]; then sudo crudini --set --existing $FILE api url $base_url/api/v1 - sudo crudini --set --existing $FILE swagger base_url $base_url sudo crudini --set --existing $FILE ui url $base_url sudo echo "{\"testapiApiUrl\": \"$base_url/api/v1\"}" > \ /usr/local/lib/python2.7/dist-packages/opnfv_testapi/static/testapi-ui/config.json diff --git a/utils/test/testapi/etc/config.ini b/utils/test/testapi/etc/config.ini index 435188df7..1ec899fcb 100644 --- a/utils/test/testapi/etc/config.ini +++ b/utils/test/testapi/etc/config.ini @@ -18,9 +18,6 @@ results_per_page = 20 debug = True authenticate = False -[swagger] -base_url = http://localhost:8000 - [ui] url = http://localhost:8000 diff --git a/utils/test/testapi/opnfv_testapi/cmd/server.py b/utils/test/testapi/opnfv_testapi/cmd/server.py index a5ac5eb6b..50ac049a0 100644 --- a/utils/test/testapi/opnfv_testapi/cmd/server.py +++ b/utils/test/testapi/opnfv_testapi/cmd/server.py @@ -37,7 +37,7 @@ from opnfv_testapi.tornado_swagger import swagger def make_app(): - swagger.docs(base_url=CONF.swagger_base_url, + swagger.docs(base_url=CONF.ui_url, static_path=CONF.static_path) return swagger.Application( url_mappings.mappings, diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/common/noparam.ini b/utils/test/testapi/opnfv_testapi/tests/unit/common/noparam.ini index fda2a09e9..be7f2b9f8 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/common/noparam.ini +++ b/utils/test/testapi/opnfv_testapi/tests/unit/common/noparam.ini @@ -12,5 +12,5 @@ port = 8000 debug = True authenticate = False -[swagger] -base_url = http://localhost:8000 +[ui] +url = http://localhost:8000 diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/common/normal.ini b/utils/test/testapi/opnfv_testapi/tests/unit/common/normal.ini index 77cc6c6ee..c81c6c56a 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/common/normal.ini +++ b/utils/test/testapi/opnfv_testapi/tests/unit/common/normal.ini @@ -13,5 +13,5 @@ port = 8000 debug = True authenticate = False -[swagger] -base_url = http://localhost:8000 +[ui] +url = http://localhost:8000 diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/common/nosection.ini b/utils/test/testapi/opnfv_testapi/tests/unit/common/nosection.ini index 9988fc0a4..a9ed49c5c 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/common/nosection.ini +++ b/utils/test/testapi/opnfv_testapi/tests/unit/common/nosection.ini @@ -7,5 +7,5 @@ port = 8000 debug = True authenticate = False -[swagger] -base_url = http://localhost:8000 +[ui] +url = http://localhost:8000 diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/common/notboolean.ini b/utils/test/testapi/opnfv_testapi/tests/unit/common/notboolean.ini index b3f327670..3a11f9dd3 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/common/notboolean.ini +++ b/utils/test/testapi/opnfv_testapi/tests/unit/common/notboolean.ini @@ -13,5 +13,5 @@ port = 8000 debug = True authenticate = notboolean -[swagger] -base_url = http://localhost:8000 +[ui] +url = http://localhost:8000 diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/common/notint.ini b/utils/test/testapi/opnfv_testapi/tests/unit/common/notint.ini index d1b752a34..8180719b8 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/common/notint.ini +++ b/utils/test/testapi/opnfv_testapi/tests/unit/common/notint.ini @@ -13,5 +13,5 @@ port = notint debug = True authenticate = False -[swagger] -base_url = http://localhost:8000 +[ui] +url = http://localhost:8000 diff --git a/utils/test/testapi/opnfv_testapi/tests/unit/common/test_config.py b/utils/test/testapi/opnfv_testapi/tests/unit/common/test_config.py index cc8743ca8..8cfc513be 100644 --- a/utils/test/testapi/opnfv_testapi/tests/unit/common/test_config.py +++ b/utils/test/testapi/opnfv_testapi/tests/unit/common/test_config.py @@ -12,4 +12,4 @@ def test_config_normal(mocker, config_normal): assert CONF.api_port == 8000 assert CONF.api_debug is True assert CONF.api_authenticate is False - assert CONF.swagger_base_url == 'http://localhost:8000' + assert CONF.ui_url == 'http://localhost:8000' |