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