Merge "Re-enable orphaned nodes cleanup script"
[releng/builder.git] / jjb / releng-templates-java.yaml
1 ---
2 - job-group:
3     name: odl-maven-jobs
4
5     jobs:
6       - gerrit-maven-clm
7
8       # TODO: Figure out what's wrong with the gerrit-maven-merge job.
9       # - gerrit-maven-merge:
10       #     post_build_trigger:
11       #       - project:
12       #           - 'distribution-merge-{stream}'
13       #         condition: SUCCESS
14       #         trigger-with-no-params: true
15       - '{project-name}-merge-{stream}':
16           build-timeout: 180
17           mvn-goals: clean install -V -Dmaven.compile.fork=true -Dintegrationtests -Dvtn.build.jobs=2
18
19       - gerrit-maven-release
20       - gerrit-maven-verify
21       - gerrit-maven-verify-dependencies:
22           build-timeout: 180
23
24 - job-template:
25     name: '{project-name}-integration-{stream}'
26
27     ######################
28     # Default parameters #
29     ######################
30
31     archive-artifacts: >
32       **/*.log
33       **/hs_err_*.log
34       **/target/**/feature.xml
35       **/target/failsafe-reports/failsafe-summary.xml
36       **/target/surefire-reports/*-output.txt
37     mvn-goals: clean install
38
39     #####################
40     # Job Configuration #
41     #####################
42
43     project-type: freestyle
44     node: '{build-node}'
45     jdk: '{java-version}'
46
47     properties:
48       - opendaylight-infra-properties:
49           build-days-to-keep: '{build-days-to-keep}'
50
51     parameters:
52       - opendaylight-infra-parameters:
53           os-cloud: '{os-cloud}'
54           project: '{project}'
55           branch: '{branch}'
56           refspec: 'refs/heads/{branch}'
57           artifacts: '{archive-artifacts}'
58
59     scm:
60       - git-scm:
61           refspec: ''
62           branch: '{branch}'
63
64     wrappers:
65       - opendaylight-infra-wrappers:
66           build-timeout: '{build-timeout}'
67
68     triggers:
69       - reverse:
70           jobs: '{dependencies}'
71           result: 'success'
72
73     builders:
74       - jacoco-nojava-workaround
75       - provide-maven-settings:
76           global-settings-file: 'global-settings'
77           settings-file: '{mvn-settings}'
78       - maven-target:
79           maven-version: 'mvn33'
80           goals: |
81               {mvn-goals}
82               {opendaylight-infra-mvn-opts}
83           java-opts:
84             - '{mvn-opts}'
85           settings: '{mvn-settings}'
86           settings-type: cfp
87           global-settings: 'global-settings'
88           global-settings-type: cfp
89
90     publishers:
91       - email-notification:
92           email-recipients: '{email-recipients}'
93           email-prefix: '{email-upstream}'
94       - findbugs
95       - lf-jacoco-report
96       - lf-infra-publish
97
98 - job-template:
99     name: '{project-name}-merge-{stream}'
100
101     ######################
102     # Default parameters #
103     ######################
104
105     archive-artifacts: >
106       **/*.log
107       **/hs_err_*.log
108       **/target/**/feature.xml
109       **/target/failsafe-reports/failsafe-summary.xml
110       **/target/surefire-reports/*-output.txt
111     mvn-version: mvn33
112     java-version: openjdk8
113
114     #####################
115     # Job Configuration #
116     #####################
117
118     # Need to keep jobs that deploy to Nexus at end of build as Maven
119     # projects. Maybe reconsider this once upstream moves deploy to a
120     # separate lifecycle:
121     #     https://issues.apache.org/jira/browse/MNG-5666
122     project-type: maven
123     node: '{build-node}'
124     jdk: '{java-version}'
125
126     properties:
127       - opendaylight-infra-properties:
128           build-days-to-keep: 14
129
130     parameters:
131       - opendaylight-infra-parameters:
132           os-cloud: '{os-cloud}'
133           project: '{project}'
134           branch: '{branch}'
135           refspec: 'refs/heads/{branch}'
136           artifacts: '{archive-artifacts}'
137       - string:
138           name: STREAM
139           default: '{stream}'
140           description: "String representing release name"
141
142     scm:
143       - gerrit-trigger-scm:
144           refspec: ''
145           choosing-strategy: 'default'
146
147     wrappers:
148       - opendaylight-infra-wrappers:
149           build-timeout: '{build-timeout}'
150
151     triggers:
152       - timed: 'H H * * 0'
153       - gerrit-trigger-patch-merged:
154           gerrit-server-name: '{gerrit-server-name}'
155           name: '{project}'
156           branch: '{branch}'
157
158     prebuilders:
159       - jacoco-nojava-workaround
160       - provide-maven-settings:
161           global-settings-file: 'global-settings'
162           settings-file: '{mvn-settings}'
163       - lf-maven-install:
164           mvn-version: '{mvn-version}'
165
166     # TODO: Do we want to apply sophisticated checks as in *-distribution-check-*?
167     maven:
168       maven-name: '{mvn-version}'
169       goals: >
170           {mvn-goals}
171           -Dmerge
172           -Dstream={stream}
173           {opendaylight-infra-mvn-opts}
174       maven-opts: '{mvn-opts}'
175       settings: '{mvn-settings}'
176       settings-type: cfp
177       global-settings: 'global-settings'
178       global-settings-type: cfp
179       post-step-run-condition: UNSTABLE
180
181     reporters:
182       - findbugs
183
184     publishers:
185       - email-notification:
186           email-recipients: '{email-recipients}'
187           email-prefix: '[{project-name}]'
188       - maven-deploy:
189           id: ''
190           unique-version: true
191           deploy-unstable: false
192       - lf-jacoco-report
193       - lf-infra-publish
194       - trigger:
195           project: 'distribution-merge-{stream}'
196           threshold: SUCCESS