summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--jjb/apex/apex.yml31
-rw-r--r--jjb/bottlenecks/bottlenecks-ci-jobs.yml109
-rw-r--r--jjb/bottlenecks/bottlenecks-project-jobs.yml (renamed from jjb/bottlenecks/bottlenecks.yml)201
-rw-r--r--jjb/functest/functest-ci-jobs.yml5
-rw-r--r--jjb/opnfv/slave-params.yml23
5 files changed, 195 insertions, 174 deletions
diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml
index 89b0a9343..b48e81e8c 100644
--- a/jjb/apex/apex.yml
+++ b/jjb/apex/apex.yml
@@ -45,6 +45,7 @@
scenario:
- 'os-nosdn-nofeature-ha'
- 'os-odl_l2-nofeature-ha'
+ - 'os-odl_l2-bgpvpn-ha'
- 'os-odl_l2-sfc-noha'
- 'os-odl_l3-nofeature-ha'
- 'os-onos-nofeature-ha'
@@ -219,6 +220,12 @@
OPNFV_CLEAN=yes
git-revision: false
block: true
+ - trigger-builds:
+ - project: 'functest-apex-{slave}-suite-{stream1}'
+ predefined-parameters: |
+ DEPLOY_SCENARIO=os-nosdn-nofeature-ha
+ FUNCTEST_SUITE_NAME=vping_userdata
+ block: true
- 'apex-workspace-cleanup'
- job-template:
@@ -527,6 +534,30 @@
build-step-failure-threshold: 'never'
failure-threshold: 'never'
unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'apex-deploy-baremetal-os-odl_l2-bgpvpn-ha-{stream2}'
+ predefined-parameters:
+ BUILD_DIRECTORY=apex-build-{stream2}/build_output
+ git-revision: true
+ block: true
+ - trigger-builds:
+ - project: 'functest-apex-{slave}-daily-{stream2}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-odl_l2-bgpvpn-ha
+ block: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'yardstick-apex-{slave}-daily-{stream2}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-odl_l2-bgpvpn-ha
+ block: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
# Master Daily
- job-template:
diff --git a/jjb/bottlenecks/bottlenecks-ci-jobs.yml b/jjb/bottlenecks/bottlenecks-ci-jobs.yml
index b4b736faa..09b7df172 100644
--- a/jjb/bottlenecks/bottlenecks-ci-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-ci-jobs.yml
@@ -12,11 +12,18 @@
master: &master
stream: master
branch: '{stream}'
+ #This is used for common project file storage
gs-pathname: ''
+ #This is used for different test suite dependent packages storage
+ gs-packagepath: '/{suite}'
+ #docker tag used for version control
+ docker-tag: 'latest'
brahmaputra: &brahmaputra
stream: brahmaputra
branch: 'stable/{stream}'
- gs-pathname: '{stream}'
+ gs-pathname: '/{stream}'
+ gs-packagepath: '/{stream}/{suite}'
+ docker-tag: 'brahmaputra'
#--------------------------------
# POD, INSTALLER, AND BRANCH MAPPING
#--------------------------------
@@ -81,8 +88,16 @@
- 'bottlenecks-params-{pod}'
- string:
name: GERRIT_REFSPEC_DEBUG
- default: ''
+ default: 'false'
description: "Gerrit refspec for debug."
+ - string:
+ name: SUITE_NAME
+ default: '{suite}'
+ description: "test suite name."
+ - string:
+ name: DOCKER_TAG
+ default: '{docker-tag}'
+ description: "docker image tag used for version control"
scm:
- git-scm:
@@ -91,47 +106,75 @@
branch: '{branch}'
builders:
+ - 'bottlenecks-env-cleanup'
- 'bottlenecks-fetch-os-creds'
- - 'bottlenecks-run-{suite}'
+ - 'bottlenecks-run-suite'
publishers:
- email:
- recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com liangqi1@huawei.com liyiting@huawei.com
+ recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com liangqi1@huawei.com sunshine.wang@huawei.com
########################
# builder macros
########################
-#- builder:
-# name: bottlenecks-fetch-os-creds
-# builders:
-# - shell:
-# !include-raw ../../utils/fetch_os_creds.sh
-
-#- builder:
-# name: bottlenecks-run-rubbos
-# builders:
-# - shell: |
-# #!/bin/bash
-# set -o errexit
-#
-# echo "Bottlenecks: rubbos running now..."
-# cd $WORKSPACE
-# ./ci/run.sh $GERRIT_REFSPEC_DEBUG
-
-#- builder:
-# name: bottlenecks-run-vstf
-# builders:
-# - shell: |
-# #!/bin/bash
-# set -o errexit
-
-# echo "Bottlenecks: vstf running now..."
-# cd $WORKSPACE
-# ./ci/vstf_run.sh $GERRIT_REFSPEC_DEBUG
+- builder:
+ name: bottlenecks-fetch-os-creds
+ builders:
+ - shell:
+ !include-raw ../../utils/fetch_os_creds.sh
-########################
+- builder:
+ name: bottlenecks-env-cleanup
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -e
+ [[ $GERRIT_REFSPEC_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
+
+ echo "Bottlenecks: docker containers/images cleaning up"
+ if [[ ! -z $(docker ps -a | grep opnfv/bottlenecks) ]]; then
+ echo "removing existing opnfv/bottlenecks containers"
+ docker ps -a | grep opnfv/bottlenecks | awk '{print $1}' | xargs docker rm -f >$redirect
+ fi
+
+ if [[ ! -z $(docker images | grep opnfv/bottlenecks) ]]; then
+ echo "Bottlenecks: docker images to remove:"
+ docker images | head -1 && docker images | grep opnfv/bottlenecks
+ image_tags=($(docker images | grep opnfv/bottlenecks | awk '{print $2}'))
+ for tag in "${image_tags[@]}"; do
+ echo "Removing docker image opnfv/bottlenecks:$tag..."
+ docker rmi opnfv/bottlenecks:$tag >$redirect
+ done
+ fi
+
+- builder:
+ name: bottlenecks-run-suite
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -e
+ [[ $GERRIT_REFSPEC_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
+
+ echo "Bottlenecks: ${SUITE_NAME} running now..."
+
+ # pull latest image
+ docker pull opnfv/bottlenecks:$DOCKER_TAG >$redirect
+
+ # run tests by using docker
+ opts="--privileged=true --rm"
+ 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}"
+ run_testsuite="run_tests.sh -s ${SUITE_NAME}"
+ cmd="sudo docker run ${opts} ${envs} opnfv/bottlenecks ${run_testsuite} >${redirect}"
+ echo "Bottlenecks: docker cmd running: ${cmd}"
+ ${cmd}
+
+####################
# parameter macros
-########################
+####################
+
- parameter:
name: 'bottlenecks-params-intel-pod5'
parameters:
diff --git a/jjb/bottlenecks/bottlenecks.yml b/jjb/bottlenecks/bottlenecks-project-jobs.yml
index a65330d5d..7dbaeae6b 100644
--- a/jjb/bottlenecks/bottlenecks.yml
+++ b/jjb/bottlenecks/bottlenecks-project-jobs.yml
@@ -1,38 +1,37 @@
-####################################
-# Job configuration for bottlenecks
-####################################
+###################################################
+# Non-ci jobs for Bottlenecks project
+# They will only be enabled on request by projects!
+###################################################
- project:
- name: bottlenecks
+ name: bottlenecks-project-jobs
+
+ project: 'bottlenecks'
+
jobs:
- 'bottlenecks-verify-{stream}'
- - 'bottlenecks-daily-{installer}-{suite}-{pod}-{stream}'
+ - 'bottlenecks-merge-{stream}'
- 'bottlenecks-{suite}-upload-artifacts-{stream}'
- pod:
- - lf:
- node: 'opnfv-jump-2'
- installer_type: 'fuel'
- installer_ip: '10.20.0.2'
-
- installer:
- - 'fuel'
- suite:
- - 'rubbos'
- - 'vstf'
-
-# only master branch is enabled at the moment to keep no of jobs sane
stream:
- master:
branch: '{stream}'
+ #This is used for common project file storage
gs-pathname: ''
+ #This is used for different test suite dependent packages storage
+ gs-packagepath: '/{suite}'
- brahmaputra:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
+ gs-packagepath: '/{stream}/{suite}'
+
+ suite:
+ - 'rubbos'
+ - 'vstf'
+
+################################
+# job templates
+################################
- project: 'bottlenecks'
-###############################
-# Job templates
-##############################
- job-template:
name: 'bottlenecks-verify-{stream}'
@@ -67,70 +66,61 @@
branches:
- branch-compare-type: 'ANT'
branch-pattern: '**/{branch}'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**|.gitignore'
-
builders:
- - shell: |
- echo "Nothing to verify!"
+ - shell: |
+ echo "bottlenecks: verify job"
+ #TO DO: this should be changed when the unittest ready
- job-template:
- name: 'bottlenecks-{suite}-upload-artifacts-{stream}'
-
- concurrent: true
-
- properties:
- - throttle:
- enabled: true
- max-total: 1
- max-per-node: 1
+ name: 'bottlenecks-merge-{stream}'
parameters:
- project-parameter:
project: '{project}'
- - 'ericsson-build-defaults'
- - bottlenecks-parameter:
- gs-pathname: '{gs-pathname}'
- suite: '{suite}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - 'opnfv-build-defaults'
scm:
- - git-scm:
+ - gerrit-trigger-scm:
credentials-id: '{ssh-credentials}'
refspec: ''
- branch: '{branch}'
+ choosing-strategy: 'default'
+
+ triggers:
+ - gerrit:
+ trigger-on:
+ - change-merged-event
+ - comment-added-contains-event:
+ comment-contains-value: 'remerge'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: '{project}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
builders:
- - 'bottlenecks-builder-upload-artifact'
- - 'bottlenecks-workspace-cleanup'
+ - shell: |
+ echo "bottlenecks: merge"
- job-template:
- name: 'bottlenecks-daily-{installer}-{suite}-{pod}-{stream}'
+ name: 'bottlenecks-{suite}-upload-artifacts-{stream}'
- disabled: false
+ concurrent: true
- node: '{node}'
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
parameters:
- project-parameter:
project: '{project}'
- - 'opnfv-jump-2-defaults'
- - string:
- name: POD_NAME
- default: '{pod}'
- description: "POD where the job runs"
- - string:
- name: INSTALLER_TYPE
- default: '{installer_type}'
- description: "Installer name that is used for deployment."
- - string:
- name: INSTALLER_IP
- default: '{installer_ip}'
- description: "Installer IP."
- - string:
- name: GERRIT_REFSPEC_DEBUG
- default: ''
- description: "Gerrit refspec for debug."
+ - 'ericsson-build-defaults'
+ - bottlenecks-parameter:
+ gs-packagepath: '{gs-packagepath}'
scm:
- git-scm:
@@ -138,21 +128,9 @@
refspec: ''
branch: '{branch}'
- wrappers:
- - timeout:
- timeout: 120
- fail: true
-
- triggers:
- - 'bottlenecks-trigger-{pod}'
-
builders:
- - 'bottlenecks-fetch-os-creds'
- - 'bottlenecks-run-{suite}'
-
- publishers:
- - email:
- recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com liangqi1@huawei.com liyiting@huawei.com
+ - 'bottlenecks-builder-upload-artifact'
+ - 'bottlenecks-workspace-cleanup'
####################
# parameter macros
@@ -162,47 +140,20 @@
parameters:
- string:
name: CACHE_DIR
- default: $WORKSPACE/cache/{suite}
+ default: $WORKSPACE/cache{gs-packagepath}
description: "the cache to store packages downloaded from public IP"
- string:
name: SUITE_URL
- default: gs://artifacts.opnfv.org/bottlenecks/{suite}{gs-pathname}
+ default: gs://artifacts.opnfv.org/bottlenecks{gs-packagepath}
description: "LF artifacts url for storage of bottlenecks packages"
- string:
name: PACKAGE_URL
- default: http://205.177.226.237:9999/bottlenecks/{suite}/
+ default: http://205.177.226.237:9999/bottlenecks{gs-packagepath}/
description: "the url where we store the packages used for bottlenecks rubbos"
-###################################
+####################################
#builders for bottlenecks project
-###################################
-- builder:
- name: bottlenecks-fetch-os-creds
- builders:
- - shell:
- !include-raw: ../../utils/fetch_os_creds.sh
-
-- builder:
- name: bottlenecks-run-rubbos
- builders:
- - shell: |
- #!/bin/bash
- set -o errexit
-
- echo "Bottlenecks: rubbos running now..."
- cd $WORKSPACE
- ./ci/run.sh $GERRIT_REFSPEC_DEBUG
-
-- builder:
- name: bottlenecks-run-vstf
- builders:
- - shell: |
- #!/bin/bash
- set -o errexit
-
- echo "Bottlenecks: vstf running now..."
- cd $WORKSPACE
- ./ci/vstf_run.sh $GERRIT_REFSPEC_DEBUG
+####################################
- builder:
name: bottlenecks-builder-upload-artifact
builders:
@@ -234,31 +185,3 @@
echo "Bottlenecks: cleanup cache used for storage downloaded packages"
/bin/rm -rf $CACHE_DIR
-
-#######################
-#trigger macros
-#######################
-- trigger:
- name: 'bottlenecks-trigger-lf'
- triggers:
-# - timed: '0 6 * * *'
- - gerrit:
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**|.gitignore'
diff --git a/jjb/functest/functest-ci-jobs.yml b/jjb/functest/functest-ci-jobs.yml
index 57f48109b..af79fbf75 100644
--- a/jjb/functest/functest-ci-jobs.yml
+++ b/jjb/functest/functest-ci-jobs.yml
@@ -67,7 +67,7 @@
- intel-pod8:
installer: compass
<<: *master
- - opnfv-jump-1:
+ - intel-pod7:
installer: apex
<<: *master
- ericsson-pod1:
@@ -172,7 +172,8 @@
- 'promise'
- 'doctor'
- 'vims'
- - 'vping'
+ - 'vping_userdata'
+ - 'vping_ssh'
- parameter:
name: functest-parameter
parameters:
diff --git a/jjb/opnfv/slave-params.yml b/jjb/opnfv/slave-params.yml
index 8ee4b0be6..e7f063c94 100644
--- a/jjb/opnfv/slave-params.yml
+++ b/jjb/opnfv/slave-params.yml
@@ -175,6 +175,29 @@
description: "External network to create for pod6 (name;type;first ip;last ip; gateway;network)"
- parameter:
+ name: 'intel-pod7-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - intel-pod7
+ default-slaves:
+ - intel-pod7
+ - string:
+ name: INSTALLER_VERSION
+ default: latest
+ description: 'Version of the installer to deploy'
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
+ - string:
+ name: SSH_KEY
+ default: /root/.ssh/id_rsa
+ description: 'SSH key to use for Apex'
+
+- parameter:
name: 'intel-pod8-defaults'
parameters:
- node: