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