d75ede0bf6ee6fad28fe929fed5bd05386d92ec6
[releng.git] / jjb / qtip / qtip.yml
1 - project:
2     name: qtip
3     jobs:
4         - 'qtip-test'
5         - 'qtip-daily-{stream}'
6         - 'qtip-merge'
7         - 'qtip-verify'
8         - 'qtip-dhrystone-serial-{pod}'
9         - 'qtip-ssl-parallel-{pod}'
10
11     # stream:    branch with - in place of / (eg. stable-helium)
12     # branch:    branch (eg. stable/helium)
13
14     pod:
15         - dell-build:
16            node: 'dell-us-testing-bm-1'
17            installer_type: 'fuel'
18            installer_ip: '10.20.0.2'
19
20     stream:
21         - master:
22             branch: 'master'
23
24     project: 'qtip'
25     somevar: 'foo'
26
27 - job-template:
28     name: qtip-test
29
30     logrotate:
31         daysToKeep: 30
32         numToKeep: 10
33         artifactDaysToKeep: -1
34         artifactNumToKeep: -1
35
36     builders:
37         - shell: |
38             echo "Hello world from qtip"
39
40 - job-template:
41     name: 'qtip-daily-{stream}'
42
43     # Job template for daily builders
44     #
45     # Required Variables:
46     #     stream:    branch with - in place of / (eg. stable)
47     #     branch:    branch (eg. stable)
48
49     varsetabove: '{somevar}'
50
51     logrotate:
52         daysToKeep: '{build-days-to-keep}'
53         numToKeep: '{build-num-to-keep}'
54         artifactDaysToKeep: '{build-artifact-days-to-keep}'
55         artifactNumToKeep: '{build-artifact-num-to-keep}'
56
57     parameters:
58         - project-parameter:
59             project: '{project}'
60
61     scm:
62         - git-scm:
63             credentials-id: '{ssh-credentials}'
64             refspec: ''
65             branch: '{branch}'
66
67     triggers:
68         - timed: 'H H * * *'
69
70     prebuilders:
71         - test-macro
72
73     builders:
74         - shell: |
75             pwd
76             find .
77             echo "Hello world from qtip {somevar} daily"
78
79     postbuilders:
80         - test-macro
81
82 - job-template:
83     name: 'qtip-verify'
84
85     logrotate:
86         daysToKeep: 30
87         numToKeep: 10
88         artifactDaysToKeep: -1
89         artifactNumToKeep: -1
90
91     parameters:
92         - project-parameter:
93             project: '{project}'
94         - gerrit-parameter:
95             branch: 'master'
96     scm:
97         - gerrit-trigger-scm:
98             credentials-id: '{ssh-credentials}'
99             refspec: '$GERRIT_REFSPEC'
100             choosing-strategy: 'gerrit'
101
102     triggers:
103         - gerrit:
104             trigger-on:
105                 - patchset-created-event:
106                     exclude-drafts: 'false'
107                     exclude-trivial-rebase: 'false'
108                     exclude-no-code-change: 'false'
109                 - draft-published-event
110                 - comment-added-contains-event:
111                     comment-contains-value: 'recheck'
112                 - comment-added-contains-event:
113                     comment-contains-value: 'reverify'
114             projects:
115               - project-compare-type: 'ANT'
116                 project-pattern: 'qtip'
117                 branches:
118                   - branch-compare-type: 'ANT'
119                     branch-pattern: '**/master'
120
121     builders:
122         - shell: |
123             pwd
124             find .
125             echo "verify logic goes here"
126
127 - job-template:
128     name: 'qtip-merge'
129
130     # builder-merge job to run JJB update
131     #
132     # This job's purpose is to update all the JJB
133
134     logrotate:
135         daysToKeep: 30
136         numToKeep: 40
137         artifactDaysToKeep: -1
138         artifactNumToKeep: 5
139
140     parameters:
141         - project-parameter:
142             project: '{project}'
143         - gerrit-parameter:
144             branch: 'master'
145
146     scm:
147         - gerrit-trigger-scm:
148             credentials-id: '{ssh-credentials}'
149             refspec: ''
150             choosing-strategy: 'default'
151
152     triggers:
153         - gerrit:
154             trigger-on:
155                 - change-merged-event
156                 - comment-added-contains-event:
157                     comment-contains-value: 'remerge'
158             projects:
159               - project-compare-type: 'ANT'
160                 project-pattern: 'qtip'
161                 branches:
162                     - branch-compare-type: 'ANT'
163                       branch-pattern: '**/master'
164
165     builders:
166         - shell: |
167             pwd
168             find .
169             echo "merge logic goes here"
170
171 - job-template:
172     name: 'qtip-dhrystone-serial-{pod}'
173
174     disabled: false
175
176     node: '{node}'
177
178     logrotate:
179       daysToKeep: 30
180       numToKeep: 10
181       artifactDaysToKeep: -1
182       artifactNumToKeep: -1
183
184     parameters:
185       - project-parameter:
186           project: '{project}'
187       - string:
188           name: INSTALLER_TYPE
189           default: '{installer_type}'
190           description: "Installer name that is used for deployment."
191       - string:
192           name: INSTALLER_IP
193           default: '{installer_ip}'
194           description: "Installer IP"
195       - string:
196           name: GIT_BASE
197           default: https://gerrit.opnfv.org/gerrit/$PROJECT
198           description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
199
200     scm:
201        - git-scm:
202            credentials-id: '{ssh-credentials}'
203            refspec: ''
204            branch: master
205
206     builders:
207         - 'qtip-fetch-os-cred'
208         - 'qtip-dhrystone-serial'
209
210     triggers:
211       - timed: '0 20 * * *'
212
213 - job-template:
214     name: 'qtip-ssl-parallel-{pod}'
215
216     disabled: false
217
218     node: '{node}'
219
220     logrotate:
221       daysToKeep: 30
222       numToKeep: 10
223       artifactDaysToKeep: -1
224       artifactNumToKeep: -1
225
226     parameters:
227       - project-parameter:
228           project: '{project}'
229       - string:
230           name: INSTALLER_TYPE
231           default: '{installer_type}'
232           description: "Installer name that is used for deployment."
233       - string:
234           name: INSTALLER_IP
235           default: '{installer_ip}'
236           description: "IP address of the installer"
237       - string:
238           name: GIT_BASE
239           default: https://gerrit.opnfv.org/gerrit/$PROJECT
240           description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
241
242     scm:
243        - git-scm:
244            credentials-id: '{ssh-credentials}'
245            refspec: ''
246            branch: master
247
248     builders:
249       - 'qtip-fetch-os-cred'
250       - 'qtip-ssl-parallel'
251
252     triggers:
253       - timed: "@midnight"
254
255 ###########################
256 #biuilder macros
257 ###########################
258 - builder:
259     name: qtip-dhrystone-serial
260
261     builders:
262         - shell: |
263             #! /bin/bash
264             if [[ ! -f $HOME/opnfv-openrc.sh ]]; then
265                echo "Unable to access file $HOME/opnfv-openrc.sh"
266                exit 1
267             fi
268             source $HOME/opnfv-openrc.sh
269             cd $WORKSPACE
270             echo "Running QTIP dhrystone with First Test case"
271             python qtip.py -s compute -b dhrystone_serial.yaml
272
273 - builder:
274     name: qtip-ssl-parallel
275
276     builders:
277         - shell: |
278             #!/bin/bash
279             if [[ ! -f $HOME/opnfv-openrc.sh ]]; then
280                echo "Unable to access file $HOME/opnfv-openrc.sh"
281                exit 1
282             fi
283             source $HOME/opnfv-openrc.sh
284             cd $WORKSPACE
285             echo "Running QTIP dhrystone with Second Test case"
286             python qtip.py -s compute -b ssl_parallel.yaml
287
288 - builder:
289     name: qtip-fetch-os-cred
290     builders:
291         - shell:
292             !include-raw ../../utils/fetch_os_creds.sh