1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5 <modelVersion>4.0.0</modelVersion>
8 <groupId>org.onap.ccsdk.parent</groupId>
9 <artifactId>odlparent-lite</artifactId>
10 <version>1.2.0-SNAPSHOT</version>
14 <groupId>org.onap.ccsdk.distribution</groupId>
15 <artifactId>distribution-odlsli</artifactId>
16 <version>0.4.0-SNAPSHOT</version>
17 <packaging>pom</packaging>
19 <name>ccsdk-distribution :: odlsli</name>
20 <description>Creates SDN Controller Docker container</description>
22 <name>openECOMP</name>
26 <image.name>onap/ccsdk-odlsli-image</image.name>
27 <ccsdk.project.version>${project.version}</ccsdk.project.version>
28 <ccsdk.features.version>${project.version}</ccsdk.features.version>
29 <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
30 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
31 <opendaylight.root>opt/opendaylight</opendaylight.root>
32 <docker.push.phase>deploy</docker.push.phase>
33 <docker.verbose>true</docker.verbose>
34 <ansible.gpg.key>93C4A3FD7BB9C367</ansible.gpg.key>
39 <groupId>${project.groupId}</groupId>
40 <artifactId>dependencies</artifactId>
41 <version>${project.version}</version>
42 <classifier>repo</classifier>
47 <groupId>org.onap.ccsdk.sli.core</groupId>
48 <artifactId>dblib-installer</artifactId>
49 <version>${ccsdk.sli.core.version}</version>
50 <classifier>repo</classifier>
54 <groupId>org.onap.ccsdk.sli.core</groupId>
55 <artifactId>filters-installer</artifactId>
56 <version>${ccsdk.sli.core.version}</version>
57 <classifier>repo</classifier>
61 <groupId>org.onap.ccsdk.sli.core</groupId>
62 <artifactId>sli-installer</artifactId>
63 <version>${ccsdk.sli.core.version}</version>
64 <classifier>repo</classifier>
68 <groupId>org.onap.ccsdk.sli.core</groupId>
69 <artifactId>sliapi-installer</artifactId>
70 <version>${ccsdk.sli.core.version}</version>
71 <classifier>repo</classifier>
75 <groupId>org.onap.ccsdk.sli.core</groupId>
76 <artifactId>sliPluginUtils-installer</artifactId>
77 <version>${ccsdk.sli.core.version}</version>
78 <classifier>repo</classifier>
82 <groupId>org.onap.ccsdk.sli.core</groupId>
83 <artifactId>utils-installer</artifactId>
84 <version>${ccsdk.sli.core.version}</version>
85 <classifier>repo</classifier>
89 <groupId>org.onap.ccsdk.sli.core</groupId>
90 <artifactId>slicore-features-installer</artifactId>
91 <version>${ccsdk.sli.core.version}</version>
92 <classifier>repo</classifier>
96 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
97 <artifactId>aai-service-installer</artifactId>
98 <version>${ccsdk.sli.adaptors.version}</version>
99 <classifier>repo</classifier>
103 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
104 <artifactId>ansible-adapter-installer</artifactId>
105 <version>${ccsdk.sli.adaptors.version}</version>
106 <classifier>repo</classifier>
110 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
111 <artifactId>mdsal-resource-installer</artifactId>
112 <version>${ccsdk.sli.adaptors.version}</version>
113 <classifier>repo</classifier>
117 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
118 <artifactId>resource-assignment-installer</artifactId>
119 <version>${ccsdk.sli.adaptors.version}</version>
120 <classifier>repo</classifier>
124 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
125 <artifactId>netbox-client-installer</artifactId>
126 <version>${ccsdk.sli.adaptors.version}</version>
127 <classifier>repo</classifier>
131 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
132 <artifactId>sql-resource-installer</artifactId>
133 <version>${ccsdk.sli.adaptors.version}</version>
134 <classifier>repo</classifier>
138 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
139 <artifactId>sliadaptors-features-installer</artifactId>
140 <version>${ccsdk.sli.adaptors.version}</version>
141 <classifier>repo</classifier>
145 <groupId>org.onap.ccsdk.sli.northbound</groupId>
146 <artifactId>asdcApi-installer</artifactId>
147 <version>${ccsdk.sli.northbound.version}</version>
148 <classifier>repo</classifier>
152 <groupId>org.onap.ccsdk.sli.northbound</groupId>
153 <artifactId>dataChange-installer</artifactId>
154 <version>${ccsdk.sli.northbound.version}</version>
155 <classifier>repo</classifier>
159 <groupId>org.onap.ccsdk.sli.northbound</groupId>
160 <artifactId>lcm-installer</artifactId>
161 <version>${ccsdk.sli.northbound.version}</version>
162 <classifier>repo</classifier>
166 <groupId>org.onap.ccsdk.sli.northbound</groupId>
167 <artifactId>slinorthbound-features-installer</artifactId>
168 <version>${ccsdk.sli.northbound.version}</version>
169 <classifier>repo</classifier>
173 <groupId>org.onap.ccsdk.sli.plugins</groupId>
174 <artifactId>properties-node-installer</artifactId>
175 <version>${ccsdk.sli.plugins.version}</version>
176 <classifier>repo</classifier>
180 <groupId>org.onap.ccsdk.sli.plugins</groupId>
181 <artifactId>restapi-call-node-installer</artifactId>
182 <version>${ccsdk.sli.plugins.version}</version>
183 <classifier>repo</classifier>
187 <groupId>org.onap.ccsdk.sli.plugins</groupId>
188 <artifactId>restconf-client-installer</artifactId>
189 <version>${ccsdk.sli.plugins.version}</version>
190 <classifier>repo</classifier>
194 <groupId>org.onap.ccsdk.sli.plugins</groupId>
195 <artifactId>sshapi-call-node-installer</artifactId>
196 <version>${ccsdk.sli.plugins.version}</version>
197 <classifier>repo</classifier>
201 <groupId>org.onap.ccsdk.sli.plugins</groupId>
202 <artifactId>sliplugins-features-installer</artifactId>
203 <version>${ccsdk.sli.plugins.version}</version>
204 <classifier>repo</classifier>
208 <groupId>org.onap.ccsdk.features</groupId>
209 <artifactId>features-installer</artifactId>
210 <version>${ccsdk.features.version}</version>
211 <classifier>repo</classifier>
215 <groupId>org.onap.ccsdk.features</groupId>
216 <artifactId>blueprints-processor-installer</artifactId>
217 <version>${ccsdk.features.version}</version>
218 <classifier>repo</classifier>
226 <!-- this extension is required by wagon in order to pass the proxy -->
227 <groupId>org.apache.maven.wagon</groupId>
228 <artifactId>wagon-http-lightweight</artifactId>
229 <version>2.2</version>
236 <groupId>org.codehaus.groovy.maven</groupId>
237 <artifactId>gmaven-plugin</artifactId>
240 <phase>validate</phase>
246 println project.properties['ccsdk.project.version'];
248 if (project.properties['ccsdk.project.version'] != null ) {
249 versionArray = project.properties['ccsdk.project.version'].split('\\.');
252 if (project.properties['ccsdk.project.version'].endsWith("-SNAPSHOT"))
254 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
256 project.properties['project.docker.latesttag.version']=versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
259 println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
269 <artifactId>maven-resources-plugin</artifactId>
270 <version>2.6</version>
273 <id>copy-dockerfile</id>
275 <goal>copy-resources</goal>
276 </goals><!-- here the phase you need -->
277 <phase>validate</phase>
279 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
282 <directory>src/main/docker</directory>
284 <include>Dockerfile</include>
286 <filtering>true</filtering>
293 <id>copy-scripts</id>
295 <goal>copy-resources</goal>
296 </goals><!-- here the phase you need -->
297 <phase>validate</phase>
299 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory>
302 <directory>src/main/scripts</directory>
304 <include>*.sh</include>
306 <filtering>false</filtering>
313 <id>copy-odl-resources</id>
315 <goal>copy-resources</goal>
316 </goals><!-- here the phase you need -->
317 <phase>validate</phase>
319 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
322 <directory>src/main/resources</directory>
324 <include>idmlight.db.mv.db</include>
325 <include>org.ops4j.pax.logging.cfg</include>
326 <include>install_ccsdk.yml</include>
327 <include>ansible-sources.list</include>
329 <filtering>false</filtering>
337 <goal>copy-resources</goal>
338 </goals><!-- here the phase you need -->
339 <phase>validate</phase>
341 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
344 <directory>src/main/resources</directory>
346 <include>org.ops4j.pax.logging.cfg</include>
348 <filtering>false</filtering>
356 <goal>copy-resources</goal>
357 </goals><!-- here the phase you need -->
358 <phase>validate</phase>
360 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data</outputDirectory>
363 <directory>src/main/resources</directory>
365 <include>*.dump</include>
367 <filtering>false</filtering>
373 <id>copy-properties</id>
375 <goal>copy-resources</goal>
376 </goals><!-- here the phase you need -->
377 <phase>validate</phase>
379 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/properties</outputDirectory>
382 <directory>src/main/properties</directory>
384 <include>*.properties</include>
386 <filtering>false</filtering>
392 <id>copy-keystores</id>
394 <goal>copy-resources</goal>
395 </goals><!-- here the phase you need -->
396 <phase>validate</phase>
398 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/data/stores</outputDirectory>
401 <directory>src/main/stores</directory>
403 <include>*.jks</include>
405 <filtering>false</filtering>
413 <groupId>org.apache.maven.plugins</groupId>
414 <artifactId>maven-dependency-plugin</artifactId>
415 <version>3.0.2</version>
418 <id>unpack features</id>
419 <phase>generate-sources</phase>
421 <goal>unpack-dependencies</goal>
424 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
425 <excludeTransitive>true</excludeTransitive>
430 <phase>generate-sources</phase>
435 <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory>
438 <groupId>${project.groupId}</groupId>
439 <artifactId>platform-logic-installer</artifactId>
440 <version>${project.version}</version>
449 <groupId>org.codehaus.mojo</groupId>
450 <artifactId>exec-maven-plugin</artifactId>
451 <version>1.5.0</version>
455 <id>change shell permissions</id>
456 <phase>process-sources</phase>
461 <executable>/usr/bin/find</executable>
463 <argument>${basedir}/target/docker-stage/opt/onap/ccsdk</argument>
464 <argument>-name</argument>
465 <argument>*.sh</argument>
466 <argument>-exec</argument>
467 <argument>chmod</argument>
468 <argument>+x</argument>
469 <argument>{}</argument>
470 <argument>;</argument>
487 <groupId>io.fabric8</groupId>
488 <artifactId>docker-maven-plugin</artifactId>
489 <version>0.16.5</version>
490 <inherited>false</inherited>
494 <name>${image.name}</name>
496 <cleanup>try</cleanup>
497 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
498 <dockerFile>${basedir}/target/docker-stage/Dockerfile</dockerFile>
500 <tag>${project.version}</tag>
501 <tag>${project.version}-STAGING-${maven.build.timestamp}</tag>
502 <tag>${project.docker.latesttag.version}</tag>
510 <id>generate-images</id>
511 <phase>package</phase>
519 <phase>${docker.push.phase}</phase>