Merge "Add jjb-templates to verify job trigger"
[releng/builder.git] / jjb / yangtools / yangtools.yaml
1 # REMOVE THIS LINE IF YOU WANT TO CUSTOMIZE ANYTHING BELOW
2 # Otherwise this file will be automatically overwritten by the template
3 # autobuilder.
4
5 # ODL Releng build templates
6 - project:
7     name: yangtools
8     jobs:
9         - 'yangtools-merge-{stream}'
10         - 'yangtools-daily-{stream}'
11         - 'yangtools-integration-{stream}'
12         - 'yangtools-sonar'
13
14
15     # stream:    branch with - in place of / (eg. stable-helium)
16     # branch:    branch (eg. stable/helium)
17     stream:
18         - master:
19             branch: 'master'
20         - stable-helium:
21             branch: 'stable/helium'
22
23     project: 'yangtools'
24     jdk: 'openjdk7'
25
26 # For the Job templates below replace instances of:
27 # PROJECT with your project name (eg. controller)
28 # MAVEN_GOALS with your maven goals to build
29 # MAVEN_OPTS with your maven options to build
30
31 - job-template:
32     name: 'yangtools-merge-{stream}'
33
34     # Job template for ODL merge jobs
35     #
36     # The purpose of this job template is to setup a ODL merge job
37     # and deploy artifacts to Nexus.
38     #
39     # Required Variables:
40     #     stream:    branch with - in place of / (eg. stable-helium)
41     #     branch:    branch (eg. stable/helium)
42
43     project-type: maven
44     node: dynamic_merge
45     jdk: '{jdk}'
46
47     logrotate:
48         daysToKeep: '{build-days-to-keep}'
49         numToKeep: '{build-num-to-keep}'
50         artifactDaysToKeep: '{build-artifact-days-to-keep}'
51         artifactNumToKeep: '{build-artifact-num-to-keep}'
52
53     parameters:
54         - project-parameter:
55             project: '{project}'
56
57     scm:
58         - gerrit-trigger-scm:
59             credentials-id: '{ssh-credentials}'
60             refspec: ''
61             choosing-strategy: 'default'
62
63     wrappers:
64         - build-timeout
65         - ssh-agent-credentials:
66             user: '{ssh-credentials}'
67
68     triggers:
69         - gerrit-trigger-patch-merged:
70             name: 'yangtools'
71             branch: '{branch}'
72
73     prebuilders:
74         - wipe-org-opendaylight-repo
75
76     maven:
77         maven-name: '{mvn32}'
78         root-pom: 'pom.xml'
79         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
80         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
81         settings: '{yangtools-settings}'
82         global-settings: '{odl-global-settings}'
83
84     postbuilders:
85         - jacoco-nojava-workaround
86
87     publishers:
88         
89         - email-notification:
90             email-prefix: '[yangtools]'
91         - maven-deploy:
92             id: ''
93             unique-version: true
94             deploy-unstable: false
95         - jacoco-report
96
97 - job-template:
98     name: 'yangtools-daily-{stream}'
99
100     # Job template for daily builders
101     #
102     # The purpose of this job template is to setup a daily/nightly
103     # builder and pushes to Sonar analysis.
104     #
105     # Required Variables:
106     #     stream:    branch with - in place of / (eg. stable-helium)
107     #     branch:    branch (eg. stable/helium)
108
109     project-type: maven
110     node: dynamic_verify
111     jdk: '{jdk}'
112
113     logrotate:
114         daysToKeep: '{build-days-to-keep}'
115         numToKeep: '{build-num-to-keep}'
116         artifactDaysToKeep: '{build-artifact-days-to-keep}'
117         artifactNumToKeep: '{build-artifact-num-to-keep}'
118
119     parameters:
120         - project-parameter:
121             project: '{project}'
122
123     scm:
124         - git-scm:
125             credentials-id: '{ssh-credentials}'
126             refspec: ''
127             branch: '{branch}'
128
129     wrappers:
130         - build-timeout
131         - ssh-agent-credentials:
132             user: '{ssh-credentials}'
133
134     triggers:
135         - timed: 'H H * * *'
136
137     prebuilders:
138         - wipe-org-opendaylight-repo
139
140     maven:
141         maven-name: '{mvn32}'
142         root-pom: 'pom.xml'
143         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
144         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
145         settings: '{yangtools-settings}'
146         global-settings: '{odl-global-settings}'
147
148     postbuilders:
149         - jacoco-nojava-workaround
150
151     publishers:
152         - email-notification:
153             email-prefix: '[yangtools]'
154         - jacoco-report
155
156 - job-template:
157     name: 'yangtools-integration-{stream}'
158     disabled: false
159
160     # Job template for ODL merge jobs
161     #
162     # The purpose of this job template is to setup a ODL merge job
163     # and deploy artifacts to Nexus.
164     #
165     # Required Variables:
166     #     stream:    branch with - in place of / (eg. stable-helium)
167     #     branch:    branch (eg. stable/helium)
168
169     project-type: maven
170     node: dynamic_merge
171     jdk: '{jdk}'
172
173     logrotate:
174         daysToKeep: '{build-days-to-keep}'
175         numToKeep: '{build-num-to-keep}'
176         artifactDaysToKeep: '{build-artifact-days-to-keep}'
177         artifactNumToKeep: '{build-artifact-num-to-keep}'
178
179     parameters:
180         - project-parameter:
181             project: '{project}'
182
183     scm:
184         - git-scm:
185             credentials-id: '{ssh-credentials}'
186             refspec: ''
187             branch: '{branch}'
188
189     wrappers:
190         - build-timeout
191         - ssh-agent-credentials:
192             user: '{ssh-credentials}'
193
194     triggers:
195         - reverse:
196             jobs: 'odlparent-merge-{stream}'
197             result: 'success'
198
199     prebuilders:
200         - wipe-org-opendaylight-repo
201
202     maven:
203         maven-name: '{mvn32}'
204         root-pom: 'pom.xml'
205         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
206         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
207         settings: '{yangtools-settings}'
208         global-settings: '{odl-global-settings}'
209
210     postbuilders:
211         - jacoco-nojava-workaround
212
213     publishers:
214         - email-notification:
215             email-prefix: '[yangtools] [odlparent]'
216         - maven-deploy:
217             id: ''
218             unique-version: true
219             deploy-unstable: false
220         - jacoco-report
221
222 - job-template:
223     name: 'yangtools-sonar'
224
225     project-type: maven
226     node: dynamic_verify
227     jdk: '{jdk}'
228
229     logrotate:
230         daysToKeep: '7'
231         numToKeep: '10'
232         artifactDaysToKeep: '1'
233         artifactNumToKeep: '1'
234
235     parameters:
236         - project-parameter:
237             project: '{project}'
238
239     scm:
240         - git-scm:
241             credentials-id: '{ssh-credentials}'
242             refspec: ''
243             branch: 'master'
244
245     wrappers:
246         - build-timeout
247         - ssh-agent-credentials:
248             user: '{ssh-credentials}'
249
250     triggers:
251         - timed: 'H H * * *'
252
253     maven:
254         maven-name: '{mvn32}'
255         root-pom: 'pom.xml'
256         goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Dsonar'
257         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
258         settings: '{yangtools-settings}'
259         global-settings: '{odl-global-settings}'
260
261     postbuilders:
262         - jacoco-nojava-workaround
263
264     publishers:
265         - sonar:
266             language: 'java'
267             maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
268         - email-notification:
269             email-prefix: '[yangtools]'
270         - jacoco-report
271