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