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