diff options
-rwxr-xr-x | jjb/apex/apex-deploy.sh | 15 | ||||
-rw-r--r-- | jjb/apex/apex-snapshot-create.sh | 8 | ||||
-rwxr-xr-x | jjb/apex/apex-upload-artifact.sh | 2 | ||||
-rw-r--r-- | jjb/apex/apex.yml | 81 | ||||
-rw-r--r-- | jjb/dovetail/dovetail-ci-jobs.yml | 2 | ||||
-rw-r--r-- | jjb/dovetail/dovetail-weekly-jobs.yml | 2 | ||||
-rw-r--r-- | jjb/fuel/fuel-daily-jobs.yml | 20 | ||||
-rw-r--r-- | jjb/global/slave-params.yml | 6 | ||||
-rwxr-xr-x | jjb/infra/bifrost-verify.sh | 7 | ||||
-rw-r--r-- | jjb/vswitchperf/vswitchperf.yml | 4 | ||||
-rw-r--r-- | utils/push-test-logs.sh | 6 |
11 files changed, 127 insertions, 26 deletions
diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh index 31c1bed5f..790d2a3aa 100755 --- a/jjb/apex/apex-deploy.sh +++ b/jjb/apex/apex-deploy.sh @@ -62,6 +62,21 @@ fi if [ -z "$DEPLOY_SCENARIO" ]; then echo "Deploy scenario not set!" exit 1 +elif [ "$DEPLOY_SCENARIO" == *gate* ]; then + echo "Detecting Gating scenario..." + if [ -z "$GERRIT_EVENT_COMMENT_TEXT" ]; then + echo "ERROR: Gate job triggered without comment!" + exit 1 + else + DEPLOY_SCENARIO=$(echo ${GERRIT_EVENT_COMMENT_TEXT} | grep start-gate-scenario | grep -Eo 'os-.*$') + if [ -z "$DEPLOY_SCENARIO" ]; then + echo "ERROR: Unable to detect scenario in Gerrit Comment!" + echo "Format of comment to trigger gate should be 'start-gate-scenario: <scenario>'" + exit 1 + else + echo "Gate scenario detected: ${DEPLOY_SCENARIO}" + fi + fi fi # use local build for verify and csit promote diff --git a/jjb/apex/apex-snapshot-create.sh b/jjb/apex/apex-snapshot-create.sh index 4647e0670..f146dd810 100644 --- a/jjb/apex/apex-snapshot-create.sh +++ b/jjb/apex/apex-snapshot-create.sh @@ -37,6 +37,7 @@ git clone https://gerrit.opnfv.org/gerrit/sdnvpn.git pushd sdnvpn/odl-pipeline/lib > /dev/null sudo ./tripleo_introspector.sh --out-file ${tmp_dir}/node.yaml popd > /dev/null +sudo rm -rf sdnvpn echo "Shutting down nodes" # Shut down nodes @@ -63,10 +64,11 @@ for node in $nodes; do fi done +pushd ${tmp_dir} > /dev/null echo "Gathering virsh definitions" # copy qcow2s, virsh definitions for node in $nodes; do - cp -f /var/lib/libvirt/images/${node}.qcow2 ./ + sudo cp -f /var/lib/libvirt/images/${node}.qcow2 ./ sudo virsh dumpxml ${node} > ${node}.xml done @@ -75,11 +77,13 @@ for net in admin api external storage tenant; do sudo virsh net-dumpxml ${net} > ${net}.xml done +sudo chown jenkins-ci:jenkins-ci * + # tar up artifacts DATE=`date +%Y-%m-%d` tar czf ../apex-csit-snap-${DATE}.tar.gz . popd > /dev/null -rm -rf ./.tmp +sudo rm -rf ${tmp_dir} echo "Snapshot saved as apex-csit-snap-${DATE}.tar.gz" # update opnfv properties file diff --git a/jjb/apex/apex-upload-artifact.sh b/jjb/apex/apex-upload-artifact.sh index 89fd5ed36..ef8ad5329 100755 --- a/jjb/apex/apex-upload-artifact.sh +++ b/jjb/apex/apex-upload-artifact.sh @@ -81,7 +81,7 @@ uploadsnap () { echo "Upload complete for Snapshot" } -if grep csit $WORKSPACE; then +if echo $WORKSPACE | grep csit > /dev/null; then uploadsnap elif gpg2 --list-keys | grep "opnfv-helpdesk@rt.linuxfoundation.org"; then echo "Signing Key avaliable" diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml index 512112e42..07da97a53 100644 --- a/jjb/apex/apex.yml +++ b/jjb/apex/apex.yml @@ -2,6 +2,7 @@ name: apex jobs: - 'apex-verify-{stream}' + - 'apex-verify-gate-{stream}' - 'apex-verify-unit-tests-{stream}' - 'apex-runner-{platform}-{scenario}-{stream}' - 'apex-runner-cperf-{stream}' @@ -45,6 +46,7 @@ - 'os-odl_l3-fdio_dvr-ha' - 'os-odl_l3-csit-noha' - 'os-onos-nofeature-ha' + - 'gate' platform: - 'baremetal' @@ -206,6 +208,85 @@ same-node: true - 'apex-workspace-cleanup' +# Verify Scenario Gate +- job-template: + name: 'apex-verify-gate-{stream}' + + node: '{verify-slave}' + + concurrent: true + + parameters: + - apex-parameter: + gs-pathname: '{gs-pathname}' + - project-parameter: + project: '{project}' + branch: '{branch}' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: "Used for overriding the GIT URL coming from parameters macro." + + scm: + - git-scm-gerrit + + triggers: + - gerrit: + server-name: 'gerrit.opnfv.org' + trigger-on: + - comment-added-contains-event: + comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*' + projects: + - project-compare-type: 'ANT' + project-pattern: 'apex' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: ANT + pattern: 'ci/**' + - compare-type: ANT + pattern: 'build/**' + - compare-type: ANT + pattern: 'lib/**' + - compare-type: ANT + pattern: 'config/**' + + properties: + - logrotate-default + - build-blocker: + use-build-blocker: true + block-level: 'NODE' + blocking-jobs: + - 'apex-daily.*' + - 'apex-deploy.*' + - 'apex-build.*' + - 'apex-runner.*' + - 'apex-verify.*' + - throttle: + max-per-node: 1 + max-total: 10 + option: 'project' + + builders: + - 'apex-build' + - trigger-builds: + - project: 'apex-deploy-virtual-gate-{stream}' + predefined-parameters: | + BUILD_DIRECTORY=apex-verify-gate-{stream} + OPNFV_CLEAN=yes + git-revision: false + block: true + same-node: true + - trigger-builds: + - project: 'functest-apex-{verify-slave}-suite-{stream}' + predefined-parameters: | + DEPLOY_SCENARIO=os-nosdn-nofeature-ha + FUNCTEST_SUITE_NAME=healthcheck + block: true + same-node: true + - 'apex-workspace-cleanup' + - job-template: name: 'apex-runner-{platform}-{scenario}-{stream}' diff --git a/jjb/dovetail/dovetail-ci-jobs.yml b/jjb/dovetail/dovetail-ci-jobs.yml index 4d92980af..1c3e8435d 100644 --- a/jjb/dovetail/dovetail-ci-jobs.yml +++ b/jjb/dovetail/dovetail-ci-jobs.yml @@ -180,7 +180,7 @@ parameters: - project-parameter: project: '{project}' - branch: '{branch}' + branch: '{dovetail-branch}' - '{SUT}-defaults' - '{slave-label}-defaults' - string: diff --git a/jjb/dovetail/dovetail-weekly-jobs.yml b/jjb/dovetail/dovetail-weekly-jobs.yml index 66c05e243..8edce4246 100644 --- a/jjb/dovetail/dovetail-weekly-jobs.yml +++ b/jjb/dovetail/dovetail-weekly-jobs.yml @@ -82,7 +82,7 @@ parameters: - project-parameter: project: '{project}' - branch: '{branch}' + branch: '{dovetail-branch}' - '{sut}-defaults' - '{slave-label}-defaults' - string: diff --git a/jjb/fuel/fuel-daily-jobs.yml b/jjb/fuel/fuel-daily-jobs.yml index 02267bdf9..f78c4a317 100644 --- a/jjb/fuel/fuel-daily-jobs.yml +++ b/jjb/fuel/fuel-daily-jobs.yml @@ -280,11 +280,15 @@ - trigger: name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 23 * * *' + - timed: '5 23 * * *' - trigger: name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 2 * * *' + - timed: '5 2 * * *' +- trigger: + name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger' + triggers: + - timed: '5 5 * * *' - trigger: name: 'fuel-os-onos-sfc-ha-baremetal-daily-master-trigger' triggers: @@ -296,7 +300,7 @@ - trigger: name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 11 * * *' + - timed: '5 11 * * *' - trigger: name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-master-trigger' triggers: @@ -304,11 +308,7 @@ - trigger: name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 17 * * *' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger' - triggers: - - timed: '5 20 * * *' + - timed: '5 17 * * *' - trigger: name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-master-trigger' triggers: @@ -510,11 +510,11 @@ - trigger: name: 'fuel-os-onos-sfc-noha-virtual-daily-master-trigger' triggers: - - timed: '35 20 * * *' + - timed: '' # '35 20 * * *' - trigger: name: 'fuel-os-onos-nofeature-noha-virtual-daily-master-trigger' triggers: - - timed: '5 23 * * *' + - timed: '' # '5 23 * * *' - trigger: name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-master-trigger' triggers: diff --git a/jjb/global/slave-params.yml b/jjb/global/slave-params.yml index 79accebef..243e0a402 100644 --- a/jjb/global/slave-params.yml +++ b/jjb/global/slave-params.yml @@ -427,15 +427,15 @@ default: https://gerrit.opnfv.org/gerrit/$PROJECT description: 'Git URL to use on this Jenkins Slave' - parameter: - name: 'intel-pod3-defaults' + name: 'intel-pod12-defaults' parameters: - node: name: SLAVE_NAME description: 'Slave name on Jenkins' allowed-slaves: - - intel-pod3 + - intel-pod12 default-slaves: - - intel-pod3 + - intel-pod12 - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT diff --git a/jjb/infra/bifrost-verify.sh b/jjb/infra/bifrost-verify.sh index 94c7dacfa..4115ffcc4 100755 --- a/jjb/infra/bifrost-verify.sh +++ b/jjb/infra/bifrost-verify.sh @@ -24,8 +24,9 @@ function upload_logs() { # before we upload the new data. gsutil -q rm ${BIFROST_GS_URL}/index.html || true + echo "Uploading collected bifrost build logs to ${BIFROST_LOG_URL}" + if [[ -d ${WORKSPACE}/logs ]]; then - echo "Uploading collected bifrost logs to ${BIFROST_LOG_URL}" pushd ${WORKSPACE}/logs &> /dev/null for x in *.log; do echo "Compressing and uploading $x" @@ -34,7 +35,7 @@ function upload_logs() { popd &> /dev/null fi - echo "Generating the landing page" + echo "Generating the ${BIFROST_LOG_URL}/index.html landing page" cat > ${WORKSPACE}/index.html <<EOF <html> <h1>Build results for <a href=https://$GERRIT_NAME/#/c/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER>$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER</a></h1> @@ -58,7 +59,7 @@ EOF # Finally, download and upload the entire build log so we can retain # as much build information as possible - echo "Uploading console output" + echo "Uploading the final console output" curl -s -L ${BIFROST_CONSOLE_LOG} > ${WORKSPACE}/build_log.txt gsutil -q cp -Z ${WORKSPACE}/build_log.txt ${BIFROST_GS_URL}/build_log.txt rm ${WORKSPACE}/build_log.txt diff --git a/jjb/vswitchperf/vswitchperf.yml b/jjb/vswitchperf/vswitchperf.yml index 936483706..ef0e90a76 100644 --- a/jjb/vswitchperf/vswitchperf.yml +++ b/jjb/vswitchperf/vswitchperf.yml @@ -19,7 +19,7 @@ branch: 'stable/{stream}' gs-pathname: '/{stream}' disabled: true - slave-label: 'intel-pod3' + slave-label: 'intel-pod12' - job-template: @@ -31,7 +31,7 @@ - project-parameter: project: '{project}' branch: '{branch}' - - 'intel-pod3-defaults' + - 'intel-pod12-defaults' scm: - git-scm diff --git a/utils/push-test-logs.sh b/utils/push-test-logs.sh index ed6825be2..09861c45f 100644 --- a/utils/push-test-logs.sh +++ b/utils/push-test-logs.sh @@ -19,16 +19,16 @@ branch=${BRANCH##*/} testbed=$NODE_NAME dir_result="${HOME}/opnfv/$project/results/${branch}" # src: https://wiki.opnfv.org/display/INF/Hardware+Infrastructure -# + intel-pod3 (vsperf) +# + intel-pod12 (vsperf) node_list=(\ -'lf-pod1' 'lf-pod2' 'intel-pod2' 'intel-pod3' \ +'lf-pod1' 'lf-pod2' 'intel-pod2' 'intel-pod12' \ 'intel-pod5' 'intel-pod6' 'intel-pod7' 'intel-pod8' \ 'ericsson-pod1' 'ericsson-pod2' \ 'ericsson-virtual1' 'ericsson-virtual2' 'ericsson-virtual3' \ 'ericsson-virtual4' 'ericsson-virtual5' \ 'arm-pod1' 'arm-pod3' \ 'huawei-pod1' 'huawei-pod2' 'huawei-pod3' 'huawei-pod4' 'huawei-pod5' \ -'huawei-pod6' 'huawei-pod7' \ +'huawei-pod6' 'huawei-pod7' 'huawei-pod12'\ 'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4') |