summaryrefslogtreecommitdiffstats
path: root/jjb/bottlenecks
diff options
context:
space:
mode:
Diffstat (limited to 'jjb/bottlenecks')
-rw-r--r--jjb/bottlenecks/bottlenecks-ci-jobs.yml241
-rw-r--r--jjb/bottlenecks/bottlenecks-project-jobs.yml260
-rw-r--r--jjb/bottlenecks/bottlenecks-run-suite.sh2
3 files changed, 253 insertions, 250 deletions
diff --git a/jjb/bottlenecks/bottlenecks-ci-jobs.yml b/jjb/bottlenecks/bottlenecks-ci-jobs.yml
index 71601cf75..a8654d0cf 100644
--- a/jjb/bottlenecks/bottlenecks-ci-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-ci-jobs.yml
@@ -1,3 +1,4 @@
+---
####################################
# job configuration for bottlenecks
####################################
@@ -6,75 +7,75 @@
project: 'bottlenecks'
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+ # -------------------------------
+ # BRANCH ANCHORS
+ # -------------------------------
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'
+ 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'
danube: &danube
- stream: danube
- branch: 'stable/{stream}'
- gs-pathname: '/{stream}'
- gs-packagepath: '/{stream}/{suite}'
- docker-tag: 'stable'
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-# Installers using labels
-# CI PODs
-# This section should only contain the installers
-# that have been switched using labels for slaves
-#--------------------------------
+ stream: danube
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ gs-packagepath: '/{stream}/{suite}'
+ docker-tag: 'stable'
+ # -------------------------------
+ # POD, INSTALLER, AND BRANCH MAPPING
+ # -------------------------------
+ # Installers using labels
+ # CI PODs
+ # This section should only contain the installers
+ # that have been switched using labels for slaves
+ # -------------------------------
pod:
-#compass CI PODs
- - baremetal:
- slave-label: compass-baremetal-master
- installer: compass
- auto-trigger-name: 'daily-trigger-disabled'
- <<: *master
- - virtual:
- slave-label: compass-virtual-master
- installer: compass
- auto-trigger-name: 'daily-trigger-disabled'
- <<: *master
- - baremetal:
- slave-label: compass-baremetal-branch
- installer: compass
- auto-trigger-name: 'daily-trigger-disabled'
- <<: *danube
- - virtual:
- slave-label: compass-virtual-branch
- installer: compass
- auto-trigger-name: 'daily-trigger-disabled'
- <<: *danube
-
-#--------------------------------
-# None-CI PODs
-#--------------------------------
- # - orange-pod2:
- # slave-label: '{pod}'
- # installer: joid
- # auto-trigger-name: 'daily-trigger-disabled'
- # <<: *danube
- # - orange-pod2:
- # slave-label: '{pod}'
- # installer: joid
- # auto-trigger-name: 'daily-trigger-disabled'
- # <<: *master
-#--------------------------------------------
+ # compass CI PODs
+ - baremetal:
+ slave-label: compass-baremetal-master
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - virtual:
+ slave-label: compass-virtual-master
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - baremetal:
+ slave-label: compass-baremetal-branch
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *danube
+ - virtual:
+ slave-label: compass-virtual-branch
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *danube
+
+ # -------------------------------
+ # None-CI PODs
+ # -------------------------------
+ # - orange-pod2:
+ # slave-label: '{pod}'
+ # installer: joid
+ # auto-trigger-name: 'daily-trigger-disabled'
+ # <<: *danube
+ # - orange-pod2:
+ # slave-label: '{pod}'
+ # installer: joid
+ # auto-trigger-name: 'daily-trigger-disabled'
+ # <<: *master
+ # -------------------------------------------
suite:
- - 'posca_stress_traffic'
- - 'posca_stress_ping'
+ - 'posca_stress_traffic'
+ - 'posca_stress_ping'
jobs:
- - 'bottlenecks-{installer}-{suite}-{pod}-daily-{stream}'
+ - 'bottlenecks-{installer}-{suite}-{pod}-daily-{stream}'
################################
# job templates
@@ -83,53 +84,53 @@
name: 'bottlenecks-{installer}-{suite}-{pod}-daily-{stream}'
wrappers:
- - build-name:
- name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
- - timeout:
- timeout: 180
- abort: true
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+ - timeout:
+ timeout: 180
+ abort: true
triggers:
- - '{auto-trigger-name}'
+ - '{auto-trigger-name}'
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - '{slave-label}-defaults'
- - '{installer}-defaults'
- - 'bottlenecks-params-{slave-label}'
- - string:
- name: REPO_DIR
- default: "/home/opnfv/bottlenecks"
- description: "Directory where the repository is cloned"
- - string:
- name: DEPLOY_SCENARIO
- default: 'os-odl_l2-nofeature-ha'
- - string:
- name: GERRIT_REFSPEC_DEBUG
- default: 'true'
- 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"
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - '{slave-label}-defaults'
+ - '{installer}-defaults'
+ - 'bottlenecks-params-{slave-label}'
+ - string:
+ name: REPO_DIR
+ default: "/home/opnfv/bottlenecks"
+ description: "Directory where the repository is cloned"
+ - string:
+ name: DEPLOY_SCENARIO
+ default: 'os-odl_l2-nofeature-ha'
+ - string:
+ name: GERRIT_REFSPEC_DEBUG
+ default: 'true'
+ 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
+ - git-scm
builders:
- - 'bottlenecks-env-cleanup'
- - 'bottlenecks-run-suite'
+ - 'bottlenecks-env-cleanup'
+ - 'bottlenecks-run-suite'
publishers:
- - email:
- recipients: gabriel.yuyang@huawei.com, liyin11@huawei.com
- - email-jenkins-admins-on-failure
+ - email:
+ recipients: gabriel.yuyang@huawei.com, liyin11@huawei.com
+ - email-jenkins-admins-on-failure
########################
# builder macros
@@ -137,14 +138,14 @@
- builder:
name: bottlenecks-env-cleanup
builders:
- - shell:
- !include-raw: ./bottlenecks-cleanup.sh
+ - shell:
+ !include-raw: ./bottlenecks-cleanup.sh
- builder:
name: bottlenecks-run-suite
builders:
- - shell:
- !include-raw: ./bottlenecks-run-suite.sh
+ - shell:
+ !include-raw: ./bottlenecks-run-suite.sh
####################
# parameter macros
@@ -153,31 +154,31 @@
- parameter:
name: 'bottlenecks-params-compass-baremetal-master'
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'
+ - 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'
- parameter:
name: 'bottlenecks-params-compass-virtual-master'
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'
+ - 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'
- parameter:
name: 'bottlenecks-params-compass-baremetal-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'
+ - 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'
- 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'
+ - 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-project-jobs.yml b/jjb/bottlenecks/bottlenecks-project-jobs.yml
index 5dced2aad..c7c9b4208 100644
--- a/jjb/bottlenecks/bottlenecks-project-jobs.yml
+++ b/jjb/bottlenecks/bottlenecks-project-jobs.yml
@@ -1,3 +1,4 @@
+---
###################################################
# Non-ci jobs for Bottlenecks project
# They will only be enabled on request by projects!
@@ -8,29 +9,29 @@
project: 'bottlenecks'
jobs:
- - 'bottlenecks-verify-{stream}'
- - 'bottlenecks-merge-{stream}'
- - 'bottlenecks-{suite}-upload-artifacts-{stream}'
+ - 'bottlenecks-verify-{stream}'
+ - 'bottlenecks-merge-{stream}'
+ - 'bottlenecks-{suite}-upload-artifacts-{stream}'
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}'
- disabled: false
- - danube:
- branch: 'stable/{stream}'
- gs-pathname: '/{stream}'
- gs-packagepath: '/{stream}/{suite}'
- disabled: false
+ - 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}'
+ disabled: false
+ - danube:
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ gs-packagepath: '/{stream}/{suite}'
+ disabled: false
suite:
- - 'rubbos'
- - 'vstf'
- - 'posca_stress_traffic'
- - 'posca_stress_ping'
+ - 'rubbos'
+ - 'vstf'
+ - 'posca_stress_traffic'
+ - 'posca_stress_ping'
################################
# job templates
@@ -42,36 +43,37 @@
disabled: '{obj:disabled}'
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - 'opnfv-build-ubuntu-defaults'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - 'opnfv-build-ubuntu-defaults'
scm:
- - git-scm-gerrit
+ - git-scm-gerrit
triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- 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}'
+ - gerrit:
+ server-name: 'gerrit.opnfv.org'
+ 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}'
+
builders:
- #- bottlenecks-hello
- - bottlenecks-unit-tests
+ # - bottlenecks-hello
+ - bottlenecks-unit-tests
- job-template:
name: 'bottlenecks-merge-{stream}'
@@ -79,31 +81,31 @@
disabled: '{obj:disabled}'
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - 'opnfv-build-ubuntu-defaults'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - 'opnfv-build-ubuntu-defaults'
scm:
- - git-scm
+ - git-scm
triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- 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}'
+ - gerrit:
+ server-name: 'gerrit.opnfv.org'
+ 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-hello
- #- bottlenecks-unit-tests
+ - bottlenecks-hello
+ # - bottlenecks-unit-tests
- job-template:
name: 'bottlenecks-{suite}-upload-artifacts-{stream}'
@@ -114,27 +116,27 @@
concurrent: true
properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 1
- max-per-node: 1
- option: 'project'
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+ option: 'project'
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - 'opnfv-build-ubuntu-defaults'
- - bottlenecks-parameter:
- gs-packagepath: '{gs-packagepath}'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - 'opnfv-build-ubuntu-defaults'
+ - bottlenecks-parameter:
+ gs-packagepath: '{gs-packagepath}'
scm:
- - git-scm
+ - git-scm
builders:
- - 'bottlenecks-builder-upload-artifact'
- - 'bottlenecks-workspace-cleanup'
+ - 'bottlenecks-builder-upload-artifact'
+ - 'bottlenecks-workspace-cleanup'
####################
# parameter macros
@@ -142,82 +144,82 @@
- parameter:
name: bottlenecks-parameter
parameters:
- - string:
- name: CACHE_DIR
- 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{gs-packagepath}
- description: "LF artifacts url for storage of bottlenecks packages"
- - string:
- name: PACKAGE_URL
- default: http://205.177.226.237:9999/bottlenecks{gs-packagepath}/
- description: "the url where we store the packages used for bottlenecks rubbos"
+ - string:
+ name: CACHE_DIR
+ 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{gs-packagepath}
+ description: "LF artifacts url for storage of bottlenecks packages"
+ - string:
+ name: PACKAGE_URL
+ 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
+# builders for bottlenecks project
####################################
- builder:
name: bottlenecks-builder-upload-artifact
builders:
- - shell: |
- #!/bin/bash
- set -o errexit
+ - shell: |
+ #!/bin/bash
+ set -o errexit
- echo "Bottlenecks: upload to artifacts from the public IP"
+ echo "Bottlenecks: upload to artifacts from the public IP"
- [[ -d $CACHE_DIR ]] || mkdir -p $CACHE_DIR
+ [[ -d $CACHE_DIR ]] || mkdir -p $CACHE_DIR
- for file in $(curl -s $PACKAGE_URL |
- grep href |
- sed 's/.*href="//' |
- sed 's/".*//' |
- grep '^[a-zA-Z].*'); do
- curl --connect-timeout 10 -o $CACHE_DIR/$file $PACKAGE_URL$file -v
- echo "bottlenecks: copy file $CACHE_DIR/$file to $SUITE_URL"
- gsutil cp $CACHE_DIR/$file $SUITE_URL
- done
+ for file in $(curl -s $PACKAGE_URL |
+ grep href |
+ sed 's/.*href="//' |
+ sed 's/".*//' |
+ grep '^[a-zA-Z].*'); do
+ curl --connect-timeout 10 -o $CACHE_DIR/$file $PACKAGE_URL$file -v
+ echo "bottlenecks: copy file $CACHE_DIR/$file to $SUITE_URL"
+ gsutil cp $CACHE_DIR/$file $SUITE_URL
+ done
- builder:
name: bottlenecks-workspace-cleanup
builders:
- - shell: |
- #!/bin/bash
- set -o errexit
+ - shell: |
+ #!/bin/bash
+ set -o errexit
- echo "Bottlenecks: cleanup cache used for storage downloaded packages"
+ echo "Bottlenecks: cleanup cache used for storage downloaded packages"
- /bin/rm -rf $CACHE_DIR
+ /bin/rm -rf $CACHE_DIR
- builder:
name: bottlenecks-unit-tests
builders:
- - shell: |
- #!/bin/bash
- set -o errexit
- set -o pipefail
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o pipefail
- echo "Running unit tests..."
- cd $WORKSPACE
- virtualenv $WORKSPACE/bottlenecks_venv
- source $WORKSPACE/bottlenecks_venv/bin/activate
+ echo "Running unit tests..."
+ cd $WORKSPACE
+ virtualenv $WORKSPACE/bottlenecks_venv
+ source $WORKSPACE/bottlenecks_venv/bin/activate
- # install python packages
- easy_install -U setuptools
- easy_install -U pip
- pip install -r $WORKSPACE/requirements/verify.txt
+ # install python packages
+ easy_install -U setuptools
+ easy_install -U pip
+ pip install -r $WORKSPACE/requirements/verify.txt
- # unit tests
- /bin/bash $WORKSPACE/verify.sh
+ # unit tests
+ /bin/bash $WORKSPACE/verify.sh
- deactivate
+ deactivate
- builder:
name: bottlenecks-hello
builders:
- - shell: |
- #!/bin/bash
- set -o errexit
+ - shell: |
+ #!/bin/bash
+ set -o errexit
- echo -e "Wellcome to Bottlenecks! \nMerge event is planning to support more functions! "
+ echo -e "Wellcome to Bottlenecks! \nMerge event is planning to support more functions! "
diff --git a/jjb/bottlenecks/bottlenecks-run-suite.sh b/jjb/bottlenecks/bottlenecks-run-suite.sh
index a7570431d..6d4d2d8d1 100644
--- a/jjb/bottlenecks/bottlenecks-run-suite.sh
+++ b/jjb/bottlenecks/bottlenecks-run-suite.sh
@@ -125,7 +125,7 @@ if [[ $SUITE_NAME == *posca* ]]; then
-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}"
+ -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO} -e BUILD_TAG=${BUILD_TAG}"
docker_volume="-v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp"
cmd="docker run ${opts} ${envs} --name bottlenecks-load-master ${docker_volume} opnfv/bottlenecks:${DOCKER_TAG} /bin/bash"