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} **/dependency_tree.txt **/*.hprof'
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
54 {opendaylight-infra-mvn-opts}
56 - '-Xmx1024m -XX:MaxPermSize=256m'
57 settings: integration-settings
59 global-settings: global-settings
60 global-settings-type: cfp
67 email-recipients: '{email-recipients}'
68 email-prefix: '[int/dist]'
71 name: 'distribution-merge-{stream}'
73 # Need to keep jobs that deploy to Nexus at end of build as Maven
74 # projects. Maybe reconsider this once upstream moves deploy to a
76 # https://issues.apache.org/jira/browse/MNG-5666
83 - opendaylight-infra-properties:
84 build-days-to-keep: '{build-days-to-keep}'
87 - opendaylight-infra-parameters:
88 os-cloud: '{os-cloud}'
91 refspec: 'refs/heads/{branch}'
92 artifacts: '{archive-artifacts} **/dependency_tree.txt **/*.hprof **/target/surefire-reports/*-output.txt'
93 - distribution-karaf-version:
94 karaf-version: '{karaf-version}'
99 choosing-strategy: 'default'
102 - opendaylight-infra-wrappers:
103 build-timeout: '{build-timeout}'
106 - gerrit-trigger-patch-merged:
107 server-name: '{server-name}'
108 name: 'integration/distribution'
112 - wipe-org-opendaylight-repo
113 - jacoco-nojava-workaround
114 - provide-maven-settings:
115 global-settings-file: 'global-settings'
116 settings-file: 'integration-settings'
117 - integration-set-variables
118 - distribute-build-url:
119 path: '$KARAF_ARTIFACT/src/main/assembly'
125 clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
126 -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
127 -Djenkins -Dmerge -Dstream={stream}
128 maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
129 settings: 'integration-settings'
131 global-settings: 'global-settings'
132 global-settings-type: cfp
136 condition-kind: file-exists
137 condition-filename: deploy-site.xml
138 condition-basedir: workspace
140 # The strategy here is intentional to run Maven site:deploy twice
141 # once using regular pom.xml to produce a staged-site which is
142 # then used by deploy-site.xml to push to Nexus. This is a
143 # workaround to Maven Site's default linking code which creates
144 # incorrect URLs for sites due to auto-detection assuming your
145 # project is configured in a certain way which ODL is not.
148 maven-version: 'mvn33'
150 goals: 'site:deploy -V -B -Dstream={stream}'
153 settings: 'integration-settings'
155 global-settings: 'global-settings'
156 global-settings-type: cfp
158 maven-version: 'mvn33'
160 goals: 'site:deploy -V -B -Dstream={stream}'
163 settings: 'integration-settings'
165 global-settings: 'global-settings'
166 global-settings-type: cfp
167 - integration-compare-distributions
168 # TODO: the output of the above command is not *friendly* for the reader because the most important info
169 # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
170 # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
179 deploy-unstable: false
182 - email-notification:
183 email-recipients: '{email-recipients}'
184 email-prefix: '[int/dist]'
187 name: 'distribution-check-{stream}'
188 # Like a {project}-distribution-check, but one step less as there is no upstream project involved.
191 project-type: freestyle
197 - opendaylight-infra-properties:
198 build-days-to-keep: '{build-days-to-keep}'
201 - opendaylight-infra-parameters:
202 os-cloud: '{os-cloud}'
205 refspec: 'refs/heads/{branch}'
206 artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
207 - distribution-karaf-version:
208 karaf-version: '{karaf-version}'
213 - integration-gerrit-scm:
214 basedir: 'distribution'
215 refspec: '$GERRIT_REFSPEC'
219 - opendaylight-infra-wrappers:
220 # Distro-check jobs typically run within 10 - 30 minutes
221 # with 45 minutes being the occassional edge case.
222 # enforce a 60 minute limit to ensure stuck jobs get
224 # Double that as Karaf 3+4 may take longer.
228 - gerrit-trigger-patch-submitted:
229 server: '{server-name}'
235 - distribution-check-wipe
236 - distribution-check-build-project:
237 pom: 'distribution/pom.xml'
238 mvn-opts: '{opendaylight-infra-mvn-opts}'
239 - distribution-check-verify-groupid:
240 gerrit-project: 'integration'
241 - distribution-check-delete-snapshots
242 - distribution-check-configure-remotes
243 - distribution-check-repeat-build:
244 dist-pom: 'distribution/pom.xml'
245 mvn-opts: '{opendaylight-infra-mvn-opts}'
246 - integration-upload-distribution:
247 dist-pom: distribution/pom.xml
248 - integration-distribution-check
251 - email-notification:
252 email-recipients: '{email-recipients}'
253 email-prefix: '[{project-name}]'
258 mkdir -p $WORKSPACE/archives
259 cp karaf*.log $WORKSPACE/archives
260 script-only-if-succeeded: false
261 script-only-if-failed: false
262 mark-unstable-if-failed: true
266 name: 'distribution-deploy-{stream}'
267 # Goal: Verify distribution starts with no issues when all features are loaded.
268 # Operation: This job deploys the controller installing odl-integration-all.
269 # FIXME: List required variables.
271 project-type: freestyle
272 node: centos7-java-builder-2c-8g
276 - opendaylight-infra-properties:
277 build-days-to-keep: '{build-days-to-keep}'
280 - opendaylight-infra-parameters:
281 os-cloud: '{os-cloud}'
284 refspec: 'refs/heads/{branch}'
285 artifacts: '{archive-artifacts} **/*.hprof'
286 - integration-distribution-branch:
288 - integration-bundle-url:
289 bundle-url: '{bundle-url}'
290 - integration-jdk-version:
292 - distribution-karaf-version:
293 karaf-version: '{karaf-version}'
296 - opendaylight-infra-wrappers:
297 build-timeout: '{build-timeout}'
299 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
302 - distribution-deploy-verify
305 - email-notification:
306 email-recipients: '{email-recipients}'
307 email-prefix: '[int/dist]'
308 - integration-csit-archive-build
312 name: 'distribution-offline-{stream}'
313 # Goal: Verify distribution can start with no internet connection.
314 # Operation: This job deploys the controller removing any external repository definition.
315 # FIXME: List required variables.
317 project-type: freestyle
318 node: centos7-java-builder-2c-8g
322 - opendaylight-infra-properties:
323 build-days-to-keep: '{build-days-to-keep}'
326 - opendaylight-infra-parameters:
327 os-cloud: '{os-cloud}'
330 refspec: 'refs/heads/{branch}'
331 artifacts: '{archive-artifacts} **/*.hprof'
332 - integration-distribution-branch:
334 - integration-bundle-url:
335 bundle-url: '{bundle-url}'
336 - integration-jdk-version:
338 - distribution-karaf-version:
339 karaf-version: '{karaf-version}'
342 - opendaylight-infra-wrappers:
343 build-timeout: '{build-timeout}'
345 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
348 - distribution-deploy-offline
351 - email-notification:
352 email-recipients: '{email-recipients}'
353 email-prefix: '[int/dist]'
354 - integration-csit-archive-build