Merge "Update cloud image Ubuntu18.04 mininet ovs"
[releng/builder.git] / jjb / releng-templates-java.yaml
1 ---
2 - job-group:
3     name: odl-maven-jobs-jdk11
4
5     jobs:
6       - gerrit-maven-clm:
7           nexus-iq-namespace: odl-
8           nexus-iq-stage: release
9
10       - gerrit-maven-merge:
11           build-timeout: 180
12
13       - gerrit-maven-stage:
14           sign-artifacts: true
15           sbom-generator: true
16           cron: ""
17
18       - gerrit-maven-mri-stage:
19           sbom-generator: true
20           sign-artifacts: true
21           cron: ""
22
23     java-version: openjdk11
24     mvn-version: mvn38
25
26 - job-group:
27     name: odl-maven-jobs-jdk17
28
29     jobs:
30       - gerrit-maven-clm:
31           nexus-iq-namespace: odl-
32           nexus-iq-stage: release
33           mvn-opts: "--add-opens java.base/java.util=ALL-UNNAMED"
34
35       - gerrit-maven-merge:
36           build-timeout: 180
37
38       - gerrit-maven-stage:
39           sbom-generator: true
40           sign-artifacts: true
41           cron: ""
42
43       - gerrit-maven-mri-stage:
44           sbom-generator: true
45           sign-artifacts: true
46           cron: ""
47
48     java-version: openjdk17
49     mvn-version: mvn38
50
51 - job-group:
52     name: odl-maven-verify-jobs
53
54     jobs:
55       - gerrit-maven-verify
56       - gerrit-maven-verify-dependencies:
57           build-timeout: 180
58
59     mvn-version: mvn38
60
61 - job-group:
62     name: odl-maven-verify-jobs-jdk17
63
64     jobs:
65       - gerrit-maven-verify
66       - gerrit-maven-verify-dependencies:
67           build-timeout: 180
68
69     mvn-version: mvn38
70     java-version: openjdk17
71
72 - job-template:
73     name: "{project-name}-integration-{stream}"
74
75     ######################
76     # Default parameters #
77     ######################
78
79     archive-artifacts: >
80       **/*.log
81       **/hs_err_*.log
82       **/target/**/feature.xml
83       **/target/failsafe-reports/failsafe-summary.xml
84       **/target/surefire-reports/*-output.txt
85     mvn-goals: clean install
86     disable-job: false
87
88     #####################
89     # Job Configuration #
90     #####################
91
92     project-type: freestyle
93     node: "{build-node}"
94     jdk: "{java-version}"
95     disabled: "{disable-job}"
96
97     properties:
98       - opendaylight-infra-properties:
99           build-days-to-keep: "{build-days-to-keep}"
100
101     parameters:
102       - opendaylight-infra-parameters:
103           os-cloud: "{os-cloud}"
104           project: "{project}"
105           branch: "{branch}"
106           refspec: "refs/heads/{branch}"
107           artifacts: "{archive-artifacts}"
108
109     scm:
110       - git-scm:
111           refspec: ""
112           branch: "{branch}"
113
114     wrappers:
115       - opendaylight-infra-wrappers:
116           build-timeout: "{build-timeout}"
117
118     triggers:
119       - reverse:
120           jobs: "{dependencies}"
121           result: "success"
122
123     builders:
124       - lf-jacoco-nojava-workaround
125       - lf-provide-maven-settings:
126           global-settings-file: "global-settings"
127           settings-file: "{mvn-settings}"
128       - maven-target:
129           maven-version: "mvn35"
130           goals: |
131             {mvn-goals}
132             {opendaylight-infra-mvn-opts}
133           java-opts:
134             - "{mvn-opts}"
135           settings: "{mvn-settings}"
136           settings-type: cfp
137           global-settings: "global-settings"
138           global-settings-type: cfp
139
140     publishers:
141       - email-notification:
142           email-recipients: "{email-recipients}"
143           email-prefix: "{email-upstream}"
144       - findbugs
145       - lf-jacoco-report
146       - lf-infra-publish
147
148 - job-template:
149     name: "{project-name}-merge-{stream}"
150
151     ######################
152     # Default parameters #
153     ######################
154     disable-job: "false"
155
156     archive-artifacts: >
157       **/*.log
158       **/hs_err_*.log
159       **/target/**/feature.xml
160       **/target/failsafe-reports/failsafe-summary.xml
161       **/target/surefire-reports/*-output.txt
162     cron: "@daily"
163     mvn-opts: ""
164     mvn-version: mvn35
165     java-version: openjdk8
166
167     #####################
168     # Job Configuration #
169     #####################
170
171     # Need to keep jobs that deploy to Nexus at end of build as Maven
172     # projects. Maybe reconsider this once upstream moves deploy to a
173     # separate lifecycle:
174     #     https://issues.apache.org/jira/browse/MNG-5666
175     project-type: maven
176     node: "{build-node}"
177     jdk: "{java-version}"
178     disabled: "{disable-job}"
179
180     properties:
181       - opendaylight-infra-properties:
182           build-days-to-keep: 14
183
184     parameters:
185       - opendaylight-infra-parameters:
186           os-cloud: "{os-cloud}"
187           project: "{project}"
188           branch: "{branch}"
189           refspec: "refs/heads/{branch}"
190           artifacts: "{archive-artifacts}"
191       - string:
192           name: STREAM
193           default: "{stream}"
194           description: "String representing release name"
195
196     scm:
197       - gerrit-trigger-scm:
198           refspec: ""
199           choosing-strategy: "default"
200
201     wrappers:
202       - opendaylight-infra-wrappers:
203           build-timeout: "{build-timeout}"
204
205     triggers:
206       - timed: "{obj:cron}"
207       - gerrit-trigger-patch-merged:
208           gerrit-server-name: "{gerrit-server-name}"
209           name: "{project}"
210           branch: "{branch}"
211           files: "**"
212           forbidden-files: ""
213
214     prebuilders:
215       - lf-jacoco-nojava-workaround
216       - lf-provide-maven-settings:
217           global-settings-file: "global-settings"
218           settings-file: "{mvn-settings}"
219       - lf-maven-install:
220           mvn-version: "{mvn-version}"
221
222     # TODO: Do we want to apply sophisticated checks as in *-distribution-check-*?
223     maven:
224       maven-name: "{mvn-version}"
225       goals: >
226         {mvn-goals}
227         -Dmerge
228         -Dstream={stream}
229         {opendaylight-infra-mvn-opts}
230       maven-opts: "{mvn-opts}"
231       settings: "{mvn-settings}"
232       settings-type: cfp
233       global-settings: "global-settings"
234       global-settings-type: cfp
235       post-step-run-condition: UNSTABLE
236
237     reporters:
238       - findbugs
239
240     publishers:
241       - email-notification:
242           email-recipients: "{email-recipients}"
243           email-prefix: "[{project-name}]"
244       - maven-deploy:
245           id: ""
246           unique-version: true
247           deploy-unstable: false
248       - lf-jacoco-report
249       - lf-infra-publish