Merge "Plaintext gerrit commit signing instructions"
[releng/builder.git] / jjb / opflex / opflex-custom.yaml
1 - project:
2     name: opflex
3     jobs:
4         - 'opflex-verify-{stream}'
5         - 'opflex-merge-{stream}'
6 #        - 'opflex-daily-{stream}'
7 #        - 'opflex-distribution-{stream}'
8
9     # stream:    release stream (eg. stable-lithium or beryllium)
10     # branch:    git branch (eg. stable/lithium or master)
11     stream:
12         - boron:
13             branch: 'master'
14             jdk: openjdk7
15             jdks:
16                 - openjdk7
17         - beryllium:
18             branch: 'stable/beryllium'
19             jdk: openjdk7
20             jdks:
21                 - openjdk7
22
23     project: 'opflex'
24
25 - builder:
26     name: opflex-build
27     builders:
28       - maven-target:
29           maven-version: '{mvn33}'
30           pom: genie/pom.xml
31           goals: compile
32       - copyartifact:
33           project: opflex-libuv_tgz-{stream}
34           flatten: true
35       - copyartifact:
36           project: opflex-rapidjson_tgz-{stream}
37           flatten: true
38       - copyartifact:
39           project: opflex-openvswitch_tgz-{stream}
40           flatten: true
41       - shell:
42           !include-raw-escape:
43             - include-raw-opflex-build.sh
44
45 - job-template:
46     name: 'opflex-verify-{stream}'
47
48     project-type: matrix
49     node: matrix_master
50     concurrent: true
51
52     axes:
53         - axis:
54             type: slave
55             name: nodes
56             values:
57                 - dynamic_verify
58         - axis:
59             type: jdk
60             values: '{obj:jdks}'
61
62     logrotate:
63         daysToKeep: '{build-days-to-keep}'
64         numToKeep: '{build-num-to-keep}'
65         artifactDaysToKeep: '{build-artifact-days-to-keep}'
66         artifactNumToKeep: '{build-artifact-num-to-keep}'
67
68     parameters:
69         - project-parameter:
70             project: '{project}'
71         - gerrit-parameters:
72             project: '{project}'
73             branch: '{branch}'
74             refspec: 'refs/heads/{branch}'
75
76     scm:
77         - gerrit-trigger-scm:
78             credentials-id: '{ssh-credentials}'
79             refspec: '$GERRIT_REFSPEC'
80             choosing-strategy: 'gerrit'
81
82     wrappers:
83         - build-timeout
84         - ssh-agent-credentials:
85             users:
86                 - '{ssh-credentials}'
87
88     triggers:
89         - gerrit-trigger-patch-submitted:
90             name: 'opflex'
91             branch: '{branch}'
92
93     builders:
94         - opflex-build:
95             mvn33: '{mvn33}'
96             stream: '{stream}'
97
98     publishers:
99         - email-notification:
100             email-prefix: '[opflex]'
101
102 - job-template:
103     name: 'opflex-merge-{stream}'
104
105     node: dynamic_merge
106     jdk: '{jdk}'
107
108     logrotate:
109         daysToKeep: '{build-days-to-keep}'
110         numToKeep: '{build-num-to-keep}'
111         artifactDaysToKeep: '{build-artifact-days-to-keep}'
112         artifactNumToKeep: '{build-artifact-num-to-keep}'
113
114     parameters:
115         - project-parameter:
116             project: '{project}'
117         - gerrit-parameters:
118             project: '{project}'
119             branch: '{branch}'
120             refspec: 'refs/heads/{branch}'
121
122     scm:
123         - gerrit-trigger-scm:
124             credentials-id: '{ssh-credentials}'
125             refspec: ''
126             choosing-strategy: 'default'
127
128     wrappers:
129         - build-timeout
130         - ssh-agent-credentials:
131             users:
132                 - '{ssh-credentials}'
133
134     triggers:
135         - gerrit-trigger-patch-merged:
136             name: 'opflex'
137             branch: '{branch}'
138
139     builders:
140         - opflex-build:
141             mvn33: '{mvn33}'
142             stream: '{stream}'
143
144     publishers:
145         - email-notification:
146             email-prefix: '[opflex]'
147         - archive:
148             artifacts: '**/*.tar.gz'