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
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}'
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 few steps 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}'
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 # No need to repeat with SFT as distribution-verify has that covered.
242 - integration-upload-distribution:
243 dist-pom: distribution/pom.xml
244 - integration-distribution-check
247 - email-notification:
248 email-recipients: '{email-recipients}'
249 email-prefix: '[{project-name}]'
250 - integration-csit-archive-build
254 name: 'distribution-deploy-{stream}'
255 # Goal: Verify distribution starts with no issues when all features are loaded.
256 # Operation: This job deploys the controller installing odl-integration-all.
257 # FIXME: List required variables.
259 project-type: freestyle
260 node: centos7-java-builder-2c-8g
264 - opendaylight-infra-properties:
265 build-days-to-keep: '{build-days-to-keep}'
268 - opendaylight-infra-parameters:
269 os-cloud: '{os-cloud}'
272 refspec: 'refs/heads/{branch}'
273 artifacts: '{archive-artifacts}'
274 - integration-distribution-branch:
276 - integration-bundle-url:
277 bundle-url: '{bundle-url}'
278 - integration-jdk-version:
280 - distribution-karaf-version:
281 karaf-version: '{karaf-version}'
284 - opendaylight-infra-wrappers:
285 build-timeout: '{build-timeout}'
287 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
290 - distribution-deploy-verify
293 - email-notification:
294 email-recipients: '{email-recipients}'
295 email-prefix: '[int/dist]'
296 - integration-csit-archive-build
300 name: 'distribution-offline-{stream}'
301 # Goal: Verify distribution can start with no internet connection.
302 # Operation: This job deploys the controller removing any external repository definition.
303 # FIXME: List required variables.
305 project-type: freestyle
306 node: centos7-java-builder-2c-8g
310 - opendaylight-infra-properties:
311 build-days-to-keep: '{build-days-to-keep}'
314 - opendaylight-infra-parameters:
315 os-cloud: '{os-cloud}'
318 refspec: 'refs/heads/{branch}'
319 artifacts: '{archive-artifacts}'
320 - integration-distribution-branch:
322 - integration-bundle-url:
323 bundle-url: '{bundle-url}'
324 - integration-jdk-version:
326 - distribution-karaf-version:
327 karaf-version: '{karaf-version}'
330 - opendaylight-infra-wrappers:
331 build-timeout: '{build-timeout}'
333 # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
336 - distribution-deploy-offline
339 - email-notification:
340 email-recipients: '{email-recipients}'
341 email-prefix: '[int/dist]'
342 - integration-csit-archive-build