Modify Sweetcomb artifacts
[ci-management.git] / jjb / sweetcomb / sweetcomb.yaml
1 ---
2 #########################################################################
3 #
4 # Copyright (c) 2018 Intel and/or its affiliates.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at:
8 #
9 #     http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #########################################################################
17
18 - project:
19     name: sweetcomb
20     jobs:
21       - 'sweetcomb-verify-{stream}-{os}'
22       - 'sweetcomb-merge-{stream}-{os}'
23       # - 'sweetcomb-test-{stream}-ubuntu1604'
24
25     project: 'sweetcomb'
26     os:
27       - ubuntu1604:
28           repo-os-part: 'ubuntu.xenial.main'
29       - centos7:
30           repo-os-part: 'centos7'
31     stream:
32       - master:
33           branch: 'master'
34           repo-stream-part: 'master'
35       - '1908':
36           branch: 'stable/1908'
37           repo-stream-part: 'stable.1908'
38       - '1904':
39           branch: 'stable/1904'
40           repo-stream-part: 'stable.1904'
41       - '1901':
42           branch: 'stable/1901'
43           repo-stream-part: 'stable.1901'
44       - vom:
45           branch: 'vom'
46           repo-stream-part: 'vom'
47
48 - project:
49     name: sweetcomb-view
50     views:
51       - project-view
52     project-name: sweetcomb
53
54 - job-template:
55     name: 'sweetcomb-verify-{stream}-{os}'
56
57     project-type: freestyle
58     node: '{os}-us'
59     concurrent: true
60
61     build-discarder:
62       daysToKeep: '{build-days-to-keep}'
63       numToKeep: 100
64       artifactDaysToKeep: '{build-artifact-days-to-keep}'
65       artifactNumToKeep: '{build-artifact-num-to-keep}'
66
67     parameters:
68       - project-parameter:
69           project: '{project}'
70       - gerrit-parameter:
71           branch: '{branch}'
72       - os-parameter:
73           os: '{os}'
74       - repo-name-parameter:
75           repo-name: '{repo-stream-part}.{repo-os-part}'
76       - stream-parameter:
77           stream: '{stream}'
78       - string:
79           name: ARCHIVE_ARTIFACTS
80           default: '{archive-artifacts}'
81           description: Artifacts to archive to the logs server.
82
83     scm:
84       - gerrit-trigger-scm:
85           credentials-id: 'jenkins-gerrit-credentials'
86           refspec: '$GERRIT_REFSPEC'
87           choosing-strategy: 'gerrit'
88
89     wrappers:
90       - fdio-infra-wrappers:
91           build-timeout: 120
92
93     triggers:
94       - gerrit-trigger-checkstyle:
95           name: '{project}'
96           branch: '{branch}'
97       - gerrit-trigger-patch-submitted:
98           name: '{project}'
99           branch: '{branch}'
100
101     builders:
102       - config-file-provider:
103           files:
104             - file-id: '.packagecloud'
105               target: '/root'
106       - config-file-provider:
107           files:
108             - file-id: 'packagecloud_api'
109               target: '/root'
110       - shell:
111           !include-raw-escape: include-raw-sweetcomb-checkstyle.sh
112       - shell:
113           !include-raw-escape:
114           - include-raw-sweetcomb-build.sh
115     publishers:
116       - fdio-infra-shiplogs:
117           maven-version: 'mvn33-new'
118       - naginator:
119           rerun-unstable-builds: false
120           max-failed-builds: 1
121           fixed-delay: 90
122
123 - job-template:
124     name: 'sweetcomb-merge-{stream}-{os}'
125
126     project-type: freestyle
127     node: '{os}-us'
128
129     build-discarder:
130       daysToKeep: '{build-days-to-keep}'
131       numToKeep: 100
132       artifactDaysToKeep: '{build-artifact-days-to-keep}'
133       artifactNumToKeep: '{build-artifact-num-to-keep}'
134
135     parameters:
136       - project-parameter:
137           project: '{project}'
138       - gerrit-parameter:
139           branch: '{branch}'
140       - os-parameter:
141           os: '{os}'
142       - stream-parameter:
143           stream: '{stream}'
144       - repo-name-parameter:
145           repo-name: '{repo-stream-part}.{repo-os-part}'
146       - string:
147           name: ARCHIVE_ARTIFACTS
148           default: '{archive-artifacts}'
149           description: Artifacts to archive to the logs server.
150
151     scm:
152       - gerrit-trigger-scm:
153           credentials-id: 'jenkins-gerrit-credentials'
154           refspec: ''
155           choosing-strategy: 'default'
156
157     wrappers:
158       - fdio-infra-wrappers:
159           build-timeout: '{build-timeout}'
160
161     triggers:
162       - gerrit-trigger-patch-merged:
163           name: '{project}'
164           branch: '{branch}'
165
166     builders:
167       - config-file-provider:
168           files:
169             - file-id: '.packagecloud'
170               target: '/root'
171       - config-file-provider:
172           files:
173             - file-id: 'packagecloud_api'
174               target: '/root'
175       - shell:
176           !include-raw-escape: include-raw-sweetcomb-checkstyle.sh
177       - shell:
178           !include-raw-escape:
179           - include-raw-sweetcomb-build.sh
180       - shell:
181           !include-raw-escape:
182           - ../scripts/packagecloud_push.sh
183     publishers:
184       - fdio-infra-shiplogs:
185           maven-version: 'mvn33-new'
186       - naginator:
187           rerun-unstable-builds: false
188           max-failed-builds: 1
189           fixed-delay: 90
190
191 - job-template:
192     name: 'sweetcomb-test-{stream}-ubuntu1604'
193
194     project-type: freestyle
195     node: 'ubuntu1604-us'
196     concurrent: true
197
198     build-discarder:
199       daysToKeep: '{build-days-to-keep}'
200       numToKeep: 100
201       artifactDaysToKeep: '{build-artifact-days-to-keep}'
202       artifactNumToKeep: '{build-artifact-num-to-keep}'
203
204     parameters:
205       - project-parameter:
206           project: '{project}'
207       - gerrit-parameter:
208           branch: '{branch}'
209       - os-parameter:
210           os: 'ubuntu1604'
211       - repo-name-parameter:
212           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
213       - stream-parameter:
214           stream: '{stream}'
215
216     scm:
217       - gerrit-trigger-scm:
218           credentials-id: 'jenkins-gerrit-credentials'
219           refspec: '$GERRIT_REFSPEC'
220           choosing-strategy: 'gerrit'
221
222     wrappers:
223       - fdio-infra-wrappers:
224           build-timeout: 120
225
226     triggers:
227       - gerrit-trigger-patch-submitted:
228           name: '{project}'
229           branch: '{branch}'
230
231     builders:
232       - config-file-provider:
233           files:
234             - file-id: '.packagecloud'
235               target: '/root'
236       - config-file-provider:
237           files:
238             - file-id: 'packagecloud_api'
239               target: '/root'
240       - shell:
241           !include-raw-escape:
242           - include-raw-sweetcomb-build.sh
243           - include-raw-sweetcomb-test.sh
244     publishers:
245       - fdio-infra-shiplogs:
246           maven-version: 'mvn33-new'
247       - naginator:
248           rerun-unstable-builds: false
249           max-failed-builds: 1
250           fixed-delay: 90
251
252 - project:
253     name: sweetcomb-info
254     project-name: sweetcomb
255     jobs:
256       - gerrit-info-yaml-verify
257     build-node: centos7-builder-4c-4g
258     project: sweetcomb
259     branch: master