Initial Vagrant configurations
[releng/builder.git] / jjb / releng-templates.yaml
1 # ODL Releng build templates
2
3 - job-template:
4     name: '{name}-verify-{stream}'
5
6     # Job template for ODL verify jobs
7     #
8     # The purpose of this job template is to setup a ODL verify job
9     #
10     # Required Variables:
11     #     name:      project name (eg. controller)
12     #     stream:    branch with - in place of / (eg. stable/helium)
13     #     branch:    branch (eg. stable/helium)
14     #     mvn-goals: Maven Goals parameter to pass to the builder (eg. clean install)
15     #     mvn-opts:  MAVEN_OPTS paramter to pass to the builder (eg. -Xmx1024m)
16     #
17     # Optional Variables:
18     #     build-days-to-keep:           Number of days to keep builds
19     #     build-num-to-keep:            Number of builds to keep
20     #     build-artifact-days-to-keep:  Number of artifacts from builds to keep
21     #     build-artifact-num-to-keep:   Number of builds to keep with artifacts
22
23     project-type: maven
24
25     logrotate:
26         daysToKeep: '{build-days-to-keep}'
27         numToKeep: '{build-num-to-keep}'
28         artifactDaysToKeep: '{build-artifact-days-to-keep}'
29         artifactNumToKeep: '{build-artifact-num-to-keep}'
30
31     parameters:
32         - gerrit-parameter:
33             branch: '{branch}'
34
35     scm:
36         - gerrit-trigger-scm:
37             credentials-id: '{ssh-credentials}'
38             scm-url: '{scm-url}'
39             refspec: '$GERRIT_REFSPEC'
40
41     wrappers:
42         - ssh-agent-credentials:
43             user: '{ssh-credentials}'
44
45     triggers:
46         - gerrit-trigger-patch-submitted:
47             name: '{name}'
48             branch: '{branch}'
49
50     maven:
51         maven-name: Maven 3.0.4
52         root-pom: pom.xml
53         goals: '{mvn-goals}'
54         maven-opts: '{mvn-opts}'
55
56     publishers:
57         - email-notification:
58             email-prefix: '{email-prefix}'
59
60 - job-template:
61     name: '{name}-merge-{stream}'
62
63     # Job template for ODL merge jobs
64     #
65     # The purpose of this job template is to setup a ODL merge job
66     #
67     # Required Variables:
68     #     name:      project name (eg. controller)
69     #     stream:    branch with - in place of / (eg. stable/helium)
70     #     branch:    branch (eg. stable/helium)
71     #     mvn-goals: Maven Goals parameter to pass to the builder (eg. clean install)
72     #     mvn-opts:  MAVEN_OPTS paramter to pass to the builder (eg. -Xmx1024m)
73     #
74     # Optional Variables:
75     #     build-days-to-keep:           Number of days to keep builds
76     #     build-num-to-keep:            Number of builds to keep
77     #     build-artifact-days-to-keep:  Number of artifacts from builds to keep
78     #     build-artifact-num-to-keep:   Number of builds to keep with artifacts
79
80     project-type: maven
81
82     logrotate:
83         daysToKeep: '{build-days-to-keep}'
84         numToKeep: '{build-num-to-keep}'
85         artifactDaysToKeep: '{build-artifact-days-to-keep}'
86         artifactNumToKeep: '{build-artifact-num-to-keep}'
87
88     scm:
89         - gerrit-trigger-scm:
90             credentials-id: '{ssh-credentials}'
91             scm-url: '{scm-url}'
92             refspec: ''
93
94     wrappers:
95         - ssh-agent-credentials:
96             user: '{ssh-credentials}'
97
98     triggers:
99         - gerrit-trigger-patch-merged:
100             name: '{name}'
101             branch: '{branch}'
102
103     maven:
104         maven-name: Maven 3.0.4
105         root-pom: pom.xml
106         goals: '{mvn-goals}'
107         maven-opts: '{mvn-opts}'
108
109     publishers:
110         - email-notification:
111             email-prefix: '{email-prefix}'
112         - maven-deploy:
113             id:
114             url:
115             unique-version: true
116             deploy-unstable: false
117
118 - job-template:
119     name: '{name}-daily-{stream}'
120
121     # Job template for daily builders
122     #
123     # The purpose of this job template is to setup a daily/nightly builder and pushes to Sonar analysis.
124     #
125     # Required Variables:
126     #     name:      project name (eg. controller)
127     #     stream:    branch with - in place of / (eg. stable/helium)
128     #     branch:    branch (eg. stable/helium)
129     #     mvn-goals: Maven Goals parameter to pass to the builder (eg. clean install)
130     #     mvn-opts:  MAVEN_OPTS paramter to pass to the builder (eg. -Xmx1024m)
131     #
132     # Optional Variables:
133     #     build-days-to-keep:           Number of days to keep builds
134     #     build-num-to-keep:            Number of builds to keep
135     #     build-artifact-days-to-keep:  Number of artifacts from builds to keep
136     #     build-artifact-num-to-keep:   Number of builds to keep with artifacts
137
138     project-type: maven
139
140     logrotate:
141         daysToKeep: '{build-days-to-keep}'
142         numToKeep: '{build-num-to-keep}'
143         artifactDaysToKeep: '{build-artifact-days-to-keep}'
144         artifactNumToKeep: '{build-artifact-num-to-keep}'
145
146     scm:
147         - git-scm:
148             credentials-id: '{ssh-credentials}'
149             scm-url: '{scm-url}'
150             refspec: ''
151             branch: '{branch}'
152
153     wrappers:
154         - ssh-agent-credentials:
155             user: '{ssh-credentials}'
156
157     triggers:
158         - timed: 'H H * * *'
159
160     maven:
161         maven-name: Maven 3.0.4
162         root-pom: pom.xml
163         goals: '{mvn-goals}'
164         maven-opts: '{mvn-opts}'
165
166     publishers:
167         - email-notification:
168             email-prefix: '{email-prefix}'
169         - sonar:
170             branch: 'origin/{branch}'
171             language: 'java'
172             maven-opts: '{mvn-opts}'