Merge "Set settings to hicn-settings."
[ci-management.git] / jjb / hicn / hicn.yaml
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-view
39     views:
40       - project-view
41     project-name: hicn
42
43 - job-template:
44     name: 'hicn-checkstyle-verify-{stream}'
45
46     project-type: freestyle
47     node: '{os}-us'
48     concurrent: true
49
50     build-discarder:
51       daysToKeep: '{build-days-to-keep}'
52       numToKeep: '{build-num-to-keep}'
53       artifactDaysToKeep: '{build-artifact-days-to-keep}'
54       artifactNumToKeep: '{build-artifact-num-to-keep}'
55
56     parameters:
57       - project-parameter:
58           project: '{project}'
59       - gerrit-parameter:
60           branch: '{branch}'
61       - os-parameter:
62           os: '{os}'
63       - repo-name-parameter:
64           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
65
66     scm:
67       - gerrit-trigger-scm:
68           credentials-id: 'jenkins-gerrit-credentials'
69           refspec: '$GERRIT_REFSPEC'
70           choosing-strategy: 'gerrit'
71
72     wrappers:
73       - fdio-infra-wrappers:
74           build-timeout: '{build-timeout}'
75
76     triggers:
77       - gerrit:
78           server-name: 'Primary'
79           trigger-on:
80             - patchset-created-event:
81                 exclude-drafts: 'true'
82                 exclude-trivial-rebase: 'false'
83                 exclude-no-code-change: 'true'
84             - draft-published-event
85             - comment-added-contains-event:
86                 comment-contains-value: 'checkstylecheck'
87             - comment-added-contains-event:
88                 comment-contains-value: 'docsonly'
89             - comment-added-contains-event:
90                 comment-contains-value: 'recheck'
91             - comment-added-contains-event:
92                 comment-contains-value: 'reverify'
93           projects:
94             - project-compare-type: 'ANT'
95               project-pattern: '{project}'
96               branches:
97                 - branch-compare-type: 'ANT'
98                   branch-pattern: '**/{branch}'
99               file-paths:
100                 - compare-type: REG_EXP
101                   pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
102               disable-strict-forbidden-file-verification: 'true'
103           override-votes: true
104           gerrit-build-notbuilt-verified-value: 0
105           gerrit-build-successful-verified-value: 1
106           # yamllint disable-line rule:line-length
107           notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
108           # yamllint disable-line rule:line-length
109           failed-message: 'Checkstyle failed. No further verify jobs will be started.'
110           successful-message: 'checkstyle_success'
111           skip-vote:
112             successful: true
113             failed: false
114             unstable: false
115             notbuilt: false
116
117     builders:
118       - shell:
119           !include-raw-escape: include-raw-hicn-checkstyle.sh
120
121     publishers:
122       - fdio-infra-shiplogs:
123           maven-version: 'mvn33-new'
124           archive-artifacts: '/tmp/hicn-failed-unittests/*/* **/core'
125       - naginator:
126           rerun-unstable-builds: true
127           max-failed-builds: 1
128           fixed-delay: 90
129
130 - job-template:
131     name: 'hicn-verify-{stream}-{os}'
132
133     project-type: freestyle
134     node: '{os}-us'
135     concurrent: true
136
137     build-discarder:
138       daysToKeep: '{build-days-to-keep}'
139       numToKeep: 100
140       artifactDaysToKeep: '{build-artifact-days-to-keep}'
141       artifactNumToKeep: '{build-artifact-num-to-keep}'
142
143     parameters:
144       - project-parameter:
145           project: '{project}'
146       - gerrit-parameter:
147           branch: '{branch}'
148       - os-parameter:
149           os: '{os}'
150       - repo-name-parameter:
151           repo-name: '{repo-stream-part}.{repo-os-part}'
152       - stream-parameter:
153           stream: '{stream}'
154
155     scm:
156       - gerrit-trigger-scm:
157           credentials-id: 'jenkins-gerrit-credentials'
158           refspec: '$GERRIT_REFSPEC'
159           choosing-strategy: 'gerrit'
160
161     wrappers:
162       - fdio-infra-wrappers:
163           build-timeout: 120
164
165     triggers:
166       - gerrit-trigger-checkstyle:
167           name: '{project}'
168           branch: '{branch}'
169
170     builders:
171       - shell:
172           !include-raw-escape:
173           - include-raw-hicn-build.sh
174
175     publishers:
176       - archive:
177           artifacts: >
178             **/build/*.rpm,
179             **/build/*.deb
180           allow-empty: 'true'
181           fingerprint: false
182           only-if-success: true
183           default-excludes: false
184       - fdio-infra-shiplogs:
185           maven-version: 'mvn33-new'
186
187 - job-template:
188     name: 'hicn-merge-{stream}-{os}'
189
190     project-type: freestyle
191     node: '{os}-us'
192
193     build-discarder:
194       daysToKeep: '{build-days-to-keep}'
195       numToKeep: 100
196       artifactDaysToKeep: '{build-artifact-days-to-keep}'
197       artifactNumToKeep: '{build-artifact-num-to-keep}'
198
199     parameters:
200       - project-parameter:
201           project: '{project}'
202       - gerrit-parameter:
203           branch: '{branch}'
204       - os-parameter:
205           os: '{os}'
206       - maven-project-parameter:
207           maven: 'mvn33-new'
208       - maven-exec:
209           maven-version: 'mvn33-new'
210       - stream-parameter:
211           stream: 'release'
212       - repo-name-parameter:
213           repo-name: '{repo-stream-part}.{repo-os-part}'
214
215     scm:
216       - gerrit-trigger-scm:
217           credentials-id: 'jenkins-gerrit-credentials'
218           refspec: ''
219           choosing-strategy: 'default'
220
221     wrappers:
222       - fdio-infra-wrappers:
223           build-timeout: '{build-timeout}'
224
225     triggers:
226       - gerrit-trigger-patch-merged:
227           name: '{project}'
228           branch: '{branch}'
229
230     builders:
231       - config-file-provider:
232           files:
233             - file-id: '.packagecloud'
234               target: '/root'
235       - config-file-provider:
236           files:
237             - file-id: 'packagecloud_api'
238               target: '/root'
239       - maven-target:
240           maven-version: 'mvn33-new'
241           goals: '--version'
242           settings: 'hicn-settings'
243           settings-type: cfp
244           global-settings: 'global-settings'
245           global-settings-type: cfp
246       - shell:
247           !include-raw-escape:
248           - include-raw-hicn-checkstyle.sh
249       - shell:
250           !include-raw-escape:
251           - include-raw-hicn-build.sh
252       - provide-maven-settings:
253           settings-file: 'hicn-settings'
254           global-settings-file: 'global-settings'
255       - shell:
256           !include-raw-escape:
257           - ../scripts/packagecloud_push.sh
258
259     publishers:
260       - archive:
261           artifacts: >
262             **/build/*.rpm,
263             **/build/*.deb
264           allow-empty: 'true'
265           fingerprint: false
266           only-if-success: true
267           default-excludes: false
268       - fdio-infra-shiplogs:
269           maven-version: 'mvn33-new'
270       - naginator:
271           rerun-unstable-builds: false
272           max-failed-builds: 1
273           fixed-delay: 90
274
275 - project:
276     name: 'hicn-sonar'
277     project: hicn
278     project-name: hicn
279     mvn-settings: hicn
280     mvn-version: 'mvn33-new'
281     branch: master
282     build-node: ubuntu1604-builder-4c-4g
283     jobs:
284       - gerrit-maven-sonar