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