Merge "Add distribution-check in yangtools jenkins"
[releng/builder.git] / jjb / integration / integration-distribution-jobs.yaml
1
2 - project:
3     name: integration-distribution
4     jobs:
5         - '{name}-verify-python-{stream}'
6         - 'integration-distribution-verify-{stream}'
7         - 'integration-distribution-merge-{stream}'
8         - 'integration-distribution-deploy-{stream}'
9         - 'integration-distribution-offline-{stream}'
10
11     project: integration/distribution
12
13     stream:
14         - boron:
15             branch: 'master'
16             jre: 'openjdk8'
17         - beryllium:
18             branch: 'stable/beryllium'
19             jre: 'openjdk7'
20         - stable-lithium:
21             branch: 'stable/lithium'
22             jre: 'openjdk7'
23
24
25 - job-template:
26     name: 'integration-distribution-verify-{stream}'
27
28     project-type: maven
29     node: dynamic_verify
30     concurrent: true
31     jdk: '{jre}'
32
33     logrotate:
34         daysToKeep: '{build-days-to-keep}'
35         numToKeep: '{build-num-to-keep}'
36         artifactDaysToKeep: '{build-artifact-days-to-keep}'
37         artifactNumToKeep: '{build-artifact-num-to-keep}'
38
39     parameters:
40         - project-parameter:
41             project: 'integration/distribution'
42         - gerrit-parameters:
43             project: '{project}'
44             branch: '{branch}'
45             refspec: 'refs/heads/{branch}'
46         - integration-patch-refspec:
47             branch: '$GERRIT_REFSPEC'
48
49     scm:
50         - gerrit-trigger-scm:
51             credentials-id: '{ssh-credentials}'
52             refspec: '$PATCHREFSPEC'
53             choosing-strategy: 'gerrit'
54
55     wrappers:
56         - build-timeout
57         - ssh-agent-credentials:
58             users:
59                 - '{ssh-credentials}'
60
61     triggers:
62         - gerrit-trigger-patch-submitted:
63             name: 'integration/distribution'
64             branch: '{branch}'
65
66     prebuilders:
67         - integration-get-bundle-url-root
68         - inject:
69             properties-file: 'bundle.txt'
70         - wipe-org-opendaylight-repo
71
72     maven:
73         maven-name: '{mvn33}'
74         root-pom: 'pom.xml'
75         goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
76         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
77         settings: '{integration-settings}'
78         global-settings: '{odl-global-settings}'
79         ignore-upstream-changes: true
80         post-step-run-condition: 'SUCCESS'
81
82     postbuilders:
83         - trigger-builds:
84             - project: 'integration-distribution-deploy-{stream}'
85               block: true
86               predefined-parameters:
87                   BUNDLEURL=$BUNDLEURL
88
89     publishers:
90         - email-notification:
91             email-prefix: '[integration]'
92
93 - job-template:
94     name: 'integration-distribution-merge-{stream}'
95
96     project-type: maven
97     node: dynamic_merge
98     jdk: '{jre}'
99
100     logrotate:
101         daysToKeep: '{build-days-to-keep}'
102         numToKeep: '{build-num-to-keep}'
103         artifactDaysToKeep: '{build-artifact-days-to-keep}'
104         artifactNumToKeep: '{build-artifact-num-to-keep}'
105
106     parameters:
107         - project-parameter:
108             project: 'integration/distribution'
109         - gerrit-parameters:
110             project: '{project}'
111             branch: '{branch}'
112             refspec: 'refs/heads/{branch}'
113
114     scm:
115         - gerrit-trigger-scm:
116             credentials-id: '{ssh-credentials}'
117             refspec: ''
118             choosing-strategy: 'default'
119
120     wrappers:
121         - build-timeout
122         - ssh-agent-credentials:
123             users:
124                 - '{ssh-credentials}'
125
126     triggers:
127         - gerrit-trigger-patch-merged:
128             name: 'integration/distribution'
129             branch: '{branch}'
130
131     prebuilders:
132         - wipe-org-opendaylight-repo
133
134     maven:
135         maven-name: '{mvn33}'
136         root-pom: 'pom.xml'
137         goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
138         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
139         settings: '{integration-settings}'
140         global-settings: '{odl-global-settings}'
141
142     publishers:
143         - email-notification:
144             email-prefix: '[integration]'
145         - maven-deploy:
146             id: ''
147             unique-version: true
148             deploy-unstable: false
149
150 # Template: integration-distribution-deploy-{stream}
151 # Goal: Verify distribution starts with no issues when all features are loaded
152 # Operation: This job deploys the controller installing odl-integration-all
153
154 - job-template:
155     name: 'integration-distribution-deploy-{stream}'
156
157     project-type: freestyle
158     node: dynamic_verify
159     concurrent: true
160
161     logrotate:
162         daysToKeep: '{build-days-to-keep}'
163         numToKeep: '{build-num-to-keep}'
164         artifactDaysToKeep: '{build-artifact-days-to-keep}'
165         artifactNumToKeep: '{build-num-to-keep}'
166
167     parameters:
168         - project-parameter:
169             project: 'integration/distribution'
170         - integration-branch:
171             branch: '{branch}'
172         - integration-bundleurl:
173             bundleurl: 'last'
174         - integration-jdk-version:
175             jdkversion: '{jre}'
176
177     wrappers:
178         - build-timeout
179         - ssh-agent-credentials:
180             users:
181                 - '{ssh-credentials}'
182
183     triggers:
184         - timed: 'H H * * *'
185
186     builders:
187         - integration-get-bundle-vars
188         - inject:
189             properties-file: 'bundle_vars.txt'
190         - integration-deploy-controller-verify
191
192     publishers:
193         - archive:
194             artifacts: '*.log,*.log.xz'
195         - email-notification:
196             email-prefix: '[integration]'
197
198 # Template: integration-distribution-offline-{stream}
199 # Goal: Verify distribution can start with no internet connection
200 # Operation: This job deploys the controller removing any external repository definition
201
202 - job-template:
203     name: 'integration-distribution-offline-{stream}'
204
205     project-type: freestyle
206     node: dynamic_verify
207
208     logrotate:
209         daysToKeep: '{build-days-to-keep}'
210         numToKeep: '{build-num-to-keep}'
211         artifactDaysToKeep: '{build-artifact-days-to-keep}'
212         artifactNumToKeep: '{build-num-to-keep}'
213
214     parameters:
215         - project-parameter:
216             project: 'integration/distribution'
217         - integration-branch:
218             branch: '{branch}'
219         - integration-bundleurl:
220             bundleurl: 'last'
221         - integration-jdk-version:
222             jdkversion: '{jre}'
223
224     wrappers:
225         - build-timeout
226         - ssh-agent-credentials:
227             users:
228                 - '{ssh-credentials}'
229
230     triggers:
231         - timed: 'H H * * *'
232
233     builders:
234         - integration-get-bundle-vars
235         - inject:
236             properties-file: 'bundle_vars.txt'
237         - integration-deploy-controller-offline
238
239     publishers:
240         - archive:
241             artifacts: '*.log,*.log.xz'
242         - email-notification:
243             email-prefix: '[integration]'