Create new stream 2001 for sweetcomb project
[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       - '2001':
36           branch: 'stable/2001'
37           repo-stream-part: 'stable.2001'
38       - '1908':
39           branch: 'stable/1908'
40           repo-stream-part: 'stable.1908'
41       - '1904':
42           branch: 'stable/1904'
43           repo-stream-part: 'stable.1904'
44       - '1901':
45           branch: 'stable/1901'
46           repo-stream-part: 'stable.1901'
47       - vom:
48           branch: 'vom'
49           repo-stream-part: 'vom'
50
51 - project:
52     name: sweetcomb-view
53     views:
54       - project-view
55     project-name: sweetcomb
56
57 - job-template:
58     name: 'sweetcomb-verify-{stream}-{os}'
59
60     project-type: freestyle
61     node: '{os}-us'
62     concurrent: true
63
64     build-discarder:
65       daysToKeep: '{build-days-to-keep}'
66       numToKeep: 100
67       artifactDaysToKeep: '{build-artifact-days-to-keep}'
68       artifactNumToKeep: '{build-artifact-num-to-keep}'
69
70     parameters:
71       - project-parameter:
72           project: '{project}'
73       - gerrit-parameter:
74           branch: '{branch}'
75       - os-parameter:
76           os: '{os}'
77       - repo-name-parameter:
78           repo-name: '{repo-stream-part}.{repo-os-part}'
79       - stream-parameter:
80           stream: '{stream}'
81       - string:
82           name: ARCHIVE_ARTIFACTS
83           default: '{archive-artifacts}'
84           description: Artifacts to archive to the logs server.
85
86     scm:
87       - gerrit-trigger-scm:
88           credentials-id: 'jenkins-gerrit-credentials'
89           refspec: '$GERRIT_REFSPEC'
90           choosing-strategy: 'gerrit'
91
92     wrappers:
93       - fdio-infra-wrappers:
94           build-timeout: 120
95
96     triggers:
97       - gerrit-trigger-checkstyle:
98           name: '{project}'
99           branch: '{branch}'
100       - gerrit-trigger-patch-submitted:
101           name: '{project}'
102           branch: '{branch}'
103
104     builders:
105       - config-file-provider:
106           files:
107             - file-id: '.packagecloud'
108               target: '/root'
109       - config-file-provider:
110           files:
111             - file-id: 'packagecloud_api'
112               target: '/root'
113       - shell:
114           !include-raw-escape: include-raw-sweetcomb-checkstyle.sh
115       - shell:
116           !include-raw-escape:
117           - include-raw-sweetcomb-build.sh
118     publishers:
119       - lf-infra-publish
120       - naginator:
121           rerun-unstable-builds: false
122           max-failed-builds: 1
123           fixed-delay: 90
124
125 - job-template:
126     name: 'sweetcomb-merge-{stream}-{os}'
127
128     project-type: freestyle
129     node: '{os}-us'
130
131     build-discarder:
132       daysToKeep: '{build-days-to-keep}'
133       numToKeep: 100
134       artifactDaysToKeep: '{build-artifact-days-to-keep}'
135       artifactNumToKeep: '{build-artifact-num-to-keep}'
136
137     parameters:
138       - project-parameter:
139           project: '{project}'
140       - gerrit-parameter:
141           branch: '{branch}'
142       - os-parameter:
143           os: '{os}'
144       - stream-parameter:
145           stream: '{stream}'
146       - repo-name-parameter:
147           repo-name: '{repo-stream-part}.{repo-os-part}'
148       - string:
149           name: ARCHIVE_ARTIFACTS
150           default: '{archive-artifacts}'
151           description: Artifacts to archive to the logs server.
152
153     scm:
154       - gerrit-trigger-scm:
155           credentials-id: 'jenkins-gerrit-credentials'
156           refspec: ''
157           choosing-strategy: 'default'
158
159     wrappers:
160       - fdio-infra-wrappers:
161           build-timeout: '{build-timeout}'
162
163     triggers:
164       - gerrit-trigger-patch-merged:
165           name: '{project}'
166           branch: '{branch}'
167
168     builders:
169       - config-file-provider:
170           files:
171             - file-id: '.packagecloud'
172               target: '/root'
173       - config-file-provider:
174           files:
175             - file-id: 'packagecloud_api'
176               target: '/root'
177       - shell:
178           !include-raw-escape: include-raw-sweetcomb-checkstyle.sh
179       - shell:
180           !include-raw-escape:
181           - include-raw-sweetcomb-build.sh
182       - shell:
183           !include-raw-escape:
184           - ../scripts/packagecloud_push.sh
185     publishers:
186       - lf-infra-publish
187       - naginator:
188           rerun-unstable-builds: false
189           max-failed-builds: 1
190           fixed-delay: 90
191
192 - job-template:
193     name: 'sweetcomb-test-{stream}-ubuntu1604'
194
195     project-type: freestyle
196     node: 'ubuntu1604-us'
197     concurrent: true
198
199     build-discarder:
200       daysToKeep: '{build-days-to-keep}'
201       numToKeep: 100
202       artifactDaysToKeep: '{build-artifact-days-to-keep}'
203       artifactNumToKeep: '{build-artifact-num-to-keep}'
204
205     parameters:
206       - project-parameter:
207           project: '{project}'
208       - gerrit-parameter:
209           branch: '{branch}'
210       - os-parameter:
211           os: 'ubuntu1604'
212       - repo-name-parameter:
213           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
214       - stream-parameter:
215           stream: '{stream}'
216
217     scm:
218       - gerrit-trigger-scm:
219           credentials-id: 'jenkins-gerrit-credentials'
220           refspec: '$GERRIT_REFSPEC'
221           choosing-strategy: 'gerrit'
222
223     wrappers:
224       - fdio-infra-wrappers:
225           build-timeout: 120
226
227     triggers:
228       - gerrit-trigger-patch-submitted:
229           name: '{project}'
230           branch: '{branch}'
231
232     builders:
233       - config-file-provider:
234           files:
235             - file-id: '.packagecloud'
236               target: '/root'
237       - config-file-provider:
238           files:
239             - file-id: 'packagecloud_api'
240               target: '/root'
241       - shell:
242           !include-raw-escape:
243           - include-raw-sweetcomb-build.sh
244           - include-raw-sweetcomb-test.sh
245     publishers:
246       - lf-infra-publish
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