2c28655b8b3f8a03376f4499a2abeb868add3801
[ci-management.git] / jjb / vsap / vsap.yaml
1 ---
2 #########################################################################
3 #
4 # Copyright (c) 2019 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: vsap
20     jobs:
21       - 'vsap-verify-{stream}-{os}-{mode}'
22       - 'vsap-merge-{stream}-{os}-{mode}'
23
24     project: 'vsap'
25     os: ubuntu1804
26     stream:
27       - '2005':
28           branch: 'stable/2005'
29     mode:
30       - vcl
31       - ldp
32
33 - project:
34     name: vsap-view
35     views:
36       - project-view
37     project-name: vsap
38
39 - job-template:
40     name: 'vsap-verify-{stream}-{os}-{mode}'
41
42     project-type: freestyle
43     node: 'builder-{os}-prod-x86_64'
44     concurrent: true
45
46     properties:
47       - lf-infra-properties:
48           build-days-to-keep: "{build-days-to-keep}"
49
50     parameters:
51       - project-parameter:
52           project: '{project}'
53       - gerrit-parameter:
54           branch: '{branch}'
55       - gerrit-refspec-parameter
56       - os-parameter:
57           os: '{os}'
58       - stream-parameter:
59           stream: '{stream}'
60       - mode-parameter:
61           mode: '{mode}'
62
63     scm:
64       - gerrit-trigger-scm-recursive:
65           credentials-id: 'jenkins-gerrit-credentials'
66           refspec: '$GERRIT_REFSPEC'
67           choosing-strategy: 'gerrit'
68           submodule-recursive: true
69           submodule:
70             recursive: true
71
72     wrappers:
73       - fdio-infra-wrappers:
74           build-timeout: 120
75
76     triggers:
77       - gerrit-trigger-patch-submitted:
78           name: '{project}'
79           branch: '{branch}'
80
81     builders:
82       - shell:
83           !include-raw-escape:
84           - include-raw-vsap-build.sh
85
86     publishers:
87       - fdio-infra-publish
88
89 - job-template:
90     name: 'vsap-merge-{stream}-{os}-{mode}'
91
92     project-type: freestyle
93     node: 'builder-{os}-prod-x86_64'
94
95     properties:
96       - lf-infra-properties:
97           build-days-to-keep: "{build-days-to-keep}"
98
99     parameters:
100       - project-parameter:
101           project: '{project}'
102       - gerrit-parameter:
103           branch: '{branch}'
104       - gerrit-refspec-parameter
105       - os-parameter:
106           os: '{os}'
107       - stream-parameter:
108           stream: '{stream}'
109       - mode-parameter:
110           mode: '{mode}'
111
112     scm:
113       - gerrit-trigger-scm-recursive:
114           credentials-id: 'jenkins-gerrit-credentials'
115           refspec: '$GERRIT_REFSPEC'
116           choosing-strategy: 'gerrit'
117           submodule-recursive: true
118           submodule:
119             recursive: true
120
121     wrappers:
122       - fdio-infra-wrappers:
123           build-timeout: '{build-timeout}'
124
125     triggers:
126       - gerrit-trigger-patch-merged:
127           name: '{project}'
128           branch: '{branch}'
129
130     builders:
131       - config-file-provider:
132           files:
133             - file-id: '.packagecloud'
134               target: '/root/.packagecloud'
135       - config-file-provider:
136           files:
137             - file-id: 'packagecloud_api'
138               target: '/root/packagecloud_api'
139       - shell:
140           !include-raw-escape:
141           - include-raw-vsap-build.sh
142       - shell:
143           !include-raw-escape:
144           - ../scripts/packagecloud_push.sh
145
146     publishers:
147       - fdio-infra-publish
148
149 - project:
150     name: vsap-info
151     project-name: vsap
152     jobs:
153       - gerrit-info-yaml-verify
154     build-node: centos7-builder-2c-2g
155     project: vsap
156     branch: master
157
158 - project:
159     name: vsap-sonar
160     project: vsap
161     project-name: vsap
162     mvn-settings: vsap-settings
163     sonarcloud: true
164     sonarcloud-project-organization: '{sonarcloud_project_organization}'
165     sonarcloud-api-token: '{sonarcloud_api_token}'
166     sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
167     branch: master
168     build-node: centos7-docker-4c-4g
169     jobs:
170       - gerrit-maven-sonar