From 3218544e4b387cfcf8b6cfe09b2bfca067cec02f Mon Sep 17 00:00:00 2001 From: Fatih Degirmenci Date: Mon, 21 Dec 2015 10:50:43 +0100 Subject: [PATCH] Refactor yardstick JJB to prepare for Milestone E Replace default stream definitions with stream anchors in order to be able to specify which job on which POD runs against which branch. Move project specific verify and merge jobs to own file to ease the stream handling. Change-Id: I504978402d2d9e305357846806a9f81d3f17a27b Signed-off-by: Fatih Degirmenci --- .../{yardstick.yml => yardstick-ci-jobs.yml} | 197 ++++++++------------- jjb/yardstick/yardstick-project-jobs.yml | 118 ++++++++++++ 2 files changed, 189 insertions(+), 126 deletions(-) rename jjb/yardstick/{yardstick.yml => yardstick-ci-jobs.yml} (53%) create mode 100644 jjb/yardstick/yardstick-project-jobs.yml diff --git a/jjb/yardstick/yardstick.yml b/jjb/yardstick/yardstick-ci-jobs.yml similarity index 53% rename from jjb/yardstick/yardstick.yml rename to jjb/yardstick/yardstick-ci-jobs.yml index e5c306a56..470bf68b9 100644 --- a/jjb/yardstick/yardstick.yml +++ b/jjb/yardstick/yardstick-ci-jobs.yml @@ -1,131 +1,88 @@ +################################### +# job configuration for functest +################################### - project: name: yardstick project: '{name}' +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + brahmaputra: &brahmaputra + stream: brahmaputra + branch: 'stable/{stream}' + gs-pathname: '{stream}' +#-------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#-------------------------------- +# Current Mapping +#-------------------------------- +# everything runs against master branch +#-------------------------------- pod: - opnfv-jump-2: installer: fuel + <<: *master - ericsson-pod1: installer: fuel + <<: *master + - ericsson-pod2: + installer: fuel + <<: *master - huawei-us-deploy-bare-1: installer: compass - + <<: *master +#-------------------------------- +# Milestone E Mapping +# !!!DO NOT ENABLE!!! +#-------------------------------- +# brahmaputra +#-------------------------------- +# - huawei-us-deploy-bare-1: +# installer: compass +# <<: *brahmaputra +# - intel-pod5: +# installer: joid +# <<: *brahmaputra +# - opnfv-jump-1: +# installer: apex +# <<: *brahmaputra +# - opnfv-jump-2: +# installer: fuel +# <<: *brahmaputra +#-------------------------------- +# master +#-------------------------------- +# - ericsson-pod1: +# installer: fuel +# <<: *master +# - ericsson-pod2: +# installer: fuel +# <<: *master +#-------------------------------- loop: - daily jobs: - 'yardstick-{installer}-{pod}-{loop}-{stream}' - - 'yardstick-merge-{stream}' - - 'yardstick-verify-{stream}' - - stream: - - master: - branch: 'master' - gs-pathname: '' -# - brahmaputra: -# branch: 'stable/brahmaputra' -# gs-pathname: '/brahmaputra' - -- job-template: - name: 'yardstick-verify-{stream}' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - 'ericsson-ca-build-1-defaults' - - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' - - triggers: - - 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}' - - builders: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail - - echo "Running unit tests..." - cd $WORKSPACE - virtualenv $WORKSPACE/yardstick_venv - source $WORKSPACE/yardstick_venv/bin/activate - easy_install -U setuptools - python setup.py develop - ./run_tests.sh - deactivate - -- job-template: - name: 'yardstick-merge-{stream}' - - parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - 'ericsson-ca-build-1-defaults' - - scm: - - gerrit-trigger-scm: - credentials-id: '{ssh-credentials}' - refspec: '' - 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: - - shell: | - #!/bin/bash - set -o errexit - set -o pipefail - - echo "Running unit tests..." - cd $WORKSPACE - virtualenv $WORKSPACE/yardstick_venv - source $WORKSPACE/yardstick_venv/bin/activate - easy_install -U setuptools - python setup.py develop - ./run_tests.sh - deactivate +################################ +# job templates +################################ - job-template: name: 'yardstick-{installer}-{pod}-{loop}-{stream}' disabled: false + wrappers: + - build-name: + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' + parameters: - project-parameter: project: '{project}' @@ -141,10 +98,7 @@ - git-scm: credentials-id: '{ssh-credentials}' refspec: '' - branch: master - - triggers: - - 'yardstick-trigger-{pod}' + branch: '{branch}' builders: - 'yardstick-cleanup' @@ -226,6 +180,14 @@ default: 'none' description: 'Arguments to use in order to choose the backend DB' +- parameter: + name: 'yardstick-params-ericsson-pod2' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: 'none' + description: 'Arguments to use in order to choose the backend DB' + - parameter: name: 'yardstick-params-opnfv-jump-2' parameters: @@ -241,20 +203,3 @@ name: YARDSTICK_DB_BACKEND default: 'none' description: 'Arguments to use in order to choose the backend DB' -######################## -# trigger macros -######################## -- trigger: - name: 'yardstick-trigger-ericsson-pod1' - triggers: - - timed: '@midnight' - -- trigger: - name: 'yardstick-trigger-opnfv-jump-2' - triggers: - - timed: '#@midnight' - -- trigger: - name: 'yardstick-trigger-huawei-us-deploy-bare-1' - triggers: - - timed: '#@midnight' diff --git a/jjb/yardstick/yardstick-project-jobs.yml b/jjb/yardstick/yardstick-project-jobs.yml new file mode 100644 index 000000000..193b69284 --- /dev/null +++ b/jjb/yardstick/yardstick-project-jobs.yml @@ -0,0 +1,118 @@ +################################################### +# All the jobs except verify have been removed! +# They will only be enabled on request by projects! +################################################### +- project: + name: yardstick-project-jobs + + project: 'yardstick' + + jobs: + - 'yardstick-verify-{stream}' + - 'yardstick-merge-{stream}' + +# only master branch is enabled at the moment to keep no of jobs sane + stream: + - master: + branch: 'master' + gs-pathname: '' +# - brahmaputra: +# branch: 'stable/brahmaputra' +# gs-pathname: '/brahmaputra' + +################################ +# job templates +################################ + +- job-template: + name: 'yardstick-verify-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'ericsson-ca-build-1-defaults' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + triggers: + - 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}' + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + echo "Running unit tests..." + cd $WORKSPACE + virtualenv $WORKSPACE/yardstick_venv + source $WORKSPACE/yardstick_venv/bin/activate + easy_install -U setuptools + python setup.py develop + ./run_tests.sh + deactivate + +- job-template: + name: 'yardstick-merge-{stream}' + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - 'ericsson-ca-build-1-defaults' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + 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: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + echo "Running unit tests..." + cd $WORKSPACE + virtualenv $WORKSPACE/yardstick_venv + source $WORKSPACE/yardstick_venv/bin/activate + easy_install -U setuptools + python setup.py develop + ./run_tests.sh + deactivate -- 2.16.6