afa6b784403e229262331d0b52ac0b63707c87a1
[releng.git] / jjb / yardstick / yardstick-project-jobs.yml
1 ###################################################
2 # All the jobs except verify have been removed!
3 # They will only be enabled on request by projects!
4 ###################################################
5 - project:
6     name: yardstick-project-jobs
7
8     project: 'yardstick'
9
10     jobs:
11         - 'yardstick-verify-{stream}'
12         - 'yardstick-merge-{stream}'
13
14     stream:
15         - master:
16             branch: '{stream}'
17             gs-pathname: ''
18             disabled: false
19         - colorado:
20             branch: 'stable/{stream}'
21             gs-pathname: '/{stream}'
22             disabled: false
23
24 ################################
25 # job templates
26 ################################
27
28 - job-template:
29     name: 'yardstick-verify-{stream}'
30
31     disabled: '{obj:disabled}'
32
33     parameters:
34         - project-parameter:
35             project: '{project}'
36         - gerrit-parameter:
37             branch: '{branch}'
38         - 'opnfv-build-ubuntu-defaults'
39
40     scm:
41         - gerrit-trigger-scm:
42             credentials-id: '{ssh-credentials}'
43             refspec: '$GERRIT_REFSPEC'
44             choosing-strategy: 'gerrit'
45
46     triggers:
47         - gerrit:
48             server-name: 'gerrit.opnfv.org'
49             trigger-on:
50                 - patchset-created-event:
51                     exclude-drafts: 'false'
52                     exclude-trivial-rebase: 'false'
53                     exclude-no-code-change: 'false'
54                 - draft-published-event
55                 - comment-added-contains-event:
56                     comment-contains-value: 'recheck'
57                 - comment-added-contains-event:
58                     comment-contains-value: 'reverify'
59             projects:
60               - project-compare-type: 'ANT'
61                 project-pattern: '{project}'
62                 branches:
63                   - branch-compare-type: 'ANT'
64                     branch-pattern: '**/{branch}'
65     builders:
66         - yardstick-unit-tests-and-docs-build
67
68 - job-template:
69     name: 'yardstick-merge-{stream}'
70
71     disabled: '{obj:disabled}'
72
73     parameters:
74         - project-parameter:
75             project: '{project}'
76         - gerrit-parameter:
77             branch: '{branch}'
78         - 'opnfv-build-ubuntu-defaults'
79         - string:
80             name: GS_URL
81             default: '$GS_BASE{gs-pathname}'
82             description: "Directory where the build artifact will be located upon the completion     of the build."
83
84     scm:
85         - gerrit-trigger-scm:
86             credentials-id: '{ssh-credentials}'
87             refspec: ''
88             choosing-strategy: 'default'
89
90     triggers:
91         - gerrit:
92             server-name: 'gerrit.opnfv.org'
93             trigger-on:
94                 - change-merged-event
95                 - comment-added-contains-event:
96                     comment-contains-value: 'remerge'
97             projects:
98               - project-compare-type: 'ANT'
99                 project-pattern: '{project}'
100                 branches:
101                     - branch-compare-type: 'ANT'
102                       branch-pattern: '**/{branch}'
103
104     builders:
105         - yardstick-unit-tests-and-docs-build
106
107 ################################
108 # job builders
109 ################################
110
111 - builder:
112     name: yardstick-unit-tests-and-docs-build
113     builders:
114         - shell: |
115             #!/bin/bash
116             set -o errexit
117             set -o pipefail
118
119             echo "Running unit tests..."
120             cd $WORKSPACE
121             virtualenv $WORKSPACE/yardstick_venv
122             source $WORKSPACE/yardstick_venv/bin/activate
123
124             # install python packages
125             easy_install -U setuptools
126             easy_install -U pip
127             pip install -r requirements.txt || pip install -r tests/ci/requirements.txt
128             pip install -e .
129
130             # unit tests
131             ./run_tests.sh
132
133             deactivate