3 name: distribution-jobs
6 name: 'distribution-verify-{stream}'
8 project-type: freestyle
9 node: centos7-java-builder-2c-8g
14 - opendaylight-infra-properties:
15 build-days-to-keep: '{build-days-to-keep}'
18 - opendaylight-infra-parameters:
19 os-cloud: '{os-cloud}'
22 refspec: 'refs/heads/{branch}'
23 artifacts: '{archive-artifacts}'
24 - integration-patch-refspec:
25 branch: '$GERRIT_REFSPEC'
29 refspec: '$PATCHREFSPEC'
30 choosing-strategy: 'gerrit'
33 - opendaylight-infra-wrappers:
34 build-timeout: '{build-timeout}'
37 - gerrit-trigger-patch-submitted:
38 server: '{server-name}'
44 - wipe-org-opendaylight-repo
45 - provide-maven-settings:
46 global-settings-file: 'global-settings'
47 settings-file: 'integration-settings'
52 clean install dependency:tree -DoutputFile=dependency_tree.txt
55 {opendaylight-infra-mvn-opts}
57 - '-Xmx1024m -XX:MaxPermSize=256m'
58 settings: integration-settings
60 global-settings: global-settings
61 global-settings-type: cfp
68 email-recipients: '{email-recipients}'
69 email-prefix: '[int/dist]'
72 name: 'distribution-merge-{stream}'
74 # Need to keep jobs that deploy to Nexus at end of build as Maven
75 # projects. Maybe reconsider this once upstream moves deploy to a
77 # https://issues.apache.org/jira/browse/MNG-5666
84 - opendaylight-infra-properties:
85 build-days-to-keep: '{build-days-to-keep}'
88 - opendaylight-infra-parameters:
89 os-cloud: '{os-cloud}'
92 refspec: 'refs/heads/{branch}'
93 artifacts: '{archive-artifacts}'
94 - distribution-karaf-version:
95 karaf-version: '{karaf-version}'
100 choosing-strategy: 'default'
103 - opendaylight-infra-wrappers:
104 build-timeout: '{build-timeout}'
107 - gerrit-trigger-patch-merged:
108 server-name: '{server-name}'
109 name: 'integration/distribution'
113 - wipe-org-opendaylight-repo
114 - jacoco-nojava-workaround
115 - provide-maven-settings:
116 global-settings-file: 'global-settings'
117 settings-file: 'integration-settings'
118 - integration-set-variables
119 - distribute-build-url:
120 path: '$KARAF_ARTIFACT/src/main/assembly'
126 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
127 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
129 -Djenkins -Dmerge -Dstream={stream}
130 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
131 settings: 'integration-settings'
133 global-settings: 'global-settings'
134 global-settings-type: cfp
138 condition-kind: file-exists
139 condition-filename: deploy-site.xml
140 condition-basedir: workspace
142 # The strategy here is intentional to run Maven site:deploy twice
143 # once using regular pom.xml to produce a staged-site which is
144 # then used by deploy-site.xml to push to Nexus. This is a
145 # workaround to Maven Site's default linking code which creates
146 # incorrect URLs for sites due to auto-detection assuming your
147 # project is configured in a certain way which ODL is not.
150 maven-version: 'mvn33'
152 goals: 'site:deploy -V -B -Dstream={stream}'
155 settings: 'integration-settings'
157 global-settings: 'global-settings'
158 global-settings-type: cfp
160 maven-version: 'mvn33'
162 goals: 'site:deploy -V -B -Dstream={stream}'
165 settings: 'integration-settings'
167 global-settings: 'global-settings'
168 global-settings-type: cfp
169 - integration-compare-distributions
170 # TODO: the output of the above command is not *friendly* for the reader because the most important info
171 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
172 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
181 deploy-unstable: false
184 - email-notification:
185 email-recipients: '{email-recipients}'
186 email-prefix: '[int/dist]'
189 name: 'distribution-check-{stream}'
190 # Like a {project}-distribution-check, but few steps less as there is no upstream project involved.
193 project-type: freestyle
199 - opendaylight-infra-properties:
200 build-days-to-keep: '{build-days-to-keep}'
203 - opendaylight-infra-parameters:
204 os-cloud: '{os-cloud}'
207 refspec: 'refs/heads/{branch}'
208 artifacts: '{archive-artifacts}'
209 - distribution-karaf-version:
210 karaf-version: '{karaf-version}'
215 - integration-gerrit-scm:
216 basedir: 'distribution'
217 refspec: '$GERRIT_REFSPEC'
221 - opendaylight-infra-wrappers:
222 # Distro-check jobs typically run within 10 - 30 minutes
223 # with 45 minutes being the occassional edge case.
224 # enforce a 60 minute limit to ensure stuck jobs get
226 # Double that as Karaf 3+4 may take longer.
230 - gerrit-trigger-patch-submitted:
231 server: '{server-name}'
237 - distribution-check-wipe
238 - distribution-check-build-project:
239 pom: 'distribution/pom.xml'
240 mvn-opts: '{opendaylight-infra-mvn-opts}'
241 - distribution-check-verify-groupid:
242 gerrit-project: 'integration'
243 # No need to repeat with SFT as distribution-verify has that covered.
244 - integration-upload-distribution:
245 dist-pom: distribution/pom.xml
246 - integration-distribution-check
249 - email-notification:
250 email-recipients: '{email-recipients}'
251 email-prefix: '[{project-name}]'
252 - integration-csit-archive-build
256 name: 'distribution-deploy-{stream}'
257 # Goal: Verify distribution starts with no issues when all features are loaded.
258 # Operation: This job deploys the controller installing odl-integration-all.
259 # FIXME: List required variables.
261 project-type: freestyle
262 node: centos7-java-builder-2c-8g
266 - opendaylight-infra-properties:
267 build-days-to-keep: '{build-days-to-keep}'
270 - opendaylight-infra-parameters:
271 os-cloud: '{os-cloud}'
274 refspec: 'refs/heads/{branch}'
275 artifacts: '{archive-artifacts}'
276 - integration-distribution-branch:
278 - integration-bundle-url:
279 bundle-url: '{bundle-url}'
280 - integration-jdk-version:
282 - distribution-karaf-version:
283 karaf-version: '{karaf-version}'
286 - opendaylight-infra-wrappers:
287 build-timeout: '{build-timeout}'
289 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
292 - distribution-deploy-verify
295 - email-notification:
296 email-recipients: '{email-recipients}'
297 email-prefix: '[int/dist]'
298 - integration-csit-archive-build
302 name: 'distribution-offline-{stream}'
303 # Goal: Verify distribution can start with no internet connection.
304 # Operation: This job deploys the controller removing any external repository definition.
305 # FIXME: List required variables.
307 project-type: freestyle
308 node: centos7-java-builder-2c-8g
312 - opendaylight-infra-properties:
313 build-days-to-keep: '{build-days-to-keep}'
316 - opendaylight-infra-parameters:
317 os-cloud: '{os-cloud}'
320 refspec: 'refs/heads/{branch}'
321 artifacts: '{archive-artifacts}'
322 - integration-distribution-branch:
324 - integration-bundle-url:
325 bundle-url: '{bundle-url}'
326 - integration-jdk-version:
328 - distribution-karaf-version:
329 karaf-version: '{karaf-version}'
332 - opendaylight-infra-wrappers:
333 build-timeout: '{build-timeout}'
335 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
338 - distribution-deploy-offline
341 - email-notification:
342 email-recipients: '{email-recipients}'
343 email-prefix: '[int/dist]'
344 - integration-csit-archive-build