diff options
Diffstat (limited to 'jjb/yardstick/yardstick-project-jobs.yaml')
-rw-r--r-- | jjb/yardstick/yardstick-project-jobs.yaml | 238 |
1 files changed, 238 insertions, 0 deletions
diff --git a/jjb/yardstick/yardstick-project-jobs.yaml b/jjb/yardstick/yardstick-project-jobs.yaml new file mode 100644 index 000000000..56e825e19 --- /dev/null +++ b/jjb/yardstick/yardstick-project-jobs.yaml @@ -0,0 +1,238 @@ +--- +################################################### +# 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}' + + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + - fraser: &fraser + branch: 'stable/{stream}' + gs-pathname: '/{stream}' + disabled: false + +################################ +# job templates +################################ + +- job-template: + name: 'yardstick-verify-{stream}' + + disabled: '{obj:disabled}' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' + + scm: + - 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}' + + wrappers: + - ssh-agent-wrapper + - timeout: + timeout: 30 + fail: true + + builders: + - yardstick-unit-tests-python-27 + - yardstick-unit-tests-python-3 + - yardstick-functional-tests-python-27 + - yardstick-functional-tests-python-3 + - yardstick-coverage-tests + - yardstick-pep8-tests + +- job-template: + name: 'yardstick-merge-{stream}' + + disabled: '{obj:disabled}' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - 'opnfv-build-ubuntu-defaults' + - string: + name: GS_URL + default: '$GS_BASE{gs-pathname}' + description: "Directory where the build artifact will be located upon\ + \ the completion of the build." + + 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}' + + wrappers: + - ssh-agent-wrapper + - timeout: + timeout: 30 + fail: true + + builders: + - yardstick-unit-tests-python-27 + - yardstick-unit-tests-python-3 + - yardstick-functional-tests-python-27 + - yardstick-functional-tests-python-3 + - yardstick-coverage-tests + - yardstick-pep8-tests + +################################ +# job builders +################################ + +- builder: + name: yardstick-unit-tests-python-27 + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + sudo apt-get -y autoremove + sudo apt-get install -y build-essential python-dev python3-dev + sudo apt-get -y clean && sudo apt-get -y autoremove + + echo "Running unit tests in Python 2.7 ..." + cd $WORKSPACE + tox -epy27 + +- builder: + name: yardstick-unit-tests-python-3 + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + sudo apt-get -y autoremove + sudo apt-get install -y build-essential python-dev python3-dev + sudo apt-get -y clean && sudo apt-get -y autoremove + + echo "Running unit tests in Python 3 ..." + cd $WORKSPACE + tox -epy3 + +- builder: + name: yardstick-functional-tests-python-27 + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + sudo apt-get -y autoremove + sudo apt-get install -y build-essential python-dev python3-dev rabbitmq-server + sudo apt-get -y clean && sudo apt-get -y autoremove + + echo "Configure RabbitMQ service" + sudo service rabbitmq-server restart + sudo rabbitmqctl start_app + if [ -z "$(sudo rabbitmqctl list_users | grep yardstick)" ]; then + sudo rabbitmqctl add_user yardstick yardstick + sudo rabbitmqctl set_permissions yardstick ".*" ".*" ".*" + fi + + echo "Running functional tests in Python 2.7 ..." + cd $WORKSPACE + tox -efunctional + +- builder: + name: yardstick-functional-tests-python-3 + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + sudo apt-get -y autoremove + sudo apt-get install -y build-essential python-dev python3-dev rabbitmq-server + sudo apt-get -y clean && sudo apt-get -y autoremove + + echo "Configure RabbitMQ service" + sudo service rabbitmq-server restart + sudo rabbitmqctl start_app + if [ -z "$(sudo rabbitmqctl list_users | grep yardstick)" ]; then + sudo rabbitmqctl add_user yardstick yardstick + sudo rabbitmqctl set_permissions yardstick ".*" ".*" ".*" + fi + + echo "Running functional tests in Python 3 ..." + cd $WORKSPACE + tox -efunctional-py3 + +- builder: + name: yardstick-coverage-tests + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + sudo apt-get -y autoremove + sudo apt-get install -y build-essential python-dev python3-dev + sudo apt-get -y clean && sudo apt-get -y autoremove + + echo "Running coverage tests ..." + cd $WORKSPACE + tox -ecoverage + +- builder: + name: yardstick-pep8-tests + builders: + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + sudo apt-get -y autoremove + sudo apt-get install -y build-essential python-dev python3-dev + sudo apt-get -y clean && sudo apt-get -y autoremove + + echo "Running style guidelines (PEP8) tests ..." + cd $WORKSPACE + tox -epep8 |