Changing docker module packaging to JAR
[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>jar</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     <resources>
33         <resource>
34             <directory>src/main/docker</directory>
35         </resource>
36     </resources>
37     <plugins>
38       <plugin>
39         <groupId>org.codehaus.groovy.maven</groupId>
40         <artifactId>gmaven-plugin</artifactId>
41         <version>1.0</version>
42         <executions>
43           <execution>
44             <phase>validate</phase>
45             <goals>
46               <goal>execute</goal>
47             </goals>
48             <configuration>
49               <source>
50                 println 'Project version: ' + project.properties['so.project.version'];
51                 def versionArray;
52                 if ( project.properties['so.project.version'] != null ) {
53                   versionArray = project.properties['so.project.version'].split('-');
54                 }
55
56                 if ( project.properties['so.project.version'].endsWith("-SNAPSHOT") ) {
57                   project.properties['project.docker.latesttag.version']=versionArray[0] + "-SNAPSHOT-latest";
58                 } else {
59                   project.properties['project.docker.latesttag.version']=versionArray[0] + "-STAGING-latest";
60                 }
61
62                 println 'New tag for docker: ' + project.properties['project.docker.latesttag.version'];
63               </source>
64             </configuration>
65           </execution>
66         </executions>
67       </plugin>
68
69       <plugin>
70         <groupId>io.fabric8</groupId>
71         <artifactId>docker-maven-plugin</artifactId>
72         <version>0.31.0</version>
73         <configuration combine.self="override">
74           <verbose>true</verbose>
75           <apiVersion>1.23</apiVersion>
76           <pullRegistry>${docker.pull.registry}</pullRegistry>
77           <pushRegistry>${docker.push.registry}</pushRegistry>
78           <images>
79             <image>
80               <name>${docker.image.prefix}/base-image:1.0</name>
81               <build>
82                 <cleanup>try</cleanup>
83                 <dockerFile>docker-files/Dockerfile.so-base-image</dockerFile>
84               </build>
85             </image>
86             <image>
87               <name>${docker.image.prefix}/vnfm-adapter</name>
88               <build>
89                 <cleanup>try</cleanup>
90                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
91                 <tags>
92                   <!--tag>${project.version}</tag-->
93                   <tag>${project.version}-${maven.build.timestamp}</tag>
94                   <tag>${project.docker.latesttag.version}</tag>
95                 </tags>
96                 <assembly>
97                   <inline>
98                     <dependencySets>
99                       <dependencySet>
100                         <includes>
101                           <include>org.onap.so.adapters:etsi-sol003-adapter-application</include>
102                         </includes>
103                         <outputFileNameMapping>app.jar</outputFileNameMapping>
104                       </dependencySet>
105                     </dependencySets>
106                   </inline>
107                 </assembly>
108               </build>
109             </image>
110              <image>
111               <name>${docker.image.prefix}/mso-cnf-adapter</name>
112               <build>
113                 <cleanup>try</cleanup>
114                 <dockerFile>docker-files/Dockerfile.mso-cnf-adapter</dockerFile>
115                 <tags>
116                   <tag>${project.version}</tag>
117                   <tag>${project.version}-${maven.build.timestamp}</tag>
118                   <tag>${project.docker.latesttag.version}</tag>
119                 </tags>
120                 <assembly>
121                   <inline>
122                     <dependencySets>
123                       <dependencySet>
124                         <includes>
125                           <include>org.onap.so.adapters:mso-cnf-adapter</include>
126                         </includes>
127                         <outputFileNameMapping>app.jar</outputFileNameMapping>
128                       </dependencySet>
129                     </dependencySets>
130                   </inline>
131                 </assembly>
132               </build>
133             </image>
134             <image>
135               <name>${docker.image.prefix}/catalog-db-adapter</name>
136               <build>
137                 <cleanup>try</cleanup>
138                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
139                 <tags>
140                   <tag>${project.version}</tag>
141                   <tag>${project.version}-${maven.build.timestamp}</tag>
142                   <tag>${project.docker.latesttag.version}</tag>
143                 </tags>
144                 <assembly>
145                   <inline>
146                     <dependencySets>
147                       <dependencySet>
148                         <includes>
149                           <include>org.onap.so.adapters:mso-catalog-db-adapter</include>
150                         </includes>
151                         <outputFileNameMapping>app.jar</outputFileNameMapping>
152                       </dependencySet>
153                     </dependencySets>
154                   </inline>
155                 </assembly>
156               </build>
157             </image>
158             <image>
159               <name>${docker.image.prefix}/request-db-adapter</name>
160               <build>
161                 <cleanup>try</cleanup>
162                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
163                 <tags>
164                   <tag>${project.version}</tag>
165                   <tag>${project.version}-${maven.build.timestamp}</tag>
166                   <tag>${project.docker.latesttag.version}</tag>
167                 </tags>
168                 <assembly>
169                   <inline>
170                     <dependencySets>
171                       <dependencySet>
172                         <includes>
173                           <include>org.onap.so.adapters:mso-requests-db-adapter</include>
174                         </includes>
175                         <outputFileNameMapping>app.jar</outputFileNameMapping>
176                       </dependencySet>
177                     </dependencySets>
178                   </inline>
179                 </assembly>
180               </build>
181             </image>
182             <image>
183               <name>${docker.image.prefix}/sdnc-adapter</name>
184               <build>
185                 <cleanup>try</cleanup>
186                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
187                 <tags>
188                   <tag>${project.version}</tag>
189                   <tag>${project.version}-${maven.build.timestamp}</tag>
190                   <tag>${project.docker.latesttag.version}</tag>
191                 </tags>
192                 <assembly>
193                   <inline>
194                     <dependencySets>
195                       <dependencySet>
196                         <includes>
197                           <include>org.onap.so:mso-sdnc-adapter</include>
198                         </includes>
199                         <outputFileNameMapping>app.jar</outputFileNameMapping>
200                       </dependencySet>
201                     </dependencySets>
202                   </inline>
203                 </assembly>
204               </build>
205             </image>
206             <image>
207               <name>${docker.image.prefix}/openstack-adapter</name>
208               <build>
209                 <cleanup>try</cleanup>
210                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
211                 <tags>
212                   <tag>${project.version}</tag>
213                   <tag>${project.version}-${maven.build.timestamp}</tag>
214                   <tag>${project.docker.latesttag.version}</tag>
215                 </tags>
216                 <assembly>
217                   <inline>
218                     <dependencySets>
219                       <dependencySet>
220                         <includes>
221                           <include>org.onap.so:mso-openstack-adapters</include>
222                         </includes>
223                         <outputFileNameMapping>app.jar</outputFileNameMapping>
224                       </dependencySet>
225                     </dependencySets>
226                   </inline>
227                 </assembly>
228               </build>
229             </image>
230             <image>
231               <name>${docker.image.prefix}/vfc-adapter</name>
232               <build>
233                 <cleanup>try</cleanup>
234                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
235                 <tags>
236                   <tag>${project.version}</tag>
237                   <tag>${project.version}-${maven.build.timestamp}</tag>
238                   <tag>${project.docker.latesttag.version}</tag>
239                 </tags>
240                 <assembly>
241                   <inline>
242                     <dependencySets>
243                       <dependencySet>
244                         <includes>
245                           <include>org.onap.so.adapters:mso-vfc-adapter</include>
246                         </includes>
247                         <outputFileNameMapping>app.jar</outputFileNameMapping>
248                       </dependencySet>
249                     </dependencySets>
250                   </inline>
251                 </assembly>
252               </build>
253             </image>
254             <image>
255               <name>${docker.image.prefix}/nssmf-adapter</name>
256               <build>
257                 <cleanup>try</cleanup>
258                 <dockerFile>docker-files/Dockerfile.so-nssmf-adapter</dockerFile>
259                 <tags>
260                   <tag>${project.version}</tag>
261                   <tag>${project.version}-${maven.build.timestamp}</tag>
262                   <tag>${project.docker.latesttag.version}</tag>
263                 </tags>
264                 <assembly>
265                   <inline>
266                     <dependencySets>
267                       <dependencySet>
268                         <includes>
269                           <include>org.onap.so.adapters:mso-nssmf-adapter</include>
270                         </includes>
271                         <outputFileNameMapping>app.jar</outputFileNameMapping>
272                       </dependencySet>
273                     </dependencySets>
274                   </inline>
275                 </assembly>
276               </build>
277             </image>
278             <image>
279               <name>${docker.image.prefix}/so-oof-adapter</name>
280               <build>
281                 <cleanup>try</cleanup>
282                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
283                 <tags>
284                   <tag>${project.version}</tag>
285                   <tag>${project.version}-${maven.build.timestamp}</tag>
286                   <tag>${project.docker.latesttag.version}</tag>
287                 </tags>
288                 <assembly>
289                   <inline>
290                     <dependencySets>
291                       <dependencySet>
292                         <includes>
293                           <include>org.onap.so.adapters:mso-oof-adapter</include>
294                         </includes>
295                         <outputFileNameMapping>app.jar</outputFileNameMapping>
296                       </dependencySet>
297                     </dependencySets>
298                   </inline>
299                 </assembly>
300               </build>
301             </image>
302             <image>
303               <name>${docker.image.prefix}/so-appc-orchestrator</name>
304               <build>
305                 <cleanup>try</cleanup>
306                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
307                 <tags>
308                   <tag>${project.version}</tag>
309                   <tag>${project.version}-${maven.build.timestamp}</tag>
310                   <tag>${project.docker.latesttag.version}</tag>
311                 </tags>
312                 <assembly>
313                   <inline>
314                     <dependencySets>
315                       <dependencySet>
316                         <includes>
317                           <include>org.onap.so.adapters:so-appc-orchestrator</include>
318                         </includes>
319                         <outputFileNameMapping>app.jar</outputFileNameMapping>
320                       </dependencySet>
321                     </dependencySets>
322                   </inline>
323                 </assembly>
324               </build>
325             </image>
326             <image>
327               <name>${docker.image.prefix}/sdc-controller</name>
328               <build>
329                 <cleanup>try</cleanup>
330                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
331                 <tags>
332                   <tag>${project.version}</tag>
333                   <tag>${project.version}-${maven.build.timestamp}</tag>
334                   <tag>${project.docker.latesttag.version}</tag>
335                 </tags>
336                 <assembly>
337                   <inline>
338                     <dependencySets>
339                       <dependencySet>
340                         <includes>
341                           <include>org.onap.so:asdc-controller</include>
342                         </includes>
343                         <outputFileNameMapping>app.jar</outputFileNameMapping>
344                       </dependencySet>
345                     </dependencySets>
346                   </inline>
347                 </assembly>
348               </build>
349             </image>
350             <image>
351               <name>${docker.image.prefix}/bpmn-infra</name>
352               <build>
353                 <cleanup>try</cleanup>
354                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
355                 <tags>
356                   <tag>${project.version}</tag>
357                   <tag>${project.version}-${maven.build.timestamp}</tag>
358                   <tag>${project.docker.latesttag.version}</tag>
359                 </tags>
360                 <assembly>
361                   <inline>
362                     <dependencySets>
363                       <dependencySet>
364                         <includes>
365                           <include>org.onap.so:mso-infrastructure-bpmn</include>
366                         </includes>
367                         <outputFileNameMapping>app.jar</outputFileNameMapping>
368                       </dependencySet>
369                     </dependencySets>
370                   </inline>
371                 </assembly>
372               </build>
373             </image>
374             <image>
375               <name>${docker.image.prefix}/api-handler-infra</name>
376               <build>
377                 <cleanup>try</cleanup>
378                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
379                 <tags>
380                   <tag>${project.version}</tag>
381                   <tag>${project.version}-${maven.build.timestamp}</tag>
382                   <tag>${project.docker.latesttag.version}</tag>
383                 </tags>
384                 <assembly>
385                   <inline>
386                     <dependencySets>
387                       <dependencySet>
388                         <includes>
389                           <include>org.onap.so:mso-api-handler-infra</include>
390                         </includes>
391                         <outputFileNameMapping>app.jar</outputFileNameMapping>
392                       </dependencySet>
393                     </dependencySets>
394                   </inline>
395                 </assembly>
396               </build>
397             </image>
398             <image>
399               <name>${docker.image.prefix}/so-monitoring</name>
400               <build>
401                 <cleanup>try</cleanup>
402                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
403                 <tags>
404                   <tag>${project.version}</tag>
405                   <tag>${project.version}-${maven.build.timestamp}</tag>
406                   <tag>${project.docker.latesttag.version}</tag>
407                 </tags>
408                 <assembly>
409                   <inline>
410                     <dependencySets>
411                       <dependencySet>
412                         <includes>
413                           <include>org.onap.so.monitoring:so-monitoring-service</include>
414                         </includes>
415                         <outputFileNameMapping>app.jar</outputFileNameMapping>
416                       </dependencySet>
417                     </dependencySets>
418                   </inline>
419                 </assembly>
420               </build>
421             </image>
422             <image>
423               <name>${docker.image.prefix}/so-simulator</name>
424               <build>
425                 <cleanup>try</cleanup>
426                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
427                 <tags>
428                   <tag>${project.version}</tag>
429                   <tag>${project.version}-${maven.build.timestamp}</tag>
430                   <tag>${project.docker.latesttag.version}</tag>
431                 </tags>
432                 <assembly>
433                   <inline>
434                     <dependencySets>
435                       <dependencySet>
436                         <includes>
437                           <include>org.onap.so.simulator:so-simulator</include>
438                         </includes>
439                         <outputFileNameMapping>app.jar</outputFileNameMapping>
440                       </dependencySet>
441                     </dependencySets>
442                   </inline>
443                 </assembly>
444               </build>
445             </image>
446             <image>
447               <name>${docker.image.prefix}/so-etsi-nfvo-ns-lcm</name>
448               <build>
449                 <cleanup>try</cleanup>
450                 <dockerFile>docker-files/Dockerfile.so-app</dockerFile>
451                 <tags>
452                   <tag>${project.version}</tag>
453                   <tag>${project.version}-${maven.build.timestamp}</tag>
454                   <tag>${project.docker.latesttag.version}</tag>
455                 </tags>
456                 <assembly>
457                   <inline>
458                     <dependencySets>
459                       <dependencySet>
460                         <includes>
461                           <include>org.onap.so.etsi.nfvo:so-etsi-nfvo-ns-lcm-application</include>
462                         </includes>
463                         <outputFileNameMapping>app.jar</outputFileNameMapping>
464                       </dependencySet>
465                     </dependencySets>
466                   </inline>
467                 </assembly>
468               </build>
469             </image>
470           </images>
471         </configuration>
472
473         <executions>
474           <execution>
475             <id>clean-images</id>
476             <phase>pre-clean</phase>
477             <goals>
478               <goal>remove</goal>
479             </goals>
480             <configuration>
481               <removeAll>true</removeAll>
482             </configuration>
483           </execution>
484
485           <execution>
486             <id>generate-images</id>
487             <phase>generate-sources</phase>
488             <goals>
489               <goal>build</goal>
490             </goals>
491           </execution>
492
493           <execution>
494             <id>push-images</id>
495             <phase>${docker.push.phase}</phase>
496             <goals>
497               <goal>build</goal>
498               <goal>push</goal>
499             </goals>
500             <configuration>
501               <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}/so-oof-adapter,${docker.image.prefix}/mso-cnf-adapter,${docker.image.prefix}/so-etsi-nfvo-ns-lcm</image>
502             </configuration>
503           </execution>
504         </executions>
505       </plugin>
506
507       <plugin>
508         <groupId>org.apache.maven.plugins</groupId>
509         <artifactId>maven-deploy-plugin</artifactId>
510         <version>2.8</version>
511         <configuration>
512           <skip>true</skip>
513         </configuration>
514       </plugin>
515     </plugins>
516   </build>
517
518   <dependencies>
519     <dependency>
520       <groupId>org.onap.so.adapters</groupId>
521       <artifactId>etsi-sol003-adapter-application</artifactId>
522       <version>${project.version}</version>
523     </dependency>
524     <dependency>
525       <groupId>org.onap.so.adapters</groupId>
526       <artifactId>mso-catalog-db-adapter</artifactId>
527       <version>${project.version}</version>
528     </dependency>
529     <dependency>
530       <groupId>org.onap.so.adapters</groupId>
531       <artifactId>mso-cnf-adapter</artifactId>
532       <version>${project.version}</version>
533     </dependency>
534     <dependency>
535       <groupId>org.onap.so.adapters</groupId>
536       <artifactId>mso-requests-db-adapter</artifactId>
537       <version>${project.version}</version>
538     </dependency>
539     <dependency>
540       <groupId>org.onap.so</groupId>
541       <artifactId>mso-sdnc-adapter</artifactId>
542       <version>${project.version}</version>
543     </dependency>
544     <dependency>
545       <groupId>org.onap.so</groupId>
546       <artifactId>mso-openstack-adapters</artifactId>
547       <version>${project.version}</version>
548     </dependency>
549     <dependency>
550       <groupId>org.onap.so.adapters</groupId>
551       <artifactId>mso-vfc-adapter</artifactId>
552       <version>${project.version}</version>
553     </dependency>
554     <dependency>
555       <groupId>org.onap.so.adapters</groupId>
556       <artifactId>mso-nssmf-adapter</artifactId>
557       <version>${project.version}</version>
558     </dependency>
559     <dependency>
560       <groupId>org.onap.so.adapters</groupId>
561       <artifactId>mso-oof-adapter</artifactId>
562       <version>${project.version}</version>
563     </dependency>
564     <dependency>
565       <groupId>org.onap.so.adapters</groupId>
566       <artifactId>so-appc-orchestrator</artifactId>
567       <version>${project.version}</version>
568     </dependency>
569     <dependency>
570       <groupId>org.onap.so</groupId>
571       <artifactId>asdc-controller</artifactId>
572       <version>${project.version}</version>
573     </dependency>
574     <dependency>
575       <groupId>org.onap.so</groupId>
576       <artifactId>mso-infrastructure-bpmn</artifactId>
577       <version>${project.version}</version>
578     </dependency>
579     <dependency>
580       <groupId>org.onap.so</groupId>
581       <artifactId>mso-api-handler-infra</artifactId>
582       <version>${project.version}</version>
583     </dependency>
584     <dependency>
585       <groupId>org.onap.so.monitoring</groupId>
586       <artifactId>so-monitoring-service</artifactId>
587       <version>${project.version}</version>
588     </dependency>
589     <dependency>
590       <groupId>org.onap.so.simulator</groupId>
591       <artifactId>so-simulator</artifactId>
592       <version>${project.version}</version>
593     </dependency>
594     <dependency>
595       <groupId>org.onap.so.etsi.nfvo</groupId>
596       <artifactId>so-etsi-nfvo-ns-lcm-application</artifactId>
597       <version>${project.version}</version>
598     </dependency>
599   </dependencies>
600 </project>