Release ccsdk/distribution
[ccsdk/distribution.git] / odlsli / odlsli-alpine / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4
5     <parent>
6         <groupId>org.onap.ccsdk.parent</groupId>
7         <artifactId>odlparent-lite</artifactId>
8         <version>1.5.7</version>
9         <relativePath/>
10     </parent>
11
12     <groupId>org.onap.ccsdk.distribution</groupId>
13     <artifactId>distribution-odlsli-alpine</artifactId>
14     <version>0.7.4</version>
15     <packaging>pom</packaging>
16
17     <name>ccsdk-distribution :: odlsli-alpine</name>
18     <description>Creates Alpine-based ODLSLI Docker container</description>
19     <organization>
20         <name>openECOMP</name>
21     </organization>
22
23     <properties>
24         <base.image.name>onap/ccsdk-odl-neon-alpine-image</base.image.name>
25         <image.name>onap/ccsdk-odlsli-alpine-image</image.name>
26         <ccsdk.project.version>${project.version}</ccsdk.project.version>
27         <ccsdk.build.timestamp>${maven.build.timestamp}</ccsdk.build.timestamp>
28         <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
29         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
30         <opendaylight.root>opt/opendaylight</opendaylight.root>
31         <docker.push.phase>deploy</docker.push.phase>
32         <docker.verbose>true</docker.verbose>
33         <ansible.gpg.key>93C4A3FD7BB9C367</ansible.gpg.key>
34         <odl.features.extra>odl-restconf-all,odl-mdsal-all,odl-mdsal-apidocs, odl-daexim-all, odl-restconf-nb-rfc8040
35         </odl.features.extra>
36         <ccsdk.odl.features>
37             ccsdk-sli-core-all,ccsdk-sli-adaptors-all,ccsdk-sli-northbound-all,ccsdk-sli-plugins-all,ccsdk-features-all
38         </ccsdk.odl.features>
39         <odl.boot.features.extra>${odl.features.extra},${ccsdk.odl.features}</odl.boot.features.extra>
40
41     </properties>
42
43     <dependencies>
44         <dependency>
45             <groupId>${project.groupId}</groupId>
46             <artifactId>dependencies</artifactId>
47             <version>${project.version}</version>
48             <classifier>repo</classifier>
49             <type>zip</type>
50         </dependency>
51
52         <dependency>
53             <groupId>org.onap.ccsdk.sli.core</groupId>
54             <artifactId>dblib-installer</artifactId>
55             <version>${ccsdk.sli.core.version}</version>
56             <classifier>repo</classifier>
57             <type>zip</type>
58         </dependency>
59         <dependency>
60             <groupId>org.onap.ccsdk.sli.core</groupId>
61             <artifactId>filters-installer</artifactId>
62             <version>${ccsdk.sli.core.version}</version>
63             <classifier>repo</classifier>
64             <type>zip</type>
65         </dependency>
66         <dependency>
67             <groupId>org.onap.ccsdk.sli.core</groupId>
68             <artifactId>sli-installer</artifactId>
69             <version>${ccsdk.sli.core.version}</version>
70             <classifier>repo</classifier>
71             <type>zip</type>
72         </dependency>
73         <dependency>
74             <groupId>org.onap.ccsdk.sli.core</groupId>
75             <artifactId>sliapi-installer</artifactId>
76             <version>${ccsdk.sli.core.version}</version>
77             <classifier>repo</classifier>
78             <type>zip</type>
79         </dependency>
80         <dependency>
81             <groupId>org.onap.ccsdk.sli.core</groupId>
82             <artifactId>sliPluginUtils-installer</artifactId>
83             <version>${ccsdk.sli.core.version}</version>
84             <classifier>repo</classifier>
85             <type>zip</type>
86         </dependency>
87         <dependency>
88             <groupId>org.onap.ccsdk.sli.core</groupId>
89             <artifactId>utils-installer</artifactId>
90             <version>${ccsdk.sli.core.version}</version>
91             <classifier>repo</classifier>
92             <type>zip</type>
93         </dependency>
94         <dependency>
95             <groupId>org.onap.ccsdk.sli.core</groupId>
96             <artifactId>slicore-features-installer</artifactId>
97             <version>${ccsdk.sli.core.version}</version>
98             <classifier>repo</classifier>
99             <type>zip</type>
100         </dependency>
101         <dependency>
102             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
103             <artifactId>aai-service-installer</artifactId>
104             <version>${ccsdk.sli.adaptors.version}</version>
105             <classifier>repo</classifier>
106             <type>zip</type>
107         </dependency>
108         <dependency>
109             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
110             <artifactId>ansible-adapter-installer</artifactId>
111             <version>${ccsdk.sli.adaptors.version}</version>
112             <classifier>repo</classifier>
113             <type>zip</type>
114         </dependency>
115         <dependency>
116             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
117             <artifactId>base-http-installer</artifactId>
118             <version>${ccsdk.sli.adaptors.version}</version>
119             <classifier>repo</classifier>
120             <type>zip</type>
121         </dependency>
122         <dependency>
123             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
124             <artifactId>mdsal-resource-installer</artifactId>
125             <version>${ccsdk.sli.adaptors.version}</version>
126             <classifier>repo</classifier>
127             <type>zip</type>
128         </dependency>
129         <dependency>
130             <groupId>org.onap.ccsdk.sli.adaptors.messagerouter</groupId>
131             <artifactId>publisher.installer</artifactId>
132             <version>${ccsdk.sli.adaptors.version}</version>
133             <classifier>repo</classifier>
134             <type>zip</type>
135         </dependency>
136         <dependency>
137             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
138             <artifactId>netbox-client-installer</artifactId>
139             <version>${ccsdk.sli.adaptors.version}</version>
140             <classifier>repo</classifier>
141             <type>zip</type>
142         </dependency>
143         <dependency>
144             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
145             <artifactId>resource-assignment-installer</artifactId>
146             <version>${ccsdk.sli.adaptors.version}</version>
147             <classifier>repo</classifier>
148             <type>zip</type>
149         </dependency>
150         <dependency>
151             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
152             <artifactId>saltstack-adapter-installer</artifactId>
153             <version>${ccsdk.sli.adaptors.version}</version>
154             <classifier>repo</classifier>
155             <type>zip</type>
156         </dependency>
157         <dependency>
158             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
159             <artifactId>sql-resource-installer</artifactId>
160             <version>${ccsdk.sli.adaptors.version}</version>
161             <classifier>repo</classifier>
162             <type>zip</type>
163         </dependency>
164         <dependency>
165             <groupId>org.onap.ccsdk.sli.adaptors</groupId>
166             <artifactId>sliadaptors-features-installer</artifactId>
167             <version>${ccsdk.sli.adaptors.version}</version>
168             <classifier>repo</classifier>
169             <type>zip</type>
170         </dependency>
171
172         <dependency>
173             <groupId>org.onap.ccsdk.sli.northbound</groupId>
174             <artifactId>asdcApi-installer</artifactId>
175             <version>${ccsdk.sli.northbound.version}</version>
176             <classifier>repo</classifier>
177             <type>zip</type>
178         </dependency>
179         <dependency>
180             <groupId>org.onap.ccsdk.sli.northbound</groupId>
181             <artifactId>dataChange-installer</artifactId>
182             <version>${ccsdk.sli.northbound.version}</version>
183             <classifier>repo</classifier>
184             <type>zip</type>
185         </dependency>
186         <dependency>
187             <groupId>org.onap.ccsdk.sli.northbound</groupId>
188             <artifactId>lcm-installer</artifactId>
189             <version>${ccsdk.sli.northbound.version}</version>
190             <classifier>repo</classifier>
191             <type>zip</type>
192         </dependency>
193         <dependency>
194             <groupId>org.onap.ccsdk.sli.northbound</groupId>
195             <artifactId>slinorthbound-features-installer</artifactId>
196             <version>${ccsdk.sli.northbound.version}</version>
197             <classifier>repo</classifier>
198             <type>zip</type>
199         </dependency>
200         <dependency>
201             <groupId>org.onap.ccsdk.sli.plugins</groupId>
202             <artifactId>properties-node-installer</artifactId>
203             <version>${ccsdk.sli.plugins.version}</version>
204             <classifier>repo</classifier>
205             <type>zip</type>
206         </dependency>
207         <dependency>
208             <groupId>org.onap.ccsdk.sli.plugins</groupId>
209             <artifactId>restapi-call-node-installer</artifactId>
210             <version>${ccsdk.sli.plugins.version}</version>
211             <classifier>repo</classifier>
212             <type>zip</type>
213         </dependency>
214         <dependency>
215             <groupId>org.onap.ccsdk.sli.plugins</groupId>
216             <artifactId>template-node-installer</artifactId>
217             <version>${ccsdk.sli.plugins.version}</version>
218             <classifier>repo</classifier>
219             <type>zip</type>
220         </dependency>
221         <dependency>
222             <groupId>org.onap.ccsdk.sli.plugins</groupId>
223             <artifactId>restconf-client-installer</artifactId>
224             <version>${ccsdk.sli.plugins.version}</version>
225             <classifier>repo</classifier>
226             <type>zip</type>
227         </dependency>
228         <dependency>
229             <groupId>org.onap.ccsdk.sli.plugins</groupId>
230             <artifactId>sshapi-call-node-installer</artifactId>
231             <version>${ccsdk.sli.plugins.version}</version>
232             <classifier>repo</classifier>
233             <type>zip</type>
234         </dependency>
235         <dependency>
236             <groupId>org.onap.ccsdk.sli.plugins</groupId>
237             <artifactId>sliplugins-features-installer</artifactId>
238             <version>${ccsdk.sli.plugins.version}</version>
239             <classifier>repo</classifier>
240             <type>zip</type>
241         </dependency>
242         <dependency>
243             <groupId>org.onap.ccsdk.features</groupId>
244             <artifactId>features-installer</artifactId>
245             <version>${ccsdk.features.version}</version>
246             <classifier>repo</classifier>
247             <type>zip</type>
248         </dependency>
249         <dependency>
250             <groupId>org.onap.ccsdk.features.sdnr.wt</groupId>
251             <artifactId>sdnr-wt-feature-aggregator-installer</artifactId>
252             <version>${ccsdk.features.version}</version>
253             <classifier>repo</classifier>
254             <type>zip</type>
255         </dependency>
256         <dependency>
257             <groupId>org.onap.ccsdk.features</groupId>
258             <artifactId>aafshiro-installer</artifactId>
259             <version>${ccsdk.features.version}</version>
260             <classifier>repo</classifier>
261             <type>zip</type>
262         </dependency>
263         <dependency>
264             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
265             <artifactId>sdnr-northbound-features-installer</artifactId>
266             <version>${ccsdk.features.version}</version>
267             <classifier>repo</classifier>
268             <type>zip</type>
269         </dependency>
270         <dependency>
271             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
272             <artifactId>oofpcipoc-installer</artifactId>
273             <version>${ccsdk.features.version}</version>
274             <classifier>repo</classifier>
275             <type>zip</type>
276         </dependency>
277         <dependency>
278             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
279             <artifactId>a1Adapter-installer</artifactId>
280             <version>${ccsdk.features.version}</version>
281             <classifier>repo</classifier>
282             <type>zip</type>
283         </dependency>
284         <dependency>
285             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
286             <artifactId>CMNotify-installer</artifactId>
287             <version>${ccsdk.features.version}</version>
288             <classifier>repo</classifier>
289             <type>zip</type>
290         </dependency>
291     </dependencies>
292
293     <build>
294         <extensions>
295             <extension>
296                 <!-- this extension is required by wagon in order to pass the proxy -->
297                 <groupId>org.apache.maven.wagon</groupId>
298                 <artifactId>wagon-http-lightweight</artifactId>
299                 <version>2.2</version>
300             </extension>
301         </extensions>
302         <plugins>
303
304
305             <plugin>
306                 <groupId>org.codehaus.groovy.maven</groupId>
307                 <artifactId>gmaven-plugin</artifactId>
308                 <executions>
309                     <execution>
310                         <phase>validate</phase>
311                         <goals>
312                             <goal>execute</goal>
313                         </goals>
314                         <configuration>
315                             <source>${basedir}/../../src/main/scripts/TagVersion.groovy</source>
316                         </configuration>
317                     </execution>
318                 </executions>
319             </plugin>
320
321
322             <plugin>
323                 <artifactId>maven-resources-plugin</artifactId>
324                 <version>2.6</version>
325                 <executions>
326                     <execution>
327                         <id>copy-dockerfile</id>
328                         <goals>
329                             <goal>copy-resources</goal>
330                         </goals><!-- here the phase you need -->
331                         <phase>validate</phase>
332                         <configuration>
333                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
334                             <resources>
335                                 <resource>
336                                     <directory>src/main/docker</directory>
337                                     <includes>
338                                         <include>Dockerfile</include>
339                                     </includes>
340                                     <filtering>true</filtering>
341                                 </resource>
342                             </resources>
343                         </configuration>
344                     </execution>
345
346                     <execution>
347                         <id>copy-scripts</id>
348                         <goals>
349                             <goal>copy-resources</goal>
350                         </goals><!-- here the phase you need -->
351                         <phase>validate</phase>
352                         <configuration>
353                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory>
354                             <resources>
355                                 <resource>
356                                     <directory>../src/main/scripts</directory>
357                                     <includes>
358                                         <include>*.sh</include>
359                                     </includes>
360                                     <filtering>false</filtering>
361                                 </resource>
362                             </resources>
363                         </configuration>
364                     </execution>
365
366                     <execution>
367                         <id>copy-odl-resources</id>
368                         <goals>
369                             <goal>copy-resources</goal>
370                         </goals><!-- here the phase you need -->
371                         <phase>validate</phase>
372                         <configuration>
373                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
374                             <resources>
375                                 <resource>
376                                     <directory>../src/main/resources</directory>
377                                     <includes>
378                                         <include>idmlight.db.mv.db</include>
379                                         <include>org.ops4j.pax.logging.cfg</include>
380                                         <include>install_ccsdk.yml</include>
381                                         <include>ansible-sources.list</include>
382                                     </includes>
383                                     <filtering>false</filtering>
384                                 </resource>
385                             </resources>
386                         </configuration>
387                     </execution>
388                     <execution>
389                         <id>copy-config</id>
390                         <goals>
391                             <goal>copy-resources</goal>
392                         </goals><!-- here the phase you need -->
393                         <phase>validate</phase>
394                         <configuration>
395                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
396                             <resources>
397                                 <resource>
398                                     <directory>../src/main/resources</directory>
399                                     <includes>
400                                         <include>org.ops4j.pax.logging.cfg</include>
401                                     </includes>
402                                     <filtering>false</filtering>
403                                 </resource>
404                             </resources>
405                         </configuration>
406                     </execution>
407                     <execution>
408                         <id>copy-data</id>
409                         <goals>
410                             <goal>copy-resources</goal>
411                         </goals><!-- here the phase you need -->
412                         <phase>validate</phase>
413                         <configuration>
414                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data</outputDirectory>
415                             <resources>
416                                 <resource>
417                                     <directory>../src/main/resources</directory>
418                                     <includes>
419                                         <include>*.dump</include>
420                                     </includes>
421                                     <filtering>false</filtering>
422                                 </resource>
423                             </resources>
424                         </configuration>
425                     </execution>
426                     <execution>
427                         <id>copy-properties</id>
428                         <goals>
429                             <goal>copy-resources</goal>
430                         </goals><!-- here the phase you need -->
431                         <phase>validate</phase>
432                         <configuration>
433                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/properties
434                             </outputDirectory>
435                             <resources>
436                                 <resource>
437                                     <directory>../src/main/properties</directory>
438                                     <includes>
439                                         <include>*.properties</include>
440                                         <include>*.vt</include>
441                                     </includes>
442                                     <filtering>false</filtering>
443                                 </resource>
444                             </resources>
445                         </configuration>
446                     </execution>
447                     <execution>
448                         <id>copy-keystores</id>
449                         <goals>
450                             <goal>copy-resources</goal>
451                         </goals><!-- here the phase you need -->
452                         <phase>validate</phase>
453                         <configuration>
454                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/stores</outputDirectory>
455                             <resources>
456                                 <resource>
457                                     <directory>../src/main/stores</directory>
458                                     <includes>
459                                         <include>*.jks</include>
460                                     </includes>
461                                     <filtering>false</filtering>
462                                 </resource>
463                             </resources>
464                         </configuration>
465                     </execution>
466                 </executions>
467             </plugin>
468             <plugin>
469                 <groupId>org.apache.maven.plugins</groupId>
470                 <artifactId>maven-dependency-plugin</artifactId>
471                 <version>3.0.2</version>
472                 <executions>
473                     <execution>
474                         <id>unpack features</id>
475                         <phase>generate-sources</phase>
476                         <goals>
477                             <goal>unpack-dependencies</goal>
478                         </goals>
479                         <configuration>
480                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
481                             <excludeTransitive>true</excludeTransitive>
482                         </configuration>
483                     </execution>
484                     <execution>
485                         <id>unpack dgs</id>
486                         <phase>generate-sources</phase>
487                         <goals>
488                             <goal>unpack</goal>
489                         </goals>
490                         <configuration>
491                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory>
492                             <artifactItems>
493                                 <artifactItem>
494                                     <groupId>${project.groupId}</groupId>
495                                     <artifactId>platform-logic-installer</artifactId>
496                                     <version>${project.version}</version>
497                                     <type>zip</type>
498                                 </artifactItem>
499                             </artifactItems>
500                         </configuration>
501                     </execution>
502                 </executions>
503             </plugin>
504             <plugin>
505                 <groupId>org.codehaus.mojo</groupId>
506                 <artifactId>exec-maven-plugin</artifactId>
507                 <version>1.5.0</version>
508                 <executions>
509
510                     <execution>
511                         <id>change shell permissions</id>
512                         <phase>process-sources</phase>
513                         <goals>
514                             <goal>exec</goal>
515                         </goals>
516                         <configuration>
517                             <executable>/usr/bin/find</executable>
518                             <arguments>
519                                 <argument>${basedir}/target/docker-stage/opt/onap/ccsdk</argument>
520                                 <argument>-name</argument>
521                                 <argument>*.sh</argument>
522                                 <argument>-exec</argument>
523                                 <argument>chmod</argument>
524                                 <argument>+x</argument>
525                                 <argument>{}</argument>
526                                 <argument>;</argument>
527                             </arguments>
528                         </configuration>
529                     </execution>
530                 </executions>
531             </plugin>
532
533
534         </plugins>
535     </build>
536
537     <profiles>
538         <profile>
539             <id>docker</id>
540             <build>
541                 <plugins>
542                     <plugin>
543                         <groupId>io.fabric8</groupId>
544                         <artifactId>docker-maven-plugin</artifactId>
545                         <version>0.28.0</version>
546                         <inherited>false</inherited>
547                         <configuration>
548                             <images>
549                                 <image>
550                                     <name>${image.name}</name>
551                                     <build>
552                                         <cleanup>try</cleanup>
553                                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
554                                         <dockerFile>Dockerfile</dockerFile>
555                                         <tags>
556                                             <tag>${project.docker.latestminortag.version}</tag>
557                                             <tag>${project.docker.latestfulltag.version}</tag>
558                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
559                                         </tags>
560                                     </build>
561                                 </image>
562                             </images>
563                         </configuration>
564                         <executions>
565                             <execution>
566                                 <id>generate-images</id>
567                                 <phase>package</phase>
568                                 <goals>
569                                     <goal>build</goal>
570                                 </goals>
571                             </execution>
572
573                             <execution>
574                                 <id>push-images</id>
575                                 <phase>${docker.push.phase}</phase>
576                                 <goals>
577                                     <goal>build</goal>
578                                     <goal>push</goal>
579                                 </goals>
580                             </execution>
581                         </executions>
582                     </plugin>
583                 </plugins>
584             </build>
585         </profile>
586     </profiles>
587 </project>