hicn.yaml revision 378c91f6
1---
2- project:
3    name: hicn
4    jobs:
5      - 'hicn-verify-{stream}-{os}'
6      - 'hicn-merge-{stream}-{os}'
7
8    project: 'hicn'
9    os:
10      - ubuntu1804:
11          repo-os-part: 'ubuntu.bionic.main'
12      - ubuntu1604:
13          repo-os-part: 'ubuntu.xenial.main'
14      - centos7:
15          repo-os-part: 'centos7'
16
17    stream:
18      - master:
19          branch: 'master'
20          repo-stream-part: 'master'
21
22    type:
23      - short
24      - long
25
26- project:
27    name: hicn-misc
28    jobs:
29      - 'hicn-checkstyle-verify-{stream}'
30    project: 'hicn'
31    stream:
32      - master:
33          branch: 'master'
34          repo-stream-part: 'master'
35    os: ubuntu1604
36
37- project:
38    name: hicn-sysrepo
39    jobs:
40      - 'hicn-sysrepo-plugin-verify-{stream}'
41      - 'hicn-sysrepo-plugin-merge-{stream}'
42    project: 'hicn'
43    stream:
44      - master:
45          branch: 'master'
46          repo-stream-part: 'master'
47    os: ubuntu1804
48
49- project:
50    name: hicn-view
51    views:
52      - project-view
53    project-name: hicn
54
55- job-template:
56    name: 'hicn-checkstyle-verify-{stream}'
57
58    project-type: freestyle
59    node: '{os}-us'
60    concurrent: true
61
62    build-discarder:
63      daysToKeep: '{build-days-to-keep}'
64      numToKeep: '{build-num-to-keep}'
65      artifactDaysToKeep: '{build-artifact-days-to-keep}'
66      artifactNumToKeep: '{build-artifact-num-to-keep}'
67
68    parameters:
69      - project-parameter:
70          project: '{project}'
71      - gerrit-parameter:
72          branch: '{branch}'
73      - os-parameter:
74          os: '{os}'
75      - repo-name-parameter:
76          repo-name: '{repo-stream-part}.ubuntu.xenial.main'
77
78    scm:
79      - gerrit-trigger-scm:
80          credentials-id: 'jenkins-gerrit-credentials'
81          refspec: '$GERRIT_REFSPEC'
82          choosing-strategy: 'gerrit'
83
84    wrappers:
85      - fdio-infra-wrappers:
86          build-timeout: '{build-timeout}'
87
88    triggers:
89      - gerrit:
90          server-name: 'Primary'
91          trigger-on:
92            - patchset-created-event:
93                exclude-drafts: 'true'
94                exclude-trivial-rebase: 'false'
95                exclude-no-code-change: 'true'
96            - draft-published-event
97            - comment-added-contains-event:
98                comment-contains-value: 'checkstylecheck'
99            - comment-added-contains-event:
100                comment-contains-value: 'docsonly'
101            - comment-added-contains-event:
102                comment-contains-value: 'recheck'
103            - comment-added-contains-event:
104                comment-contains-value: 'reverify'
105          projects:
106            - project-compare-type: 'ANT'
107              project-pattern: '{project}'
108              branches:
109                - branch-compare-type: 'ANT'
110                  branch-pattern: '**/{branch}'
111              file-paths:
112                - compare-type: REG_EXP
113                  pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
114              disable-strict-forbidden-file-verification: 'true'
115          override-votes: true
116          gerrit-build-notbuilt-verified-value: 0
117          gerrit-build-successful-verified-value: 1
118          # yamllint disable-line rule:line-length
119          notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
120          # yamllint disable-line rule:line-length
121          failed-message: 'Checkstyle failed. No further verify jobs will be started.'
122          successful-message: 'checkstyle_success'
123          skip-vote:
124            successful: true
125            failed: false
126            unstable: false
127            notbuilt: false
128
129    builders:
130      - shell:
131          !include-raw-escape: include-raw-hicn-checkstyle.sh
132
133    publishers:
134      - fdio-infra-shiplogs:
135          maven-version: 'mvn33-new'
136          archive-artifacts: '/tmp/hicn-failed-unittests/*/* **/core'
137      - naginator:
138          rerun-unstable-builds: true
139          max-failed-builds: 1
140          fixed-delay: 90
141
142- job-template:
143    name: 'hicn-verify-{stream}-{os}'
144
145    project-type: freestyle
146    node: '{os}-us'
147    concurrent: true
148
149    build-discarder:
150      daysToKeep: '{build-days-to-keep}'
151      numToKeep: 100
152      artifactDaysToKeep: '{build-artifact-days-to-keep}'
153      artifactNumToKeep: '{build-artifact-num-to-keep}'
154
155    parameters:
156      - project-parameter:
157          project: '{project}'
158      - gerrit-parameter:
159          branch: '{branch}'
160      - os-parameter:
161          os: '{os}'
162      - repo-name-parameter:
163          repo-name: '{repo-stream-part}.{repo-os-part}'
164      - stream-parameter:
165          stream: '{stream}'
166
167    scm:
168      - gerrit-trigger-scm:
169          credentials-id: 'jenkins-gerrit-credentials'
170          refspec: '$GERRIT_REFSPEC'
171          choosing-strategy: 'gerrit'
172
173    wrappers:
174      - fdio-infra-wrappers:
175          build-timeout: 120
176
177    triggers:
178      - gerrit-trigger-checkstyle:
179          name: '{project}'
180          branch: '{branch}'
181
182    builders:
183      - shell:
184          !include-raw-escape:
185          - include-raw-hicn-build.sh
186
187    publishers:
188      - archive:
189          artifacts: >
190            **/build/*.rpm,
191            **/build/*.deb
192          allow-empty: 'true'
193          fingerprint: false
194          only-if-success: true
195          default-excludes: false
196      - fdio-infra-shiplogs:
197          maven-version: 'mvn33-new'
198
199- job-template:
200    name: 'hicn-merge-{stream}-{os}'
201
202    project-type: freestyle
203    node: '{os}-us'
204
205    build-discarder:
206      daysToKeep: '{build-days-to-keep}'
207      numToKeep: 100
208      artifactDaysToKeep: '{build-artifact-days-to-keep}'
209      artifactNumToKeep: '{build-artifact-num-to-keep}'
210
211    parameters:
212      - project-parameter:
213          project: '{project}'
214      - gerrit-parameter:
215          branch: '{branch}'
216      - os-parameter:
217          os: '{os}'
218      - maven-project-parameter:
219          maven: 'mvn33-new'
220      - maven-exec:
221          maven-version: 'mvn33-new'
222      - stream-parameter:
223          stream: 'release'
224      - repo-name-parameter:
225          repo-name: '{repo-stream-part}.{repo-os-part}'
226
227    scm:
228      - gerrit-trigger-scm:
229          credentials-id: 'jenkins-gerrit-credentials'
230          refspec: ''
231          choosing-strategy: 'default'
232
233    wrappers:
234      - fdio-infra-wrappers:
235          build-timeout: '{build-timeout}'
236
237    triggers:
238      - gerrit-trigger-patch-merged:
239          name: '{project}'
240          branch: '{branch}'
241
242    builders:
243      - config-file-provider:
244          files:
245            - file-id: '.packagecloud'
246              target: '/root'
247      - config-file-provider:
248          files:
249            - file-id: 'packagecloud_api'
250              target: '/root'
251      - maven-target:
252          maven-version: 'mvn33-new'
253          goals: '--version'
254          settings: 'hicn-settings'
255          settings-type: cfp
256          global-settings: 'global-settings'
257          global-settings-type: cfp
258      - shell:
259          !include-raw-escape:
260          - include-raw-hicn-checkstyle.sh
261      - shell:
262          !include-raw-escape:
263          - include-raw-hicn-build.sh
264      - provide-maven-settings:
265          settings-file: 'hicn-settings'
266          global-settings-file: 'global-settings'
267      - shell:
268          !include-raw-escape:
269          - ../scripts/packagecloud_push.sh
270      - shell:
271          !include-raw-escape:
272          - ../scripts/maven_push_functions.sh
273          - include-raw-hicn-maven-push.sh
274
275    publishers:
276      - archive:
277          artifacts: >
278            **/build/*.rpm,
279            **/build/*.deb
280          allow-empty: 'true'
281          fingerprint: false
282          only-if-success: true
283          default-excludes: false
284      - fdio-infra-shiplogs:
285          maven-version: 'mvn33-new'
286      - naginator:
287          rerun-unstable-builds: false
288          max-failed-builds: 1
289          fixed-delay: 90
290
291- project:
292    name: hicn-sonar
293    project: hicn
294    project-name: hicn
295    mvn-settings: hicn-settings
296    mvn-version: 'mvn33-new'
297    branch: master
298    build-node: ubuntu1604-basebuild-4c-4g
299    jobs:
300      - gerrit-maven-sonar
301
302- job-template:
303    name: 'hicn-sysrepo-plugin-verify-{stream}'
304
305    project-type: freestyle
306    node: '{os}-us'
307    concurrent: true
308
309    build-discarder:
310      daysToKeep: '{build-days-to-keep}'
311      numToKeep: 100
312      artifactDaysToKeep: '{build-artifact-days-to-keep}'
313      artifactNumToKeep: '{build-artifact-num-to-keep}'
314
315    parameters:
316      - project-parameter:
317          project: '{project}'
318      - gerrit-parameter:
319          branch: '{branch}'
320      - os-parameter:
321          os: '{os}'
322      - repo-name-parameter:
323          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
324      - stream-parameter:
325          stream: '{stream}'
326
327    scm:
328      - gerrit-trigger-scm:
329          credentials-id: 'jenkins-gerrit-credentials'
330          refspec: '$GERRIT_REFSPEC'
331          choosing-strategy: 'gerrit'
332
333    wrappers:
334      - fdio-infra-wrappers:
335          build-timeout: 120
336
337    triggers:
338      - gerrit:
339          server-name: 'Primary'
340          trigger-on:
341            - comment-added-contains-event:
342                comment-contains-value: 'verify_sysrepo'
343          projects:
344            - project-compare-type: 'ANT'
345              project-pattern: '{project}'
346              branches:
347                - branch-compare-type: 'ANT'
348                  branch-pattern: '**/{branch}'
349
350    builders:
351      - shell:
352          !include-raw-escape:
353          - include-raw-hicn-sysrepo-build.sh
354
355    publishers:
356      - archive:
357          artifacts: >
358            **/build/*.rpm,
359            **/build/*.deb
360          allow-empty: 'true'
361          fingerprint: false
362          only-if-success: true
363          default-excludes: false
364      - fdio-infra-shiplogs:
365          maven-version: 'mvn33-new'
366
367- job-template:
368    name: 'hicn-sysrepo-plugin-merge-{stream}'
369
370    project-type: freestyle
371    node: '{os}-us'
372
373    build-discarder:
374      daysToKeep: '{build-days-to-keep}'
375      numToKeep: 100
376      artifactDaysToKeep: '{build-artifact-days-to-keep}'
377      artifactNumToKeep: '{build-artifact-num-to-keep}'
378
379    parameters:
380      - project-parameter:
381          project: '{project}'
382      - gerrit-parameter:
383          branch: '{branch}'
384      - os-parameter:
385          os: '{os}'
386      - maven-project-parameter:
387          maven: 'mvn33-new'
388      - maven-exec:
389          maven-version: 'mvn33-new'
390      - stream-parameter:
391          stream: 'release'
392      - repo-name-parameter:
393          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
394
395    scm:
396      - gerrit-trigger-scm:
397          credentials-id: 'jenkins-gerrit-credentials'
398          refspec: ''
399          choosing-strategy: 'default'
400
401    wrappers:
402      - fdio-infra-wrappers:
403          build-timeout: '{build-timeout}'
404
405    triggers:
406      - gerrit:
407          server-name: 'Primary'
408          trigger-on:
409            - comment-added-contains-event:
410                comment-contains-value: 'merge_sysrepo'
411          projects:
412            - project-compare-type: 'ANT'
413              project-pattern: '{project}'
414              branches:
415                - branch-compare-type: 'ANT'
416                  branch-pattern: '**/{branch}'
417
418    builders:
419      - config-file-provider:
420          files:
421            - file-id: '.packagecloud'
422              target: '/root'
423      - config-file-provider:
424          files:
425            - file-id: 'packagecloud_api'
426              target: '/root'
427      - maven-target:
428          maven-version: 'mvn33-new'
429          goals: '--version'
430          settings: 'hicn-settings'
431          settings-type: cfp
432          global-settings: 'global-settings'
433          global-settings-type: cfp
434      - shell:
435          !include-raw-escape:
436          - include-raw-hicn-checkstyle.sh
437      - shell:
438          !include-raw-escape:
439          - include-raw-hicn-sysrepo-build.sh
440      - provide-maven-settings:
441          settings-file: 'hicn-settings'
442          global-settings-file: 'global-settings'
443      - shell:
444          !include-raw-escape:
445          - ../scripts/packagecloud_push.sh
446      - shell:
447          !include-raw-escape:
448          - ../scripts/maven_push_functions.sh
449          - include-raw-hicn-maven-push.sh
450
451    publishers:
452      - archive:
453          artifacts: >
454            **/build/*.rpm,
455            **/build/*.deb
456          allow-empty: 'true'
457          fingerprint: false
458          only-if-success: true
459          default-excludes: false
460      - fdio-infra-shiplogs:
461          maven-version: 'mvn33-new'
462      - naginator:
463          rerun-unstable-builds: false
464          max-failed-builds: 1
465          fixed-delay: 90
466