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