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>
6 <groupId>org.onap.ccsdk.parent</groupId>
7 <artifactId>odlparent-lite</artifactId>
8 <version>1.2.1-SNAPSHOT</version>
12 <groupId>org.onap.ccsdk.distribution</groupId>
13 <artifactId>distribution-odlsli-alpine</artifactId>
14 <version>0.4.1-SNAPSHOT</version>
15 <packaging>pom</packaging>
17 <name>ccsdk-distribution :: odlsli-alpine</name>
18 <description>Creates Alpine-based ODLSLI Docker container</description>
20 <name>openECOMP</name>
24 <base.image.name>onap/ccsdk-odl-fluorine-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.features.version>${project.version}</ccsdk.features.version>
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.features.extra>
35 <ccsdk.odl.features>ccsdk-sli-core-all,ccsdk-sli-adaptors-all,ccsdk-sli-northbound-all,ccsdk-sli-plugins-all,ccsdk-features-all</ccsdk.odl.features>
36 <odl.boot.features.extra>${odl.features.extra},${ccsdk.odl.features}</odl.boot.features.extra>
41 <groupId>${project.groupId}</groupId>
42 <artifactId>dependencies</artifactId>
43 <version>${project.version}</version>
44 <classifier>repo</classifier>
49 <groupId>org.onap.ccsdk.sli.core</groupId>
50 <artifactId>dblib-installer</artifactId>
51 <version>${ccsdk.sli.core.version}</version>
52 <classifier>repo</classifier>
56 <groupId>org.onap.ccsdk.sli.core</groupId>
57 <artifactId>filters-installer</artifactId>
58 <version>${ccsdk.sli.core.version}</version>
59 <classifier>repo</classifier>
63 <groupId>org.onap.ccsdk.sli.core</groupId>
64 <artifactId>sli-installer</artifactId>
65 <version>${ccsdk.sli.core.version}</version>
66 <classifier>repo</classifier>
70 <groupId>org.onap.ccsdk.sli.core</groupId>
71 <artifactId>sliapi-installer</artifactId>
72 <version>${ccsdk.sli.core.version}</version>
73 <classifier>repo</classifier>
77 <groupId>org.onap.ccsdk.sli.core</groupId>
78 <artifactId>sliPluginUtils-installer</artifactId>
79 <version>${ccsdk.sli.core.version}</version>
80 <classifier>repo</classifier>
84 <groupId>org.onap.ccsdk.sli.core</groupId>
85 <artifactId>utils-installer</artifactId>
86 <version>${ccsdk.sli.core.version}</version>
87 <classifier>repo</classifier>
91 <groupId>org.onap.ccsdk.sli.core</groupId>
92 <artifactId>slicore-features-installer</artifactId>
93 <version>${ccsdk.sli.core.version}</version>
94 <classifier>repo</classifier>
98 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
99 <artifactId>aai-service-installer</artifactId>
100 <version>${ccsdk.sli.adaptors.version}</version>
101 <classifier>repo</classifier>
105 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
106 <artifactId>ansible-adapter-installer</artifactId>
107 <version>${ccsdk.sli.adaptors.version}</version>
108 <classifier>repo</classifier>
112 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
113 <artifactId>mdsal-resource-installer</artifactId>
114 <version>${ccsdk.sli.adaptors.version}</version>
115 <classifier>repo</classifier>
119 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
120 <artifactId>netbox-client-installer</artifactId>
121 <version>${ccsdk.sli.adaptors.version}</version>
122 <classifier>repo</classifier>
126 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
127 <artifactId>resource-assignment-installer</artifactId>
128 <version>${ccsdk.sli.adaptors.version}</version>
129 <classifier>repo</classifier>
133 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
134 <artifactId>saltstack-adapter-installer</artifactId>
135 <version>${ccsdk.sli.adaptors.version}</version>
136 <classifier>repo</classifier>
140 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
141 <artifactId>sql-resource-installer</artifactId>
142 <version>${ccsdk.sli.adaptors.version}</version>
143 <classifier>repo</classifier>
147 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
148 <artifactId>sliadaptors-features-installer</artifactId>
149 <version>${ccsdk.sli.adaptors.version}</version>
150 <classifier>repo</classifier>
154 <groupId>org.onap.ccsdk.sli.northbound</groupId>
155 <artifactId>asdcApi-installer</artifactId>
156 <version>${ccsdk.sli.northbound.version}</version>
157 <classifier>repo</classifier>
161 <groupId>org.onap.ccsdk.sli.northbound</groupId>
162 <artifactId>dataChange-installer</artifactId>
163 <version>${ccsdk.sli.northbound.version}</version>
164 <classifier>repo</classifier>
168 <groupId>org.onap.ccsdk.sli.northbound</groupId>
169 <artifactId>lcm-installer</artifactId>
170 <version>${ccsdk.sli.northbound.version}</version>
171 <classifier>repo</classifier>
175 <groupId>org.onap.ccsdk.sli.northbound</groupId>
176 <artifactId>slinorthbound-features-installer</artifactId>
177 <version>${ccsdk.sli.northbound.version}</version>
178 <classifier>repo</classifier>
182 <groupId>org.onap.ccsdk.sli.plugins</groupId>
183 <artifactId>properties-node-installer</artifactId>
184 <version>${ccsdk.sli.plugins.version}</version>
185 <classifier>repo</classifier>
189 <groupId>org.onap.ccsdk.sli.plugins</groupId>
190 <artifactId>restapi-call-node-installer</artifactId>
191 <version>${ccsdk.sli.plugins.version}</version>
192 <classifier>repo</classifier>
196 <groupId>org.onap.ccsdk.sli.plugins</groupId>
197 <artifactId>template-node-installer</artifactId>
198 <version>${ccsdk.sli.plugins.version}</version>
199 <classifier>repo</classifier>
203 <groupId>org.onap.ccsdk.sli.plugins</groupId>
204 <artifactId>restconf-client-installer</artifactId>
205 <version>${ccsdk.sli.plugins.version}</version>
206 <classifier>repo</classifier>
210 <groupId>org.onap.ccsdk.sli.plugins</groupId>
211 <artifactId>sshapi-call-node-installer</artifactId>
212 <version>${ccsdk.sli.plugins.version}</version>
213 <classifier>repo</classifier>
217 <groupId>org.onap.ccsdk.sli.plugins</groupId>
218 <artifactId>sliplugins-features-installer</artifactId>
219 <version>${ccsdk.sli.plugins.version}</version>
220 <classifier>repo</classifier>
224 <groupId>org.onap.ccsdk.features</groupId>
225 <artifactId>features-installer</artifactId>
226 <version>${ccsdk.features.version}</version>
227 <classifier>repo</classifier>
231 <groupId>org.onap.ccsdk.features</groupId>
232 <artifactId>blueprints-processor-installer</artifactId>
233 <version>${ccsdk.features.version}</version>
234 <classifier>repo</classifier>
242 <!-- this extension is required by wagon in order to pass the proxy -->
243 <groupId>org.apache.maven.wagon</groupId>
244 <artifactId>wagon-http-lightweight</artifactId>
245 <version>2.2</version>
252 <groupId>org.codehaus.groovy.maven</groupId>
253 <artifactId>gmaven-plugin</artifactId>
256 <phase>validate</phase>
262 println project.properties['ccsdk.project.version'];
264 if (project.properties['ccsdk.project.version'] != null ) {
265 versionArray = project.properties['ccsdk.project.version'].split('\\.');
268 if (project.properties['ccsdk.project.version'].endsWith("-SNAPSHOT"))
270 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
272 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
275 println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
285 <artifactId>maven-resources-plugin</artifactId>
286 <version>2.6</version>
289 <id>copy-dockerfile</id>
291 <goal>copy-resources</goal>
292 </goals><!-- here the phase you need -->
293 <phase>validate</phase>
295 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
298 <directory>src/main/docker</directory>
300 <include>Dockerfile</include>
302 <filtering>true</filtering>
309 <id>copy-scripts</id>
311 <goal>copy-resources</goal>
312 </goals><!-- here the phase you need -->
313 <phase>validate</phase>
315 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory>
318 <directory>../src/main/scripts</directory>
320 <include>*.sh</include>
322 <filtering>false</filtering>
329 <id>copy-odl-resources</id>
331 <goal>copy-resources</goal>
332 </goals><!-- here the phase you need -->
333 <phase>validate</phase>
335 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
338 <directory>../src/main/resources</directory>
340 <include>idmlight.db.mv.db</include>
341 <include>org.ops4j.pax.logging.cfg</include>
342 <include>install_ccsdk.yml</include>
343 <include>ansible-sources.list</include>
345 <filtering>false</filtering>
353 <goal>copy-resources</goal>
354 </goals><!-- here the phase you need -->
355 <phase>validate</phase>
357 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
360 <directory>../src/main/resources</directory>
362 <include>org.ops4j.pax.logging.cfg</include>
364 <filtering>false</filtering>
372 <goal>copy-resources</goal>
373 </goals><!-- here the phase you need -->
374 <phase>validate</phase>
376 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data</outputDirectory>
379 <directory>../src/main/resources</directory>
381 <include>*.dump</include>
383 <filtering>false</filtering>
389 <id>copy-properties</id>
391 <goal>copy-resources</goal>
392 </goals><!-- here the phase you need -->
393 <phase>validate</phase>
395 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/properties</outputDirectory>
398 <directory>../src/main/properties</directory>
400 <include>*.properties</include>
402 <filtering>false</filtering>
408 <id>copy-keystores</id>
410 <goal>copy-resources</goal>
411 </goals><!-- here the phase you need -->
412 <phase>validate</phase>
414 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/stores</outputDirectory>
417 <directory>../src/main/stores</directory>
419 <include>*.jks</include>
421 <filtering>false</filtering>
429 <groupId>org.apache.maven.plugins</groupId>
430 <artifactId>maven-dependency-plugin</artifactId>
431 <version>3.0.2</version>
434 <id>unpack features</id>
435 <phase>generate-sources</phase>
437 <goal>unpack-dependencies</goal>
440 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
441 <excludeTransitive>true</excludeTransitive>
446 <phase>generate-sources</phase>
451 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory>
454 <groupId>${project.groupId}</groupId>
455 <artifactId>platform-logic-installer</artifactId>
456 <version>${project.version}</version>
465 <groupId>org.codehaus.mojo</groupId>
466 <artifactId>exec-maven-plugin</artifactId>
467 <version>1.5.0</version>
471 <id>change shell permissions</id>
472 <phase>process-sources</phase>
477 <executable>/usr/bin/find</executable>
479 <argument>${basedir}/target/docker-stage/opt/onap/ccsdk</argument>
480 <argument>-name</argument>
481 <argument>*.sh</argument>
482 <argument>-exec</argument>
483 <argument>chmod</argument>
484 <argument>+x</argument>
485 <argument>{}</argument>
486 <argument>;</argument>
503 <groupId>io.fabric8</groupId>
504 <artifactId>docker-maven-plugin</artifactId>
505 <version>0.16.5</version>
506 <inherited>false</inherited>
510 <name>${image.name}</name>
512 <cleanup>try</cleanup>
513 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
514 <dockerFile>${basedir}/target/docker-stage/Dockerfile</dockerFile>
516 <tag>${project.version}</tag>
517 <tag>${project.version}-STAGING-${maven.build.timestamp}</tag>
518 <tag>${project.docker.latesttag.version}</tag>
526 <id>generate-images</id>
527 <phase>package</phase>
535 <phase>${docker.push.phase}</phase>