Merge "New Module mso-cnf-adapter with docker config"
[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.7.1-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}/mso-cnf-adapter</name>
107               <build>
108                 <cleanup>try</cleanup>
109                 <dockerFile>docker-files/Dockerfile.mso-cnf-adapter</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-cnf-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}/catalog-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-catalog-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}/request-db-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.adapters:mso-requests-db-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}/sdnc-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-sdnc-adapter</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}/openstack-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:mso-openstack-adapters</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}/vfc-adapter</name>
227               <build>
228                 <cleanup>try</cleanup>
229                 <dockerFile>docker-files/Dockerfile.so-app</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-vfc-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}/nssmf-adapter</name>
251               <build>
252                 <cleanup>try</cleanup>
253                 <dockerFile>docker-files/Dockerfile.so-nssmf-adapter</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:mso-nssmf-adapter</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}/so-appc-orchestrator</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.adapters:so-appc-orchestrator</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}/sdc-controller</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:asdc-controller</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}/bpmn-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-infrastructure-bpmn</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}/api-handler-infra</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:mso-api-handler-infra</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-monitoring</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.monitoring:so-monitoring-service</include>
385                         </includes>
386                         <outputFileNameMapping>app.jar</outputFileNameMapping>
387                       </dependencySet>
388                     </dependencySets>
389                   </inline>
390                 </assembly>
391               </build>
392             </image>
393             <image>
394               <name>${docker.image.prefix}/so-simulator</name>
395               <build>
396                 <cleanup>try</cleanup>
397                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
398                 <tags>
399                   <tag>${project.version}</tag>
400                   <tag>${project.version}-${maven.build.timestamp}</tag>
401                   <tag>${project.docker.latesttag.version}</tag>
402                 </tags>
403                 <assembly>
404                   <inline>
405                     <dependencySets>
406                       <dependencySet>
407                         <includes>
408                           <include>org.onap.so.simulator:so-simulator</include>
409                         </includes>
410                         <outputFileNameMapping>app.jar</outputFileNameMapping>
411                       </dependencySet>
412                     </dependencySets>
413                   </inline>
414                 </assembly>
415               </build>
416             </image>
417           </images>
418         </configuration>
419
420         <executions>
421           <execution>
422             <id>clean-images</id>
423             <phase>pre-clean</phase>
424             <goals>
425               <goal>remove</goal>
426             </goals>
427             <configuration>
428               <removeAll>true</removeAll>
429             </configuration>
430           </execution>
431
432           <execution>
433             <id>generate-images</id>
434             <phase>generate-sources</phase>
435             <goals>
436               <goal>build</goal>
437             </goals>
438           </execution>
439
440           <execution>
441             <id>push-images</id>
442             <phase>${docker.push.phase}</phase>
443             <goals>
444               <goal>build</goal>
445               <goal>push</goal>
446             </goals>
447             <configuration>
448               <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,${docker.image.prefix}/mso-cnf-adapter</image>
449             </configuration>
450           </execution>
451         </executions>
452       </plugin>
453
454       <plugin>
455         <groupId>org.apache.maven.plugins</groupId>
456         <artifactId>maven-deploy-plugin</artifactId>
457         <version>2.8</version>
458         <configuration>
459           <skip>true</skip>
460         </configuration>
461       </plugin>
462     </plugins>
463   </build>
464
465   <dependencies>
466     <dependency>
467       <groupId>org.onap.so.adapters</groupId>
468       <artifactId>etsi-sol003-adapter-application</artifactId>
469       <version>${project.version}</version>
470     </dependency>
471     <dependency>
472       <groupId>org.onap.so.adapters</groupId>
473       <artifactId>mso-catalog-db-adapter</artifactId>
474       <version>${project.version}</version>
475     </dependency>
476     <dependency>
477       <groupId>org.onap.so.adapters</groupId>
478       <artifactId>mso-cnf-adapter</artifactId>
479       <version>${project.version}</version>
480     </dependency>
481     <dependency>
482       <groupId>org.onap.so.adapters</groupId>
483       <artifactId>mso-requests-db-adapter</artifactId>
484       <version>${project.version}</version>
485     </dependency>
486     <dependency>
487       <groupId>org.onap.so</groupId>
488       <artifactId>mso-sdnc-adapter</artifactId>
489       <version>${project.version}</version>
490     </dependency>
491     <dependency>
492       <groupId>org.onap.so</groupId>
493       <artifactId>mso-openstack-adapters</artifactId>
494       <version>${project.version}</version>
495     </dependency>
496     <dependency>
497       <groupId>org.onap.so.adapters</groupId>
498       <artifactId>mso-vfc-adapter</artifactId>
499       <version>${project.version}</version>
500     </dependency>
501     <dependency>
502       <groupId>org.onap.so.adapters</groupId>
503       <artifactId>mso-nssmf-adapter</artifactId>
504       <version>${project.version}</version>
505     </dependency>
506     <dependency>
507       <groupId>org.onap.so.adapters</groupId>
508       <artifactId>so-appc-orchestrator</artifactId>
509       <version>${project.version}</version>
510     </dependency>
511     <dependency>
512       <groupId>org.onap.so</groupId>
513       <artifactId>asdc-controller</artifactId>
514       <version>${project.version}</version>
515     </dependency>
516     <dependency>
517       <groupId>org.onap.so</groupId>
518       <artifactId>mso-infrastructure-bpmn</artifactId>
519       <version>${project.version}</version>
520     </dependency>
521     <dependency>
522       <groupId>org.onap.so</groupId>
523       <artifactId>mso-api-handler-infra</artifactId>
524       <version>${project.version}</version>
525     </dependency>
526     <dependency>
527       <groupId>org.onap.so.monitoring</groupId>
528       <artifactId>so-monitoring-service</artifactId>
529       <version>${project.version}</version>
530     </dependency>
531     <dependency>
532       <groupId>org.onap.so.simulator</groupId>
533       <artifactId>so-simulator</artifactId>
534       <version>${project.version}</version>
535     </dependency>
536   </dependencies>
537 </project>