nsh_sfc.yaml revision 28ee80d6
1- project:
2    name: nsh_sfc
3    jobs:
4        - 'nsh_sfc-verify-{stream}-{os}'
5        - 'nsh_sfc-merge-{stream}-{os}'
6        - 'nsh_sfc-integration-{stream}-{os}'
7        - 'nsh_sfc-verify-image-{stream}-{os}'
8
9    project: 'nsh_sfc'
10    os:
11        - ubuntu1404:
12            repo-os-part: 'ubuntu.trusty.main'
13        - ubuntu1604:
14            repo-os-part: 'ubuntu.xenial.main'
15        - centos7:
16            repo-os-part: 'centos7'
17    stream:
18        - master:
19            branch: 'master'
20            repo-stream-part: 'master'
21        - '1609':
22            branch: 'stable/1609'
23            repo-stream-part: 'stable.1609'
24
25- job-template:
26    name: 'nsh_sfc-verify-{stream}-{os}'
27
28    project-type: freestyle
29    node: 'verify-{os}'
30    concurrent: true
31
32    logrotate:
33        daysToKeep: '{build-days-to-keep}'
34        numToKeep: '{build-num-to-keep}'
35        artifactDaysToKeep: '{build-artifact-days-to-keep}'
36        artifactNumToKeep: '{build-artifact-num-to-keep}'
37
38    parameters:
39        - project-parameter:
40            project: '{project}'
41        - gerrit-parameter:
42            branch: '{branch}'
43        - os-parameter:
44            os: '{os}'
45        - repo-name-parameter:
46            repo-name: '{repo-stream-part}.{repo-os-part}'
47
48    scm:
49        - gerrit-trigger-scm:
50            credentials-id: '{ssh-credentials}'
51            refspec: '$GERRIT_REFSPEC'
52            choosing-strategy: 'gerrit'
53
54    wrappers:
55        - ssh-agent-credentials:
56            users:
57                - '{ssh-credentials}'
58
59    triggers:
60        - gerrit-trigger-patch-submitted:
61            name: '{project}'
62            branch: '{branch}'
63
64    builders:
65        - maven-target:
66            maven-version: '{mvn33}'
67            goals: '--version'
68            settings: 'nsh_sfc-settings'
69            settings-type: cfp
70            global-settings: 'global-settings'
71            global-settings-type: cfp
72        - config-file-provider:
73            files:
74              - file-id: 'nsh_sfc-settings'
75                variable: 'SETTINGS_FILE'
76              - file-id: 'global-settings'
77                variable: 'GLOBAL_SETTINGS_FILE'
78        - shell:
79            !include-raw-escape: ../scripts/create_maven_env.sh
80        - inject:
81            properties-file: maven_env.txt
82        - shell:
83            !include-raw-escape:
84                - ../scripts/cleanup_vpp_plugin_dev_env.sh
85                - ../scripts/setup_vpp_plugin_dev_env.sh
86                - include-raw-nsh_sfc-build.sh
87                - ../scripts/cleanup_vpp_plugin_dev_env.sh
88
89- job-template:
90    name: 'nsh_sfc-verify-image-{stream}-{os}'
91
92    project-type: freestyle
93    node: 'verify-image-{os}'
94    concurrent: true
95
96    logrotate:
97        daysToKeep: '{build-days-to-keep}'
98        numToKeep: '{build-num-to-keep}'
99        artifactDaysToKeep: '{build-artifact-days-to-keep}'
100        artifactNumToKeep: '{build-artifact-num-to-keep}'
101
102    parameters:
103        - project-parameter:
104            project: '{project}'
105        - gerrit-parameter:
106            branch: '{branch}'
107        - os-parameter:
108            os: '{os}'
109        - repo-name-parameter:
110            repo-name: '{repo-stream-part}.{repo-os-part}'
111
112    scm:
113        - gerrit-trigger-scm:
114            credentials-id: '{ssh-credentials}'
115            refspec: '$GERRIT_REFSPEC'
116            choosing-strategy: 'gerrit'
117
118    wrappers:
119        - ssh-agent-credentials:
120            users:
121                - '{ssh-credentials}'
122
123    triggers:
124        - gerrit:
125            server-name: 'Primary'
126            trigger-on:
127                - comment-added-contains-event:
128                    comment-contains-value: 'verify-images'
129            projects:
130              - project-compare-type: 'ANT'
131                project-pattern: '{project}'
132                branches:
133                  - branch-compare-type: 'ANT'
134                    branch-pattern: '**/{branch}'
135            skip-vote:
136                successful: true
137                failed: true
138                unstable: true
139                notbuilt: true
140
141    builders:
142        - maven-target:
143            maven-version: '{mvn33}'
144            goals: '--version'
145            settings: 'nsh_sfc-settings'
146            settings-type: cfp
147            global-settings: 'global-settings'
148            global-settings-type: cfp
149        - config-file-provider:
150            files:
151              - file-id: 'nsh_sfc-settings'
152                variable: 'SETTINGS_FILE'
153              - file-id: 'global-settings'
154                variable: 'GLOBAL_SETTINGS_FILE'
155        - shell:
156            !include-raw-escape: ../scripts/create_maven_env.sh
157        - inject:
158            properties-file: maven_env.txt
159        - shell:
160            !include-raw-escape:
161                - ../scripts/cleanup_vpp_plugin_dev_env.sh
162                - ../scripts/setup_vpp_plugin_dev_env.sh
163                - include-raw-nsh_sfc-build.sh
164                - ../scripts/cleanup_vpp_plugin_dev_env.sh
165
166- job-template:
167    name: 'nsh_sfc-merge-{stream}-{os}'
168
169    project-type: freestyle
170    node: 'merge-{os}'
171
172    logrotate:
173        daysToKeep: '{build-days-to-keep}'
174        numToKeep: '{build-num-to-keep}'
175        artifactDaysToKeep: '{build-artifact-days-to-keep}'
176        artifactNumToKeep: '{build-artifact-num-to-keep}'
177
178    parameters:
179        - project-parameter:
180            project: '{project}'
181        - gerrit-parameter:
182            branch: '{branch}'
183        - os-parameter:
184            os: '{os}'
185        - repo-name-parameter:
186            repo-name: '{repo-stream-part}.{repo-os-part}'
187
188    scm:
189        - gerrit-trigger-scm:
190            credentials-id: '{ssh-credentials}'
191            refspec: ''
192            choosing-strategy: 'default'
193
194    wrappers:
195        - ssh-agent-credentials:
196            users:
197                - '{ssh-credentials}'
198
199    triggers:
200        - gerrit-trigger-patch-merged:
201            name: '{project}'
202            branch: '{branch}'
203
204    builders:
205        - config-file-provider:
206            files:
207              - file-id: 'nsh_sfc-settings'
208                variable: 'SETTINGS_FILE'
209              - file-id: 'global-settings'
210                variable: 'GLOBAL_SETTINGS_FILE'
211        - shell:
212            !include-raw-escape: ../scripts/create_maven_env.sh
213        - inject:
214            properties-file: maven_env.txt
215        - shell:
216            !include-raw-escape:
217                - ../scripts/cleanup_vpp_plugin_dev_env.sh
218                - ../scripts/setup_vpp_plugin_dev_env.sh
219                - include-raw-nsh_sfc-build.sh
220                - ../scripts/cleanup_vpp_plugin_dev_env.sh
221
222- job-template:
223    name: 'nsh_sfc-integration-{stream}-{os}'
224
225    project-type: freestyle
226    node: 'merge-{os}'
227
228    logrotate:
229        daysToKeep: '{build-days-to-keep}'
230        numToKeep: '{build-num-to-keep}'
231        artifactDaysToKeep: '{build-artifact-days-to-keep}'
232        artifactNumToKeep: '{build-artifact-num-to-keep}'
233
234    parameters:
235        - project-parameter:
236            project: '{project}'
237        - gerrit-parameter:
238            branch: '{branch}'
239        - os-parameter:
240            os: '{os}'
241        - repo-name-parameter:
242            repo-name: '{repo-stream-part}.{repo-os-part}'
243
244    scm:
245        - gerrit-trigger-scm:
246            credentials-id: '{ssh-credentials}'
247            refspec: ''
248            choosing-strategy: 'default'
249
250    wrappers:
251        - ssh-agent-credentials:
252            users:
253                - '{ssh-credentials}'
254
255    triggers:
256        - reverse:
257            jobs: 'vpp-merge-{stream}-{os},nsh_sfc-merge-{stream}-{os}'
258            result: 'success'
259
260    builders:
261        - config-file-provider:
262            files:
263              - file-id: 'nsh_sfc-settings'
264                variable: 'SETTINGS_FILE'
265              - file-id: 'global-settings'
266                variable: 'GLOBAL_SETTINGS_FILE'
267        - shell:
268            !include-raw-escape: ../scripts/create_maven_env.sh
269        - inject:
270            properties-file: maven_env.txt
271        - shell:
272            !include-raw-escape:
273                - ../scripts/cleanup_vpp_plugin_dev_env.sh
274                - ../scripts/setup_vpp_plugin_dev_env.sh
275                - include-raw-nsh_sfc-build.sh
276                - ../scripts/cleanup_vpp_plugin_dev_env.sh
277                - ../scripts/maven_push_functions.sh
278                - include-raw-nsh_sfc-pkg-push.sh
279