Add docker jobs to distribution
[releng/builder.git] / jjb / integration / distribution / distribution-jobs.yaml
1 ---
2 - project:
3     name: distribution
4     jobs:
5       # gerrit- is generic template, distribution- is project specific.
6       - "distribution-sanity-{stream}"
7       - gerrit-maven-clm
8       - gerrit-maven-verify-dependencies
9       - gerrit-tox-verify
10       - "{project-name}-rtd-jobs":
11           project-pattern: integration/distribution
12           rtd-build-url: https://readthedocs.org/api/v2/webhook/opendaylight-distribution/34591/
13           rtd-token: 6247e7a21158a20b207470b8bf7719c676ff8944
14
15     project: integration/distribution
16     project-name: distribution
17     mvn-settings: integration-distribution-settings
18     mvn-goals: "clean install dependency:tree -DoutputFile=dependency_tree.txt"
19     mvn-opts: "-Xmx1024m"
20     java-version: openjdk11
21     jre: "openjdk11"
22     karaf-version: odl
23     nexus-iq-namespace: odl-
24     nexus-iq-stage: release
25     email-upstream: "[int/dist]"
26     stream:
27       - chlorine:
28           branch: "master"
29           mvn-version: mvn38
30       - sulfur:
31           branch: "stable/sulfur"
32           mvn-version: mvn38
33       - phosphorus:
34           branch: "stable/phosphorus"
35           mvn-version: mvn35
36
37 - project:
38     name: distribution-managed
39     jobs:
40       # gerrit- is generic template, distribution- is project specific.
41       - "distribution-merge-{type}-{stream}"
42       - "distribution-verify-{type}-{stream}"
43       - "distribution-check-{type}-{stream}"
44       - "distribution-csit-managed-{stream}"
45
46     project: integration/distribution
47     project-name: distribution
48     mvn-settings: integration-distribution-settings
49     mvn-goals: "clean install dependency:tree -DoutputFile=dependency_tree.txt"
50     mvn-opts: "-Xmx1024m"
51     email-upstream: "[int/dist]"
52     type: managed
53     profile: "-Pmanaged"
54     forbidden-files: "opendaylight/**"
55     java-version: "openjdk11"
56     jre: "openjdk11"
57     karaf-version: karaf4
58     dist-pom: "distribution/pom.xml"
59
60     stream:
61       - chlorine:
62           branch: "master"
63           mvn-version: mvn38
64           dependencies: >
65             daexim-maven-merge-{stream},
66             jsonrpc-maven-merge-{stream},
67             lispflowmapping-maven-merge-{stream},
68             openflowplugin-maven-merge-{stream},
69             ovsdb-maven-merge-{stream},
70             serviceutils-maven-merge-{stream},
71       - sulfur:
72           branch: "stable/sulfur"
73           mvn-version: mvn38
74           dependencies: >
75             daexim-maven-merge-{stream},
76             jsonrpc-maven-merge-{stream},
77             lispflowmapping-maven-merge-{stream},
78             openflowplugin-maven-merge-{stream},
79             ovsdb-maven-merge-{stream},
80             serviceutils-maven-merge-{stream},
81       - phosphorus:
82           branch: "stable/phosphorus"
83           mvn-version: mvn35
84           dependencies: >
85             daexim-maven-merge-{stream},
86             jsonrpc-maven-merge-{stream},
87             lispflowmapping-maven-merge-{stream},
88             openflowplugin-maven-merge-{stream},
89             ovsdb-maven-merge-{stream},
90             serviceutils-maven-merge-{stream},
91
92 - project:
93     name: distribution-full
94     jobs:
95       # gerrit- is generic template, distribution- is project specific.
96       - "distribution-merge-{type}-{stream}"
97       - "distribution-verify-{type}-{stream}"
98       - "distribution-check-{type}-{stream}"
99
100     project: integration/distribution
101     project-name: distribution
102     mvn-settings: integration-distribution-settings
103     mvn-goals: "clean install dependency:tree -DoutputFile=dependency_tree.txt"
104     mvn-opts: "-Xmx1024m"
105     email-upstream: "[int/dist]"
106     type: full
107     profile: "-Punmanaged"
108     files: "opendaylight/**"
109     java-version: "openjdk11"
110     karaf-version: odl
111     dist-pom: "distribution/opendaylight/pom.xml"
112     stream:
113       - chlorine:
114           branch: "master"
115           mvn-version: mvn38
116           dependencies: >
117             distribution-merge-managed-{stream},
118       - sulfur:
119           branch: "stable/sulfur"
120           mvn-version: mvn38
121           dependencies: >
122             distribution-merge-managed-{stream},
123       - phosphorus:
124           branch: "stable/phosphorus"
125           mvn-version: mvn35
126           dependencies: >
127             distribution-merge-managed-{stream},
128
129 - project:
130     name: distribution-release
131     jobs:
132       - gerrit-maven-stage:
133           sign-artifacts: true
134       - gerrit-release-merge
135
136     project: "integration/distribution"
137     project-name: "distribution"
138     use-release-file: false
139     mvn-goals: "clean deploy -f opendaylight/pom.xml"
140     mvn-settings: "integration-distribution-settings"
141     mvn-opts: "-Xmx1024m"
142     java-version: "openjdk11"
143     email-upstream: "[int/dist]"
144
145     # Used by the release job
146     staging-profile-id: 2af042ed81d5e2
147
148     stream:
149       - chlorine:
150           branch: "master"
151           mvn-version: mvn38
152       - sulfur:
153           branch: "stable/sulfur"
154           mvn-version: mvn38
155       - phosphorus:
156           branch: "stable/phosphorus"
157           mvn-version: mvn35
158
159 - project:
160     name: distribution-sonar
161     jobs:
162       - gerrit-maven-sonar
163
164     project: integration/distribution
165     project-name: distribution
166     branch: master
167     java-version: "openjdk11"
168     mvn-version: mvn38
169     mvn-settings: integration-distribution-settings
170     mvn-goals: clean install dependency:tree -DoutputFile=dependency_tree.txt
171     mvn-opts: "-Xmx1024m"
172     sonarcloud: true
173     sonarcloud-project-organization: "{sonarcloud_project_organization}"
174     sonarcloud-api-token: "{sonarcloud_api_token}"
175     sonarcloud-project-key: "{sonarcloud_project_organization}_{project-name}"
176
177 - project:
178     name: distribution-docker
179     project: integration/distribution
180     project-name: distribution
181     mvn-settings: integration-distribution-settings
182     container-tag-method: yaml-file
183     build-node: centos7-docker-4c-4g
184     docker-name: "opendaylight/opendaylight"
185     docker-root: "$WORKSPACE/docker"
186     docker-build-args: "--network=host"
187     container-public-registry: nexus3.opendaylight.org:10001
188     container-push-registry: nexus3.opendaylight.org:10003
189     gerrit_trigger_file_paths:
190       - compare-type: REG_EXP
191         pattern: "docker/.*"
192     jobs:
193       - "{project-name}-gerrit-docker-jobs"
194     stream:
195       - chlorine:
196           branch: "master"
197       - sulfur:
198           branch: "stable/sulfur"
199       - phosphorus:
200           branch: "stable/phosphorus"
201
202 - project:
203     name: distribution-docker-release
204     project: integration/distribution
205     project-name: distribution-docker
206     use-release-file: true
207     mvn-settings: integration-distribution-settings
208     container-tag-method: yaml-file
209     build-node: centos7-docker-4c-4g
210     jobs:
211       - "{project-name}-gerrit-release-jobs"
212
213 - project:
214     name: distribution-view
215     views:
216       - common-view
217     view-name: distribution
218     view-regex: "^(integration-)?distribution-.*"