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-ubuntu</artifactId>
14 <version>0.4.1-SNAPSHOT</version>
15 <packaging>pom</packaging>
17 <name>ccsdk-distribution :: odlsli-ubuntu</name>
18 <description>Creates Ubuntu-based ODLSLI Docker container</description>
20 <name>openECOMP</name>
24 <base.image.name>onap/ccsdk-odl-fluorine-ubuntu-image</base.image.name>
25 <image.name>onap/ccsdk-odlsli-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>
38 <groupId>${project.groupId}</groupId>
39 <artifactId>dependencies</artifactId>
40 <version>${project.version}</version>
41 <classifier>repo</classifier>
46 <groupId>org.onap.ccsdk.sli.core</groupId>
47 <artifactId>dblib-installer</artifactId>
48 <version>${ccsdk.sli.core.version}</version>
49 <classifier>repo</classifier>
53 <groupId>org.onap.ccsdk.sli.core</groupId>
54 <artifactId>filters-installer</artifactId>
55 <version>${ccsdk.sli.core.version}</version>
56 <classifier>repo</classifier>
60 <groupId>org.onap.ccsdk.sli.core</groupId>
61 <artifactId>sli-installer</artifactId>
62 <version>${ccsdk.sli.core.version}</version>
63 <classifier>repo</classifier>
67 <groupId>org.onap.ccsdk.sli.core</groupId>
68 <artifactId>sliapi-installer</artifactId>
69 <version>${ccsdk.sli.core.version}</version>
70 <classifier>repo</classifier>
74 <groupId>org.onap.ccsdk.sli.core</groupId>
75 <artifactId>sliPluginUtils-installer</artifactId>
76 <version>${ccsdk.sli.core.version}</version>
77 <classifier>repo</classifier>
81 <groupId>org.onap.ccsdk.sli.core</groupId>
82 <artifactId>utils-installer</artifactId>
83 <version>${ccsdk.sli.core.version}</version>
84 <classifier>repo</classifier>
88 <groupId>org.onap.ccsdk.sli.core</groupId>
89 <artifactId>slicore-features-installer</artifactId>
90 <version>${ccsdk.sli.core.version}</version>
91 <classifier>repo</classifier>
95 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
96 <artifactId>aai-service-installer</artifactId>
97 <version>${ccsdk.sli.adaptors.version}</version>
98 <classifier>repo</classifier>
102 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
103 <artifactId>ansible-adapter-installer</artifactId>
104 <version>${ccsdk.sli.adaptors.version}</version>
105 <classifier>repo</classifier>
109 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
110 <artifactId>mdsal-resource-installer</artifactId>
111 <version>${ccsdk.sli.adaptors.version}</version>
112 <classifier>repo</classifier>
116 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
117 <artifactId>resource-assignment-installer</artifactId>
118 <version>${ccsdk.sli.adaptors.version}</version>
119 <classifier>repo</classifier>
123 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
124 <artifactId>netbox-client-installer</artifactId>
125 <version>${ccsdk.sli.adaptors.version}</version>
126 <classifier>repo</classifier>
130 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
131 <artifactId>sql-resource-installer</artifactId>
132 <version>${ccsdk.sli.adaptors.version}</version>
133 <classifier>repo</classifier>
137 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
138 <artifactId>sliadaptors-features-installer</artifactId>
139 <version>${ccsdk.sli.adaptors.version}</version>
140 <classifier>repo</classifier>
144 <groupId>org.onap.ccsdk.sli.northbound</groupId>
145 <artifactId>asdcApi-installer</artifactId>
146 <version>${ccsdk.sli.northbound.version}</version>
147 <classifier>repo</classifier>
151 <groupId>org.onap.ccsdk.sli.northbound</groupId>
152 <artifactId>dataChange-installer</artifactId>
153 <version>${ccsdk.sli.northbound.version}</version>
154 <classifier>repo</classifier>
158 <groupId>org.onap.ccsdk.sli.northbound</groupId>
159 <artifactId>lcm-installer</artifactId>
160 <version>${ccsdk.sli.northbound.version}</version>
161 <classifier>repo</classifier>
165 <groupId>org.onap.ccsdk.sli.northbound</groupId>
166 <artifactId>slinorthbound-features-installer</artifactId>
167 <version>${ccsdk.sli.northbound.version}</version>
168 <classifier>repo</classifier>
172 <groupId>org.onap.ccsdk.sli.plugins</groupId>
173 <artifactId>properties-node-installer</artifactId>
174 <version>${ccsdk.sli.plugins.version}</version>
175 <classifier>repo</classifier>
179 <groupId>org.onap.ccsdk.sli.plugins</groupId>
180 <artifactId>restapi-call-node-installer</artifactId>
181 <version>${ccsdk.sli.plugins.version}</version>
182 <classifier>repo</classifier>
186 <groupId>org.onap.ccsdk.sli.plugins</groupId>
187 <artifactId>template-node-installer</artifactId>
188 <version>${ccsdk.sli.plugins.version}</version>
189 <classifier>repo</classifier>
193 <groupId>org.onap.ccsdk.sli.plugins</groupId>
194 <artifactId>restconf-client-installer</artifactId>
195 <version>${ccsdk.sli.plugins.version}</version>
196 <classifier>repo</classifier>
200 <groupId>org.onap.ccsdk.sli.plugins</groupId>
201 <artifactId>sshapi-call-node-installer</artifactId>
202 <version>${ccsdk.sli.plugins.version}</version>
203 <classifier>repo</classifier>
207 <groupId>org.onap.ccsdk.sli.plugins</groupId>
208 <artifactId>sliplugins-features-installer</artifactId>
209 <version>${ccsdk.sli.plugins.version}</version>
210 <classifier>repo</classifier>
214 <groupId>org.onap.ccsdk.features</groupId>
215 <artifactId>features-installer</artifactId>
216 <version>${ccsdk.features.version}</version>
217 <classifier>repo</classifier>
221 <groupId>org.onap.ccsdk.features</groupId>
222 <artifactId>blueprints-processor-installer</artifactId>
223 <version>${ccsdk.features.version}</version>
224 <classifier>repo</classifier>
232 <!-- this extension is required by wagon in order to pass the proxy -->
233 <groupId>org.apache.maven.wagon</groupId>
234 <artifactId>wagon-http-lightweight</artifactId>
235 <version>2.2</version>
242 <groupId>org.codehaus.groovy.maven</groupId>
243 <artifactId>gmaven-plugin</artifactId>
246 <phase>validate</phase>
252 println project.properties['ccsdk.project.version'];
254 if (project.properties['ccsdk.project.version'] != null ) {
255 versionArray = project.properties['ccsdk.project.version'].split('\\.');
258 if (project.properties['ccsdk.project.version'].endsWith("-SNAPSHOT"))
260 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
262 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
265 println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
275 <artifactId>maven-resources-plugin</artifactId>
276 <version>2.6</version>
279 <id>copy-dockerfile</id>
281 <goal>copy-resources</goal>
282 </goals><!-- here the phase you need -->
283 <phase>validate</phase>
285 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
288 <directory>src/main/docker</directory>
290 <include>Dockerfile</include>
292 <filtering>true</filtering>
299 <id>copy-scripts</id>
301 <goal>copy-resources</goal>
302 </goals><!-- here the phase you need -->
303 <phase>validate</phase>
305 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory>
308 <directory>../src/main/scripts</directory>
310 <include>*.sh</include>
312 <filtering>false</filtering>
319 <id>copy-odl-resources</id>
321 <goal>copy-resources</goal>
322 </goals><!-- here the phase you need -->
323 <phase>validate</phase>
325 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
328 <directory>../src/main/resources</directory>
330 <include>idmlight.db.mv.db</include>
331 <include>org.ops4j.pax.logging.cfg</include>
332 <include>install_ccsdk.yml</include>
333 <include>ansible-sources.list</include>
335 <filtering>false</filtering>
343 <goal>copy-resources</goal>
344 </goals><!-- here the phase you need -->
345 <phase>validate</phase>
347 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
350 <directory>../src/main/resources</directory>
352 <include>org.ops4j.pax.logging.cfg</include>
354 <filtering>false</filtering>
362 <goal>copy-resources</goal>
363 </goals><!-- here the phase you need -->
364 <phase>validate</phase>
366 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data</outputDirectory>
369 <directory>../src/main/resources</directory>
371 <include>*.dump</include>
373 <filtering>false</filtering>
379 <id>copy-properties</id>
381 <goal>copy-resources</goal>
382 </goals><!-- here the phase you need -->
383 <phase>validate</phase>
385 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/properties</outputDirectory>
388 <directory>../src/main/properties</directory>
390 <include>*.properties</include>
392 <filtering>false</filtering>
398 <id>copy-keystores</id>
400 <goal>copy-resources</goal>
401 </goals><!-- here the phase you need -->
402 <phase>validate</phase>
404 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/stores</outputDirectory>
407 <directory>../src/main/stores</directory>
409 <include>*.jks</include>
411 <filtering>false</filtering>
419 <groupId>org.apache.maven.plugins</groupId>
420 <artifactId>maven-dependency-plugin</artifactId>
421 <version>3.0.2</version>
424 <id>unpack features</id>
425 <phase>generate-sources</phase>
427 <goal>unpack-dependencies</goal>
430 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
431 <excludeTransitive>true</excludeTransitive>
436 <phase>generate-sources</phase>
441 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory>
444 <groupId>${project.groupId}</groupId>
445 <artifactId>platform-logic-installer</artifactId>
446 <version>${project.version}</version>
455 <groupId>org.codehaus.mojo</groupId>
456 <artifactId>exec-maven-plugin</artifactId>
457 <version>1.5.0</version>
461 <id>change shell permissions</id>
462 <phase>process-sources</phase>
467 <executable>/usr/bin/find</executable>
469 <argument>${basedir}/target/docker-stage/opt/onap/ccsdk</argument>
470 <argument>-name</argument>
471 <argument>*.sh</argument>
472 <argument>-exec</argument>
473 <argument>chmod</argument>
474 <argument>+x</argument>
475 <argument>{}</argument>
476 <argument>;</argument>
493 <groupId>io.fabric8</groupId>
494 <artifactId>docker-maven-plugin</artifactId>
495 <version>0.16.5</version>
496 <inherited>false</inherited>
500 <name>${image.name}</name>
502 <cleanup>try</cleanup>
503 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
504 <dockerFile>${basedir}/target/docker-stage/Dockerfile</dockerFile>
506 <tag>${project.version}</tag>
507 <tag>${project.version}-STAGING-${maven.build.timestamp}</tag>
508 <tag>${project.docker.latesttag.version}</tag>
516 <id>generate-images</id>
517 <phase>package</phase>
525 <phase>${docker.push.phase}</phase>