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