BUG-2471: create odlparent template
[releng/builder.git] / jjb / odlparent / odlparent.yaml
1 # REMOVE THIS LINE IF YOU WANT TO CUSTOMIZE ANYTHING BELOW
2 # Otherwise this file will be automatically overwritten by the template
3 # autobuilder.
4
5 # ODL Releng build templates
6 - project:
7     name: odlparent
8     jobs:
9         - 'odlparent-verify-{stream}'
10         - 'odlparent-merge-{stream}'
11         - 'odlparent-daily-{stream}'
12
13     # stream:    branch with - in place of / (eg. stable-helium)
14     # branch:    branch (eg. stable/helium)
15     stream:
16         - master:
17             branch: 'master'
18         - stable-helium:
19             branch: 'stable/helium'
20
21
22 # For the Job templates below replace instances of:
23 # PROJECT with your project name (eg. controller)
24 # MAVEN_GOALS with your maven goals to build
25 # MAVEN_OPTS with your maven options to build
26
27 - job-template:
28     name: 'odlparent-verify-{stream}'
29
30     # Job template for ODL verify jobs
31     #
32     # The purpose of this job template is to setup a ODL verify job
33     #
34     # Required Variables:
35     #     stream:    branch with - in place of / (eg. stable-helium)
36     #     branch:    branch (eg. stable/helium)
37
38     project-type: maven
39     node: dynamic_verify
40
41     logrotate:
42         daysToKeep: '{build-days-to-keep}'
43         numToKeep: '{build-num-to-keep}'
44         artifactDaysToKeep: '{build-artifact-days-to-keep}'
45         artifactNumToKeep: '{build-artifact-num-to-keep}'
46
47     parameters:
48         - gerrit-parameter:
49             branch: '{branch}'
50
51     scm:
52         - gerrit-trigger-scm:
53             credentials-id: '{ssh-credentials}'
54             scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/odlparent.git'
55             refspec: '$GERRIT_REFSPEC'
56             choosing-strategy: 'gerrit'
57
58     wrappers:
59         - ssh-agent-credentials:
60             user: '{ssh-credentials}'
61
62     triggers:
63         - gerrit-trigger-patch-submitted:
64             name: 'odlparent'
65             branch: '{branch}'
66
67     maven:
68         maven-name: '{mvn32}'
69         root-pom: 'pom.xml'
70         goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install'
71         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
72         settings: '{odlparent-settings}'
73         global-settings: '{odl-global-settings}'
74
75     publishers:
76         - email-notification:
77             email-prefix: '[odlparent]'
78
79 - job-template:
80     name: 'odlparent-merge-{stream}'
81
82     # Job template for ODL merge jobs
83     #
84     # The purpose of this job template is to setup a ODL merge job
85     # and deploy artifacts to Nexus.
86     #
87     # Required Variables:
88     #     stream:    branch with - in place of / (eg. stable-helium)
89     #     branch:    branch (eg. stable/helium)
90
91     project-type: maven
92     node: dynamic_merge
93
94     logrotate:
95         daysToKeep: '{build-days-to-keep}'
96         numToKeep: '{build-num-to-keep}'
97         artifactDaysToKeep: '{build-artifact-days-to-keep}'
98         artifactNumToKeep: '{build-artifact-num-to-keep}'
99
100     scm:
101         - gerrit-trigger-scm:
102             credentials-id: '{ssh-credentials}'
103             scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/odlparent.git'
104             refspec: ''
105             choosing-strategy: 'default'
106
107     wrappers:
108         - ssh-agent-credentials:
109             user: '{ssh-credentials}'
110
111     triggers:
112         - gerrit-trigger-patch-merged:
113             name: 'odlparent'
114             branch: '{branch}'
115
116     maven:
117         maven-name: '{mvn32}'
118         root-pom: 'pom.xml'
119         goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install'
120         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
121         settings: '{odlparent-settings}'
122         global-settings: '{odl-global-settings}'
123
124     publishers:
125         - email-notification:
126             email-prefix: '[odlparent]'
127         - maven-deploy:
128             id: ''
129             unique-version: true
130             deploy-unstable: false
131
132 - job-template:
133     name: 'odlparent-daily-{stream}'
134
135     # Job template for daily builders
136     #
137     # The purpose of this job template is to setup a daily/nightly
138     # builder and pushes to Sonar analysis.
139     #
140     # Required Variables:
141     #     stream:    branch with - in place of / (eg. stable-helium)
142     #     branch:    branch (eg. stable/helium)
143
144     project-type: maven
145     node: dynamic_verify
146
147     logrotate:
148         daysToKeep: '{build-days-to-keep}'
149         numToKeep: '{build-num-to-keep}'
150         artifactDaysToKeep: '{build-artifact-days-to-keep}'
151         artifactNumToKeep: '{build-artifact-num-to-keep}'
152
153     scm:
154         - git-scm:
155             credentials-id: '{ssh-credentials}'
156             scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/odlparent.git'
157             refspec: ''
158             branch: '{branch}'
159
160     wrappers:
161         - ssh-agent-credentials:
162             user: '{ssh-credentials}'
163
164     triggers:
165         - timed: 'H H * * *'
166
167     maven:
168         maven-name: '{mvn32}'
169         root-pom: 'pom.xml'
170         goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install'
171         maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
172         settings: '{odlparent-settings}'
173         global-settings: '{odl-global-settings}'
174
175     publishers:
176         - email-notification:
177             email-prefix: '[odlparent]'
178         - sonar:
179             branch: '{stream}'
180             language: 'java'
181             maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'