Merge "add lambda function to modify uris"
[so.git] / packages / docker / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3
4   <modelVersion>4.0.0</modelVersion>
5
6   <parent>
7     <groupId>org.onap.so</groupId>
8     <artifactId>packages</artifactId>
9     <version>1.6.0-SNAPSHOT</version>
10   </parent>
11
12   <packaging>pom</packaging>
13   <artifactId>docker</artifactId>
14   <name>Docker Images</name>
15   <description>Docker Images</description>
16
17   <properties>
18     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
19     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
20     <so.project.version>${project.version}</so.project.version>
21     <docker.skip>false</docker.skip>
22     <docker.skip.build>false</docker.skip.build>
23     <docker.skip.push>false</docker.skip.push>
24     <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
25     <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
26     <docker.image.prefix>onap/so</docker.image.prefix>
27     <docker.push.phase>deploy</docker.push.phase>
28   </properties>
29
30   <build>
31     <finalName>${project.artifactId}-${project.version}</finalName>
32     <plugins>
33       <plugin>
34         <groupId>org.codehaus.groovy.maven</groupId>
35         <artifactId>gmaven-plugin</artifactId>
36         <version>1.0</version>
37         <executions>
38           <execution>
39             <phase>validate</phase>
40             <goals>
41               <goal>execute</goal>
42             </goals>
43             <configuration>
44               <source>
45                 println 'Project version: ' + project.properties['so.project.version'];
46                 def versionArray;
47                 if ( project.properties['so.project.version'] != null ) {
48                   versionArray = project.properties['so.project.version'].split('-');
49                 }
50
51                 if ( project.properties['so.project.version'].endsWith("-SNAPSHOT") ) {
52                   project.properties['project.docker.latesttag.version']=versionArray[0] + "-SNAPSHOT-latest";
53                 } else {
54                   project.properties['project.docker.latesttag.version']=versionArray[0] + "-STAGING-latest";
55                 }
56
57                 println 'New tag for docker: ' + project.properties['project.docker.latesttag.version'];
58               </source>
59             </configuration>
60           </execution>
61         </executions>
62       </plugin>
63
64       <plugin>
65         <groupId>io.fabric8</groupId>
66         <artifactId>docker-maven-plugin</artifactId>
67         <version>0.31.0</version>
68         <configuration combine.self="override">
69           <verbose>true</verbose>
70           <apiVersion>1.23</apiVersion>
71           <pullRegistry>${docker.pull.registry}</pullRegistry>
72           <pushRegistry>${docker.push.registry}</pushRegistry>
73           <images>
74             <image>
75               <name>${docker.image.prefix}/base-image:1.0</name>
76               <build>
77                 <cleanup>try</cleanup>
78                 <dockerFile>docker-files/Dockerfile.so-base-image</dockerFile>
79               </build>
80             </image>
81             <image>
82               <name>${docker.image.prefix}/vnfm-adapter</name>
83               <build>
84                 <cleanup>try</cleanup>
85                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
86                 <tags>
87                   <tag>${project.version}</tag>
88                   <tag>${project.version}-${maven.build.timestamp}</tag>
89                   <tag>${project.docker.latesttag.version}</tag>
90                 </tags>
91                 <assembly>
92                   <inline>
93                     <dependencySets>
94                       <dependencySet>
95                         <includes>
96                           <include>org.onap.so.adapters:etsi-sol003-adapter-application</include>
97                         </includes>
98                         <outputFileNameMapping>app.jar</outputFileNameMapping>
99                       </dependencySet>
100                     </dependencySets>
101                   </inline>
102                 </assembly>
103               </build>
104             </image>
105             <image>
106               <name>${docker.image.prefix}/catalog-db-adapter</name>
107               <build>
108                 <cleanup>try</cleanup>
109                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
110                 <tags>
111                   <tag>${project.version}</tag>
112                   <tag>${project.version}-${maven.build.timestamp}</tag>
113                   <tag>${project.docker.latesttag.version}</tag>
114                 </tags>
115                 <assembly>
116                   <inline>
117                     <dependencySets>
118                       <dependencySet>
119                         <includes>
120                           <include>org.onap.so.adapters:mso-catalog-db-adapter</include>
121                         </includes>
122                         <outputFileNameMapping>app.jar</outputFileNameMapping>
123                       </dependencySet>
124                     </dependencySets>
125                   </inline>
126                 </assembly>
127               </build>
128             </image>
129             <image>
130               <name>${docker.image.prefix}/request-db-adapter</name>
131               <build>
132                 <cleanup>try</cleanup>
133                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
134                 <tags>
135                   <tag>${project.version}</tag>
136                   <tag>${project.version}-${maven.build.timestamp}</tag>
137                   <tag>${project.docker.latesttag.version}</tag>
138                 </tags>
139                 <assembly>
140                   <inline>
141                     <dependencySets>
142                       <dependencySet>
143                         <includes>
144                           <include>org.onap.so.adapters:mso-requests-db-adapter</include>
145                         </includes>
146                         <outputFileNameMapping>app.jar</outputFileNameMapping>
147                       </dependencySet>
148                     </dependencySets>
149                   </inline>
150                 </assembly>
151               </build>
152             </image>
153             <image>
154               <name>${docker.image.prefix}/sdnc-adapter</name>
155               <build>
156                 <cleanup>try</cleanup>
157                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
158                 <tags>
159                   <tag>${project.version}</tag>
160                   <tag>${project.version}-${maven.build.timestamp}</tag>
161                   <tag>${project.docker.latesttag.version}</tag>
162                 </tags>
163                 <assembly>
164                   <inline>
165                     <dependencySets>
166                       <dependencySet>
167                         <includes>
168                           <include>org.onap.so:mso-sdnc-adapter</include>
169                         </includes>
170                         <outputFileNameMapping>app.jar</outputFileNameMapping>
171                       </dependencySet>
172                     </dependencySets>
173                   </inline>
174                 </assembly>
175               </build>
176             </image>
177             <image>
178               <name>${docker.image.prefix}/openstack-adapter</name>
179               <build>
180                 <cleanup>try</cleanup>
181                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
182                 <tags>
183                   <tag>${project.version}</tag>
184                   <tag>${project.version}-${maven.build.timestamp}</tag>
185                   <tag>${project.docker.latesttag.version}</tag>
186                 </tags>
187                 <assembly>
188                   <inline>
189                     <dependencySets>
190                       <dependencySet>
191                         <includes>
192                           <include>org.onap.so:mso-openstack-adapters</include>
193                         </includes>
194                         <outputFileNameMapping>app.jar</outputFileNameMapping>
195                       </dependencySet>
196                     </dependencySets>
197                   </inline>
198                 </assembly>
199               </build>
200             </image>
201             <image>
202               <name>${docker.image.prefix}/vfc-adapter</name>
203               <build>
204                 <cleanup>try</cleanup>
205                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
206                 <tags>
207                   <tag>${project.version}</tag>
208                   <tag>${project.version}-${maven.build.timestamp}</tag>
209                   <tag>${project.docker.latesttag.version}</tag>
210                 </tags>
211                 <assembly>
212                   <inline>
213                     <dependencySets>
214                       <dependencySet>
215                         <includes>
216                           <include>org.onap.so.adapters:mso-vfc-adapter</include>
217                         </includes>
218                         <outputFileNameMapping>app.jar</outputFileNameMapping>
219                       </dependencySet>
220                     </dependencySets>
221                   </inline>
222                 </assembly>
223               </build>
224             </image>
225             <image>
226               <name>${docker.image.prefix}/nssmf-adapter</name>
227               <build>
228                 <cleanup>try</cleanup>
229                 <dockerFile>docker-files/Dockerfile.so-nssmf-adapter</dockerFile>
230                 <tags>
231                   <tag>${project.version}</tag>
232                   <tag>${project.version}-${maven.build.timestamp}</tag>
233                   <tag>${project.docker.latesttag.version}</tag>
234                 </tags>
235                 <assembly>
236                   <inline>
237                     <dependencySets>
238                       <dependencySet>
239                         <includes>
240                           <include>org.onap.so.adapters:mso-nssmf-adapter</include>
241                         </includes>
242                         <outputFileNameMapping>app.jar</outputFileNameMapping>
243                       </dependencySet>
244                     </dependencySets>
245                   </inline>
246                 </assembly>
247               </build>
248             </image>
249             <image>
250               <name>${docker.image.prefix}/so-appc-orchestrator</name>
251               <build>
252                 <cleanup>try</cleanup>
253                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
254                 <tags>
255                   <tag>${project.version}</tag>
256                   <tag>${project.version}-${maven.build.timestamp}</tag>
257                   <tag>${project.docker.latesttag.version}</tag>
258                 </tags>
259                 <assembly>
260                   <inline>
261                     <dependencySets>
262                       <dependencySet>
263                         <includes>
264                           <include>org.onap.so.adapters:so-appc-orchestrator</include>
265                         </includes>
266                         <outputFileNameMapping>app.jar</outputFileNameMapping>
267                       </dependencySet>
268                     </dependencySets>
269                   </inline>
270                 </assembly>
271               </build>
272             </image>
273             <image>
274               <name>${docker.image.prefix}/sdc-controller</name>
275               <build>
276                 <cleanup>try</cleanup>
277                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
278                 <tags>
279                   <tag>${project.version}</tag>
280                   <tag>${project.version}-${maven.build.timestamp}</tag>
281                   <tag>${project.docker.latesttag.version}</tag>
282                 </tags>
283                 <assembly>
284                   <inline>
285                     <dependencySets>
286                       <dependencySet>
287                         <includes>
288                           <include>org.onap.so:asdc-controller</include>
289                         </includes>
290                         <outputFileNameMapping>app.jar</outputFileNameMapping>
291                       </dependencySet>
292                     </dependencySets>
293                   </inline>
294                 </assembly>
295               </build>
296             </image>
297             <image>
298               <name>${docker.image.prefix}/bpmn-infra</name>
299               <build>
300                 <cleanup>try</cleanup>
301                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
302                 <tags>
303                   <tag>${project.version}</tag>
304                   <tag>${project.version}-${maven.build.timestamp}</tag>
305                   <tag>${project.docker.latesttag.version}</tag>
306                 </tags>
307                 <assembly>
308                   <inline>
309                     <dependencySets>
310                       <dependencySet>
311                         <includes>
312                           <include>org.onap.so:mso-infrastructure-bpmn</include>
313                         </includes>
314                         <outputFileNameMapping>app.jar</outputFileNameMapping>
315                       </dependencySet>
316                     </dependencySets>
317                   </inline>
318                 </assembly>
319               </build>
320             </image>
321             <image>
322               <name>${docker.image.prefix}/api-handler-infra</name>
323               <build>
324                 <cleanup>try</cleanup>
325                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
326                 <tags>
327                   <tag>${project.version}</tag>
328                   <tag>${project.version}-${maven.build.timestamp}</tag>
329                   <tag>${project.docker.latesttag.version}</tag>
330                 </tags>
331                 <assembly>
332                   <inline>
333                     <dependencySets>
334                       <dependencySet>
335                         <includes>
336                           <include>org.onap.so:mso-api-handler-infra</include>
337                         </includes>
338                         <outputFileNameMapping>app.jar</outputFileNameMapping>
339                       </dependencySet>
340                     </dependencySets>
341                   </inline>
342                 </assembly>
343               </build>
344             </image>
345             <image>
346               <name>${docker.image.prefix}/so-monitoring</name>
347               <build>
348                 <cleanup>try</cleanup>
349                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
350                 <tags>
351                   <tag>${project.version}</tag>
352                   <tag>${project.version}-${maven.build.timestamp}</tag>
353                   <tag>${project.docker.latesttag.version}</tag>
354                 </tags>
355                 <assembly>
356                   <inline>
357                     <dependencySets>
358                       <dependencySet>
359                         <includes>
360                           <include>org.onap.so.monitoring:so-monitoring-service</include>
361                         </includes>
362                         <outputFileNameMapping>app.jar</outputFileNameMapping>
363                       </dependencySet>
364                     </dependencySets>
365                   </inline>
366                 </assembly>
367               </build>
368             </image>
369             <image>
370               <name>${docker.image.prefix}/so-simulator</name>
371               <build>
372                 <cleanup>try</cleanup>
373                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
374                 <tags>
375                   <tag>${project.version}</tag>
376                   <tag>${project.version}-${maven.build.timestamp}</tag>
377                   <tag>${project.docker.latesttag.version}</tag>
378                 </tags>
379                 <assembly>
380                   <inline>
381                     <dependencySets>
382                       <dependencySet>
383                         <includes>
384                           <include>org.onap.so.simulator:so-simulator</include>
385                         </includes>
386                         <outputFileNameMapping>app.jar</outputFileNameMapping>
387                       </dependencySet>
388                     </dependencySets>
389                   </inline>
390                 </assembly>
391               </build>
392             </image>
393           </images>
394         </configuration>
395
396         <executions>
397           <execution>
398             <id>clean-images</id>
399             <phase>pre-clean</phase>
400             <goals>
401               <goal>remove</goal>
402             </goals>
403             <configuration>
404               <removeAll>true</removeAll>
405             </configuration>
406           </execution>
407
408           <execution>
409             <id>generate-images</id>
410             <phase>generate-sources</phase>
411             <goals>
412               <goal>build</goal>
413             </goals>
414           </execution>
415
416           <execution>
417             <id>push-images</id>
418             <phase>${docker.push.phase}</phase>
419             <goals>
420               <goal>build</goal>
421               <goal>push</goal>
422             </goals>
423             <configuration>
424               <image>${docker.image.prefix}/catalog-db-adapter,${docker.image.prefix}/request-db-adapter,${docker.image.prefix}/sdnc-adapter,${docker.image.prefix}/openstack-adapter,${docker.image.prefix}/vfc-adapter,${docker.image.prefix}/sdc-controller,${docker.image.prefix}/bpmn-infra,${docker.image.prefix}/api-handler-infra,${docker.image.prefix}/so-monitoring,${docker.image.prefix}/so-simulator,${docker.image.prefix}/mso-nssmf-adapter</image>
425             </configuration>
426           </execution>
427         </executions>
428       </plugin>
429
430       <plugin>
431         <groupId>org.apache.maven.plugins</groupId>
432         <artifactId>maven-deploy-plugin</artifactId>
433         <version>2.8</version>
434         <configuration>
435           <skip>true</skip>
436         </configuration>
437       </plugin>
438     </plugins>
439   </build>
440
441   <dependencies>
442     <dependency>
443       <groupId>org.onap.so.adapters</groupId>
444       <artifactId>etsi-sol003-adapter-application</artifactId>
445       <version>${project.version}</version>
446     </dependency>
447     <dependency>
448       <groupId>org.onap.so.adapters</groupId>
449       <artifactId>etsi-sol002-adapter</artifactId>
450       <version>${project.version}</version>
451     </dependency>
452     <dependency>
453       <groupId>org.onap.so.adapters</groupId>
454       <artifactId>mso-catalog-db-adapter</artifactId>
455       <version>${project.version}</version>
456     </dependency>
457     <dependency>
458       <groupId>org.onap.so.adapters</groupId>
459       <artifactId>mso-requests-db-adapter</artifactId>
460       <version>${project.version}</version>
461     </dependency>
462     <dependency>
463       <groupId>org.onap.so</groupId>
464       <artifactId>mso-sdnc-adapter</artifactId>
465       <version>${project.version}</version>
466     </dependency>
467     <dependency>
468       <groupId>org.onap.so</groupId>
469       <artifactId>mso-openstack-adapters</artifactId>
470       <version>${project.version}</version>
471     </dependency>
472     <dependency>
473       <groupId>org.onap.so.adapters</groupId>
474       <artifactId>mso-vfc-adapter</artifactId>
475       <version>${project.version}</version>
476     </dependency>
477     <dependency>
478       <groupId>org.onap.so.adapters</groupId>
479       <artifactId>mso-nssmf-adapter</artifactId>
480       <version>${project.version}</version>
481     </dependency>
482     <dependency>
483       <groupId>org.onap.so.adapters</groupId>
484       <artifactId>so-appc-orchestrator</artifactId>
485       <version>${project.version}</version>
486     </dependency>
487     <dependency>
488       <groupId>org.onap.so</groupId>
489       <artifactId>asdc-controller</artifactId>
490       <version>${project.version}</version>
491     </dependency>
492     <dependency>
493       <groupId>org.onap.so</groupId>
494       <artifactId>mso-infrastructure-bpmn</artifactId>
495       <version>${project.version}</version>
496     </dependency>
497     <dependency>
498       <groupId>org.onap.so</groupId>
499       <artifactId>mso-api-handler-infra</artifactId>
500       <version>${project.version}</version>
501     </dependency>
502     <dependency>
503       <groupId>org.onap.so.monitoring</groupId>
504       <artifactId>so-monitoring-service</artifactId>
505       <version>${project.version}</version>
506     </dependency>
507     <dependency>
508       <groupId>org.onap.so.simulator</groupId>
509       <artifactId>so-simulator</artifactId>
510       <version>${project.version}</version>
511     </dependency>
512   </dependencies>
513 </project>