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.sdnc.oam</groupId>
7 <artifactId>installation</artifactId>
8 <version>2.1.3-SNAPSHOT</version>
11 <groupId>org.onap.sdnc.oam</groupId>
12 <artifactId>installation-sdnc</artifactId>
13 <version>2.1.3-SNAPSHOT</version>
14 <packaging>pom</packaging>
16 <name>sdnc-oam :: installation :: ${project.artifactId}</name>
17 <description>Creates SDN Controller Docker container</description>
23 <image.name>onap/sdnc-aaf-image</image.name>
24 <standalone.image.name>onap/sdnc-image</standalone.image.name>
25 <sdnc.project.version>${project.version}</sdnc.project.version>
26 <sdnc.build.timestamp>${maven.build.timestamp}</sdnc.build.timestamp>
27 <sdnc.northbound.version>2.1.2</sdnc.northbound.version>
28 <ccsdk.docker.version>1.1.2</ccsdk.docker.version>
29 <sdnc.keystore>org.onap.sdnc.p12</sdnc.keystore>
30 <sdnc.keypass><![CDATA[;:G58,7ZhqOSI:7^oZCY[9Dv]]></sdnc.keypass>
31 <sdnc.secureport>8443</sdnc.secureport>
32 <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
33 <docker.push.phase>deploy</docker.push.phase>
34 <docker.verbose>true</docker.verbose>
35 <docker.autoCreateCustomNetworks>true</docker.autoCreateCustomNetworks>
36 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
41 <groupId>org.onap.sdnc.northbound</groupId>
42 <artifactId>generic-resource-api-installer</artifactId>
43 <version>${sdnc.northbound.version}</version>
45 <classifier>repo</classifier>
48 <groupId>org.onap.sdnc.northbound</groupId>
49 <artifactId>optical-service-installer</artifactId>
50 <version>${sdnc.northbound.version}</version>
52 <classifier>repo</classifier>
55 <groupId>org.onap.sdnc.northbound</groupId>
56 <artifactId>vnftools-installer</artifactId>
57 <version>${sdnc.northbound.version}</version>
59 <classifier>repo</classifier>
62 <groupId>org.onap.sdnc.northbound</groupId>
63 <artifactId>sdnc-northbound-features-installer</artifactId>
64 <version>${sdnc.northbound.version}</version>
66 <classifier>repo</classifier>
75 <groupId>org.codehaus.groovy.maven</groupId>
76 <artifactId>gmaven-plugin</artifactId>
79 <phase>validate</phase>
84 <source>${basedir}/../TagVersion.groovy</source>
91 <groupId>io.fabric8</groupId>
92 <artifactId>docker-maven-plugin</artifactId>
93 <version>0.28.0</version>
94 <inherited>false</inherited>
97 <id>generate-images</id>
98 <phase>package</phase>
105 <name>${image.name}</name>
107 <cleanup>try</cleanup>
108 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
109 <dockerFile>Dockerfile</dockerFile>
111 <tag>${project.docker.latestminortag.version}</tag>
112 <tag>${project.docker.latestfulltag.version}</tag>
113 <tag>${project.docker.latesttagtimestamp.version}</tag>
121 <id>start-it-instance</id>
122 <phase>pre-integration-test</phase>
129 <name>mariadb:10.5</name>
130 <alias>sdnc-db</alias>
133 <MYSQL_ROOT_PASSWORD>itsASecret</MYSQL_ROOT_PASSWORD>
134 <MYSQL_USER>sdnctl</MYSQL_USER>
135 <MYSQL_PASSWORD>gamma</MYSQL_PASSWORD>
136 <MYSQL_DATABASE>sdnctl</MYSQL_DATABASE>
141 <alias>dbhost</alias>
142 <alias>sdnctldb01</alias>
143 <alias>sdnctldb02</alias>
146 <port>sdncdb.port:3306</port>
149 <enabled>true</enabled>
154 <name>${image.name}:${project.docker.latesttagtimestamp.version}</name>
155 <alias>sdnc-container</alias>
158 <ODL_ADMIN_PASSWORD>admin</ODL_ADMIN_PASSWORD>
159 <MYSQL_ROOT_PASSWORD>itsASecret</MYSQL_ROOT_PASSWORD>
160 <MYSQL_USER>sdnctl</MYSQL_USER>
161 <MYSQL_PASSWORD>gamma</MYSQL_PASSWORD>
162 <MYSQL_DATABASE>sdnctl</MYSQL_DATABASE>
163 <SDNC_CONFIG_DIR>/opt/onap/sdnc/data/properties</SDNC_CONFIG_DIR>
164 <KARAF_CONSOLE_LOG_LEVEL>INFO</KARAF_CONSOLE_LOG_LEVEL>
167 <container>sdnc-db</container>
175 <port>sdnc.port:8181</port>
178 <log>all warp coils are now operating at peak efficiency</log>
182 <enabled>true</enabled>
190 <id>stop-it-instance</id>
191 <phase>post-integration-test</phase>
198 <phase>${docker.push.phase}</phase>
206 <name>${image.name}</name>
208 <cleanup>try</cleanup>
209 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
210 <dockerFile>Dockerfile</dockerFile>
212 <tag>${project.docker.latestminortag.version}</tag>
213 <tag>${project.docker.latestfulltag.version}</tag>
214 <tag>${project.docker.latesttagtimestamp.version}</tag>
222 <id>generate-standalone-images</id>
223 <phase>package</phase>
230 <name>${standalone.image.name}</name>
232 <cleanup>try</cleanup>
233 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
234 <dockerFile>standalone.Dockerfile</dockerFile>
236 <tag>${project.docker.latestminortag.version}</tag>
237 <tag>${project.docker.latestfulltag.version}</tag>
238 <tag>${project.docker.latesttagtimestamp.version}</tag>
246 <id>push-standalone-images</id>
247 <phase>${docker.push.phase}</phase>
255 <name>${standalone.image.name}</name>
257 <cleanup>try</cleanup>
258 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
259 <dockerFile>standalone.Dockerfile</dockerFile>
261 <tag>${project.docker.latestminortag.version}</tag>
262 <tag>${project.docker.latestfulltag.version}</tag>
263 <tag>${project.docker.latesttagtimestamp.version}</tag>
273 <artifactId>maven-resources-plugin</artifactId>
274 <version>2.6</version>
277 <id>copy-dockerfile</id>
279 <goal>copy-resources</goal>
280 </goals><!-- here the phase you need -->
281 <phase>validate</phase>
283 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
286 <directory>src/main/docker</directory>
288 <include>Dockerfile</include>
289 <include>standalone.Dockerfile</include>
291 <filtering>true</filtering>
297 <id>copy-scripts</id>
299 <goal>copy-resources</goal>
300 </goals><!-- here the phase you need -->
301 <phase>validate</phase>
303 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/bin</outputDirectory>
306 <directory>src/main/scripts</directory>
308 <include>*.py</include>
309 <include>*.sh</include>
311 <filtering>false</filtering>
317 <id>copy-tarballs</id>
319 <goal>copy-resources</goal>
320 </goals><!-- here the phase you need -->
321 <phase>validate</phase>
323 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
326 <directory>src/main/resources</directory>
328 <include>idmlight.db.mv.db</include>
329 <include>truststoreONAPall.jks</include>
330 <include>aaa-app-config.xml</include>
332 <filtering>false</filtering>
340 <goal>copy-resources</goal>
341 </goals><!-- here the phase you need -->
342 <phase>validate</phase>
344 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data</outputDirectory>
347 <directory>src/main/resources</directory>
349 <include>*.dump</include>
350 <include>oauth-aaa-app-config.xml</include>
352 <filtering>false</filtering>
358 <id>copy-properties</id>
360 <goal>copy-resources</goal>
361 </goals><!-- here the phase you need -->
362 <phase>validate</phase>
364 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/properties</outputDirectory>
367 <directory>../src/main/properties</directory>
369 <include>*.properties</include>
370 <include>*.props</include>
371 <include>*.csv</include>
373 <filtering>false</filtering>
379 <id>copy-keystores</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/sdnc/data/stores</outputDirectory>
388 <directory>../src/main/stores</directory>
390 <include>*.jks</include>
391 <include>*.keyfile</include>
392 <include>*.p12</include>
394 <filtering>false</filtering>
402 <groupId>org.apache.maven.plugins</groupId>
403 <artifactId>maven-dependency-plugin</artifactId>
404 <version>3.0.2</version>
407 <id>unpack sdnc features</id>
408 <phase>generate-sources</phase>
410 <goal>unpack-dependencies</goal>
413 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
414 <excludeTransitive>true</excludeTransitive>
419 <phase>generate-sources</phase>
424 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc</outputDirectory>
427 <groupId>${project.groupId}</groupId>
428 <artifactId>platform-logic-installer</artifactId>
429 <version>${project.version}</version>
436 <id>unpack migration utility</id>
437 <phase>generate-sources</phase>
442 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data-migrator</outputDirectory>
445 <groupId>org.onap.sdnc.oam</groupId>
446 <artifactId>data-migrator</artifactId>
447 <version>${project.version}</version>
456 <groupId>org.codehaus.mojo</groupId>
457 <artifactId>exec-maven-plugin</artifactId>
458 <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/sdnc</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>
483 <groupId>org.apache.maven.plugins</groupId>
484 <artifactId>maven-failsafe-plugin</artifactId>
488 <goal>integration-test</goal>
494 <skipITs>false</skipITs>
495 <environmentVariables>
496 <SDNC_PORT>${sdnc.port}</SDNC_PORT>
497 </environmentVariables>