diff options
-rw-r--r-- | INFO | 2 | ||||
-rw-r--r-- | jjb/fuel/fuel-ci-jobs.yml | 139 | ||||
-rwxr-xr-x | jjb/kvmfornfv/kvmfornfv-download-artifact.sh | 25 | ||||
-rwxr-xr-x | jjb/kvmfornfv/kvmfornfv-test.sh | 3 | ||||
-rwxr-xr-x | jjb/kvmfornfv/kvmfornfv-upload-artifact.sh | 29 | ||||
-rw-r--r-- | jjb/kvmfornfv/kvmfornfv.yml | 133 | ||||
-rw-r--r-- | jjb/opnfv/opnfv-docs.yml | 46 | ||||
-rw-r--r-- | jjb/opnfv/slave-params.yml | 32 | ||||
-rw-r--r-- | jjb/qtip/qtip-ci-jobs.yml | 6 | ||||
-rw-r--r-- | jjb/releng/releng-ci-jobs.yml | 2 | ||||
-rw-r--r-- | utils/push-test-logs.sh | 1 |
11 files changed, 366 insertions, 52 deletions
@@ -19,7 +19,9 @@ Matthew Lijun (Huawei, matthew.lijun@huawei.com) Jose Lausuch (Ericsson, jose.lausuch@ericsson.com) Ryota Mibu (NEC, r-mibu@cq.jp.nec.com) Mei Mei (Huawei, meimei@huawei.com) +Trevor Bramwell (Linux Foundation, tbramwell@linuxfoundation.org) Link to TSC approval of the project: http://ircbot.wl.linuxfoundation.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-07-14-14.00.html Link to TSC voting for removal of Victor Laza as committer: http://meetbot.opnfv.org/meetings/opnfv-meeting/2016/opnfv-meeting.2016-02-16-14.59.html Link to nomination and acceptance of Mei Mei as committer: http://lists.opnfv.org/pipermail/opnfv-tsc/2016-March/002228.html +Links to nomination and accceptance of Trevor Bramwell as committer: http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011659.html and http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011714.html diff --git a/jjb/fuel/fuel-ci-jobs.yml b/jjb/fuel/fuel-ci-jobs.yml index dbf19297c..aa5a72751 100644 --- a/jjb/fuel/fuel-ci-jobs.yml +++ b/jjb/fuel/fuel-ci-jobs.yml @@ -14,11 +14,6 @@ stream: master branch: '{stream}' gs-pathname: '' - brahmaputra: &brahmaputra - stream: brahmaputra - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - auto-trigger-name: 'daily-trigger-disabled' #-------------------------------- # POD, INSTALLER, AND BRANCH MAPPING #-------------------------------- @@ -31,12 +26,6 @@ - virtual: slave-label: fuel-virtual <<: *master - - baremetal: - slave-label: fuel-baremetal - <<: *brahmaputra - - virtual: - slave-label: fuel-virtual - <<: *brahmaputra #-------------------------------- # None-CI PODs #-------------------------------- @@ -68,6 +57,25 @@ auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-nosdn-kvm_ovs-ha': auto-trigger-name: 'daily-trigger-disabled' + # NOHA scenarios + - 'os-nosdn-nofeature-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-odl_l2-nofeature-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-odl_l3-nofeature-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-onos-sfc-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-onos-nofeature-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-odl_l2-sfc-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-odl_l2-bgpvpn-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-nosdn-kvm-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' + - 'os-nosdn-ovs-noha': + auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' jobs: - 'fuel-{scenario}-{pod}-daily-{stream}' @@ -227,6 +235,8 @@ #----------------------------------------------- # Triggers for job running on fuel-baremetal against master branch #----------------------------------------------- + +# HA Scenarios - trigger: name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger' triggers: @@ -263,10 +273,44 @@ name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger' triggers: - timed: '' + +# NOHA Scenarios +- trigger: + name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l2-nofeature-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l3-nofeature-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-onos-sfc-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-onos-nofeature-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l2-sfc-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l2-bgpvpn-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' - trigger: name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger' triggers: - timed: '' +- trigger: + name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-master-trigger' + triggers: + - timed: '' #----------------------------------------------- # Triggers for job running on fuel-virtual against master branch #----------------------------------------------- @@ -306,10 +350,44 @@ name: 'fuel-os-nosdn-ovs-ha-virtual-daily-master-trigger' triggers: - timed: '' + +# NOHA Scenarios +- trigger: + name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-master-trigger' + triggers: + - timed: '0 13 * * *' +- trigger: + name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-master-trigger' + triggers: + - timed: '30 15 * * *' +- trigger: + name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-master-trigger' + triggers: + - timed: '0 18 * * *' +- trigger: + name: 'fuel-os-onos-sfc-noha-virtual-daily-master-trigger' + triggers: + - timed: '30 20 * * *' +- trigger: + name: 'fuel-os-onos-nofeature-noha-virtual-daily-master-trigger' + triggers: + - timed: '0 23 * * *' +- trigger: + name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-master-trigger' + triggers: + - timed: '30 1 * * *' +- trigger: + name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-master-trigger' + triggers: + - timed: '0 4 * * *' - trigger: name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger' triggers: - - timed: '' + - timed: '30 6 * * *' +- trigger: + name: 'fuel-os-nosdn-ovs-noha-virtual-daily-master-trigger' + triggers: + - timed: '0 9 * * *' #----------------------------------------------- # ZTE POD1 Triggers running against master branch #----------------------------------------------- @@ -349,3 +427,40 @@ name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger' triggers: - timed: '' +# NOHA Scenarios +- trigger: + name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' +- trigger: + name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-master-trigger' + triggers: + - timed: '' diff --git a/jjb/kvmfornfv/kvmfornfv-download-artifact.sh b/jjb/kvmfornfv/kvmfornfv-download-artifact.sh new file mode 100755 index 000000000..24a5e45fe --- /dev/null +++ b/jjb/kvmfornfv/kvmfornfv-download-artifact.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +if [[ "$JOB_NAME" =~ (verify|merge|daily|weekly) ]]; then + JOB_TYPE=${BASH_REMATCH[0]} +else + echo "Unable to determine job type!" + exit 1 +fi + +if [[ "$JOB_TYPE" == "verify" ]]; then + echo "Downloading artifacts for the change $GERRIT_CHANGE_NUMBER. This could take some time..." + GS_URL="gs://artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER" +else + echo "Artifact download is not enabled for $JOB_TYPE jobs" + exit 1 +fi + +/bin/mkdir -p $WORKSPACE/build_output +gsutil cp -r $GS_URL/* $WORKSPACE/build_output > $WORKSPACE/gsutil.log 2>&1 + +echo "--------------------------------------------------------" +ls -al $WORKSPACE/build_output +echo "--------------------------------------------------------" + +echo "Downloaded artifacts!" diff --git a/jjb/kvmfornfv/kvmfornfv-test.sh b/jjb/kvmfornfv/kvmfornfv-test.sh new file mode 100755 index 000000000..7a47f9a6e --- /dev/null +++ b/jjb/kvmfornfv/kvmfornfv-test.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +ls -al $WORKSPACE/build_output diff --git a/jjb/kvmfornfv/kvmfornfv-upload-artifact.sh b/jjb/kvmfornfv/kvmfornfv-upload-artifact.sh new file mode 100755 index 000000000..81394561a --- /dev/null +++ b/jjb/kvmfornfv/kvmfornfv-upload-artifact.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +if [[ "$JOB_NAME" =~ (verify|merge|daily|weekly) ]]; then + JOB_TYPE=${BASH_REMATCH[0]} +else + echo "Unable to determine job type!" + exit 1 +fi + +if [[ "$JOB_TYPE" == "verify" ]]; then + echo "Uploding artifacts for the change $GERRIT_CHANGE_NUMBER. This could take some time..." + GS_URL="gs://artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER" +else + echo "Artifact upload is not enabled for $JOB_TYPE jobs" + exit 1 +fi + +gsutil cp -r $WORKSPACE/build_output $GS_URL > $WORKSPACE/gsutil.log 2>&1 +gsutil -m setmeta -r \ + -h "Cache-Control:private, max-age=0, no-transform" \ + $GS_URL > /dev/null 2>&1 + +gsutil ls $GS_URL > /dev/null 2>&1 +if [[ $? -ne 0 ]]; then + echo "Problem while uploading artifacts!" + echo "Check log $WORKSPACE/gsutil.log on $NODE_NAME" + exit 1 +fi +echo "Uploaded artifacts!" diff --git a/jjb/kvmfornfv/kvmfornfv.yml b/jjb/kvmfornfv/kvmfornfv.yml index aa8b645f3..77110bb74 100644 --- a/jjb/kvmfornfv/kvmfornfv.yml +++ b/jjb/kvmfornfv/kvmfornfv.yml @@ -3,21 +3,49 @@ project: '{name}' - jobs: - - 'kvmfornfv-verify-{stream}' - - 'kvmfornfv-merge-{stream}' - stream: - master: branch: '{stream}' gs-pathname: '' + disabled: false - brahmaputra: branch: 'stable/{stream}' gs-pathname: '/{stream}' + disabled: true +##################################### +# patch verification phases +##################################### + phase: + - 'build': + slave-label: 'opnfv-build-ubuntu' + - 'test': + slave-label: 'intel-pod1' +##################################### +# patch verification phases +##################################### + jobs: + - 'kvmfornfv-verify-{stream}' + - 'kvmfornfv-verify-{phase}-{stream}' + - 'kvmfornfv-merge-{stream}' +##################################### +# job templates +##################################### - job-template: name: 'kvmfornfv-verify-{stream}' + project-type: multijob + + disabled: '{obj:disabled}' + + concurrent: true + + properties: + - throttle: + enabled: true + max-total: 3 + option: 'project' + parameters: - project-parameter: project: '{project}' @@ -25,12 +53,6 @@ branch: '{branch}' - 'opnfv-build-ubuntu-defaults' - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - triggers: - gerrit: trigger-on: @@ -51,8 +73,66 @@ branch-pattern: '**/{branch}' builders: - - shell: - !include-raw: ./kvmfornfv-build.sh + - description-setter: + description: "Built on $NODE_NAME" + - multijob: + name: build + condition: SUCCESSFUL + projects: + - name: 'kvmfornfv-verify-build-{stream}' + current-parameters: false + predefined-parameters: | + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: true + - multijob: + name: test + condition: SUCCESSFUL + projects: + - name: 'kvmfornfv-verify-test-{stream}' + current-parameters: false + predefined-parameters: | + GERRIT_BRANCH=$GERRIT_BRANCH + GERRIT_REFSPEC=$GERRIT_REFSPEC + GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER + node-parameters: false + kill-phase-on: FAILURE + abort-all-job: true + +- job-template: + name: 'kvmfornfv-verify-{phase}-{stream}' + + disabled: '{obj:disabled}' + + concurrent: true + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + - timeout: + timeout: 360 + fail: true + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - '{slave-label}-defaults' + + builders: + - description-setter: + description: "Built on $NODE_NAME" + - '{project}-verify-{phase}-macro' - job-template: name: 'kvmfornfv-merge-{stream}' @@ -63,6 +143,8 @@ - gerrit-parameter: branch: '{branch}' - 'opnfv-build-ubuntu-defaults' + - 'kvmfornfv-defaults': + gs-pathname: '{gs-pathname}' scm: - gerrit-trigger-scm: @@ -86,3 +168,30 @@ builders: - shell: !include-raw: ./kvmfornfv-build.sh +##################################### +# builder macros +##################################### +- builder: + name: 'kvmfornfv-verify-build-macro' + builders: + - shell: + !include-raw: ./kvmfornfv-build.sh + - shell: + !include-raw: ./kvmfornfv-upload-artifact.sh +- builder: + name: 'kvmfornfv-verify-test-macro' + builders: + - shell: + !include-raw: ./kvmfornfv-download-artifact.sh + - shell: + !include-raw: ./kvmfornfv-test.sh +##################################### +# parameter macros +##################################### +- parameter: + name: 'kvmfornfv-defaults' + parameters: + - string: + name: GS_URL + default: artifacts.opnfv.org/$PROJECT{gs-pathname} + description: "URL to Google Storage." diff --git a/jjb/opnfv/opnfv-docs.yml b/jjb/opnfv/opnfv-docs.yml index 0c11757ec..2b80b84f0 100644 --- a/jjb/opnfv/opnfv-docs.yml +++ b/jjb/opnfv/opnfv-docs.yml @@ -51,19 +51,16 @@ - comment-added-contains-event: comment-contains-value: 'reverify' projects: - - project-compare-type: 'ANT' - project-pattern: '(?!yardstick)' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'docs/**' - - project-compare-type: 'ANT' - project-pattern: 'yardstick' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' + - project-compare-type: 'ANT' + project-pattern: '*' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: ANT + pattern: docs/** + - compare-type: ANT + pattern: yardstick/** builders: - upload-review-docs @@ -94,19 +91,16 @@ - comment-added-contains-event: comment-contains-value: 'remerge' projects: - - project-compare-type: 'ANT' - project-pattern: '(?!yardstick)' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'docs/**' - - project-compare-type: 'ANT' - project-pattern: 'yardstick' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' + - project-compare-type: 'ANT' + project-pattern: '*' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + file-paths: + - compare-type: ANT + pattern: docs/** + - compare-type: ANT + pattern: yardstick/** builders: - upload-merged-docs diff --git a/jjb/opnfv/slave-params.yml b/jjb/opnfv/slave-params.yml index 7b9983060..b5cf4cd9d 100644 --- a/jjb/opnfv/slave-params.yml +++ b/jjb/opnfv/slave-params.yml @@ -229,6 +229,20 @@ default: https://gerrit.opnfv.org/gerrit/$PROJECT description: 'Git URL to use on this Jenkins Slave' - parameter: + name: 'intel-pod1-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - intel-pod1 + default-slaves: + - intel-pod1 + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' +- parameter: name: 'intel-pod2-defaults' parameters: - node: @@ -323,6 +337,24 @@ default: https://gerrit.opnfv.org/gerrit/$PROJECT description: 'Git URL to use on this Jenkins Slave' - parameter: + name: 'zte-pod2-defaults' + parameters: + - node: + name: SLAVE_NAME + description: 'Slave name on Jenkins' + allowed-slaves: + - zte-pod2 + default-slaves: + - zte-pod2 + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' + - string: + name: INSTALLER_IP + default: '10.20.1.2' + description: 'IP of the installer' +- parameter: name: 'juniper-pod1-defaults' parameters: - node: diff --git a/jjb/qtip/qtip-ci-jobs.yml b/jjb/qtip/qtip-ci-jobs.yml index 068b273f7..ef455f8df 100644 --- a/jjb/qtip/qtip-ci-jobs.yml +++ b/jjb/qtip/qtip-ci-jobs.yml @@ -42,6 +42,10 @@ installer: fuel auto-trigger-name: 'qtip-daily-zte-pod1-trigger' <<: *master + - zte-pod2: + installer: fuel + auto-trigger-name: 'daily-trigger-disabled' + <<: *master #-------------------------------- jobs: @@ -58,8 +62,8 @@ parameters: - project-parameter: project: '{project}' - - '{pod}-defaults' - '{installer}-defaults' + - '{pod}-defaults' - string: name: DEPLOY_SCENARIO default: 'os-nosdn-nofeature-ha' diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml index f346c1c5f..ac323a3c1 100644 --- a/jjb/releng/releng-ci-jobs.yml +++ b/jjb/releng/releng-ci-jobs.yml @@ -99,7 +99,7 @@ source /opt/virtualenv/jenkins-job-builder/bin/activate cd /opt/jenkins-ci/releng git pull - jenkins-jobs update --delete-old jjb/ + jenkins-jobs update -r --delete-old jjb/ - job-template: name: 'builder-sandbox' diff --git a/utils/push-test-logs.sh b/utils/push-test-logs.sh index d36561d2d..24b3281e8 100644 --- a/utils/push-test-logs.sh +++ b/utils/push-test-logs.sh @@ -24,6 +24,7 @@ node_list=(\ 'lf-pod1' 'lf-pod2' 'intel-pod2' 'intel-pod3' \ 'intel-pod5' 'intel-pod6' 'intel-pod7' 'intel-pod8' \ 'ericsson-pod2' \ +'arm-pod1' \ 'huawei-pod1' 'huawei-pod2' 'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4') |