VNFM with ETSI FEAT03 changes
[releng.git] / jjb / yardstick / yardstick-project-jobs.yaml
1 ---
2 ###################################################
3 # All the jobs except verify have been removed!
4 # They will only be enabled on request by projects!
5 ###################################################
6 - project:
7     name: yardstick-project-jobs
8
9     project: 'yardstick'
10
11     jobs:
12       - 'yardstick-verify-{stream}'
13       - 'yardstick-merge-{stream}'
14
15     stream:
16       - master:
17           branch: '{stream}'
18           gs-pathname: ''
19           disabled: false
20       - hunter: &hunter
21           branch: 'stable/{stream}'
22           gs-pathname: '/{stream}'
23           disabled: false
24
25 ################################
26 # job templates
27 ################################
28
29 - job-template:
30     name: 'yardstick-verify-{stream}'
31
32     disabled: '{obj:disabled}'
33
34     parameters:
35       - project-parameter:
36           project: '{project}'
37           branch: '{branch}'
38       - 'ericsson-build4-defaults'
39
40     scm:
41       - git-scm-gerrit
42
43     triggers:
44       - gerrit:
45           server-name: 'gerrit.opnfv.org'
46           trigger-on:
47             - patchset-created-event:
48                 exclude-drafts: 'false'
49                 exclude-trivial-rebase: 'false'
50                 exclude-no-code-change: 'false'
51             - draft-published-event
52             - comment-added-contains-event:
53                 comment-contains-value: 'recheck'
54             - comment-added-contains-event:
55                 comment-contains-value: 'reverify'
56           projects:
57             - project-compare-type: 'ANT'
58               project-pattern: '{project}'
59               branches:
60                 - branch-compare-type: 'ANT'
61                   branch-pattern: '**/{branch}'
62
63     wrappers:
64       - ssh-agent-wrapper
65       - timeout:
66           timeout: 30
67           fail: true
68
69     builders:
70       - yardstick-unit-tests-python-3
71       - yardstick-functional-tests-python-3
72       - yardstick-coverage-tests
73       - yardstick-pep8-tests
74
75 - job-template:
76     name: 'yardstick-merge-{stream}'
77
78     disabled: '{obj:disabled}'
79
80     parameters:
81       - project-parameter:
82           project: '{project}'
83           branch: '{branch}'
84       - 'ericsson-build4-defaults'
85       - string:
86           name: GS_URL
87           default: '$GS_BASE{gs-pathname}'
88           description: "Directory where the build artifact will be located upon\
89             \ the completion of the build."
90
91     scm:
92       - git-scm
93
94     triggers:
95       - gerrit:
96           server-name: 'gerrit.opnfv.org'
97           trigger-on:
98             - change-merged-event
99             - comment-added-contains-event:
100                 comment-contains-value: 'remerge'
101           projects:
102             - project-compare-type: 'ANT'
103               project-pattern: '{project}'
104               branches:
105                 - branch-compare-type: 'ANT'
106                   branch-pattern: '**/{branch}'
107
108     wrappers:
109       - ssh-agent-wrapper
110       - timeout:
111           timeout: 30
112           fail: true
113
114     builders:
115       - yardstick-unit-tests-python-3
116       - yardstick-functional-tests-python-3
117       - yardstick-coverage-tests
118       - yardstick-pep8-tests
119
120 ################################
121 # job builders
122 ################################
123
124 - builder:
125     name: yardstick-unit-tests-python-3
126     builders:
127       - shell: |
128           #!/bin/bash
129           set -o errexit
130           set -o pipefail
131
132           sudo apt-get -y autoremove
133           sudo apt-get install -y build-essential python-dev python3-dev
134           sudo apt-get -y clean && sudo apt-get -y autoremove
135
136           echo "Running unit tests in Python 3 ..."
137           cd $WORKSPACE
138           tox -epy3
139
140 - builder:
141     name: yardstick-functional-tests-python-3
142     builders:
143       - shell: |
144           #!/bin/bash
145           set -o errexit
146           set -o pipefail
147
148           sudo apt-get -y autoremove
149           sudo apt-get install -y build-essential python-dev python3-dev rabbitmq-server
150           sudo apt-get -y clean && sudo apt-get -y autoremove
151
152           echo "Configure RabbitMQ service"
153           sudo service rabbitmq-server restart
154           sudo rabbitmqctl start_app
155           if [ -z "$(sudo rabbitmqctl list_users | grep yardstick)" ]; then
156             sudo rabbitmqctl add_user yardstick yardstick
157             sudo rabbitmqctl set_permissions yardstick ".*" ".*" ".*"
158           fi
159
160           echo "Running functional tests in Python 3 ..."
161           cd $WORKSPACE
162           tox -efunctional-py3
163
164 - builder:
165     name: yardstick-coverage-tests
166     builders:
167       - shell: |
168           #!/bin/bash
169           set -o errexit
170           set -o pipefail
171
172           sudo apt-get -y autoremove
173           sudo apt-get install -y build-essential python-dev python3-dev
174           sudo apt-get -y clean && sudo apt-get -y autoremove
175
176           echo "Running coverage tests ..."
177           cd $WORKSPACE
178           tox -ecoverage
179
180 - builder:
181     name: yardstick-pep8-tests
182     builders:
183       - shell: |
184           #!/bin/bash
185           set -o errexit
186           set -o pipefail
187
188           sudo apt-get -y autoremove
189           sudo apt-get install -y build-essential python-dev python3-dev
190           sudo apt-get -y clean && sudo apt-get -y autoremove
191
192           echo "Running style guidelines (PEP8) tests ..."
193           cd $WORKSPACE
194           tox -epep8