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.2.0-SNAPSHOT</version>
11 <groupId>org.onap.sdnc.oam</groupId>
12 <artifactId>installation-sdnc</artifactId>
13 <version>2.2.0-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 <ccsdk.docker.version>${ccsdk.docker.odlsli.alpine.version}</ccsdk.docker.version>
28 <sdnc.keystore>org.onap.sdnc.p12</sdnc.keystore>
29 <sdnc.keypass><![CDATA[;:G58,7ZhqOSI:7^oZCY[9Dv]]></sdnc.keypass>
30 <sdnc.secureport>8443</sdnc.secureport>
31 <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
32 <docker.push.phase>deploy</docker.push.phase>
33 <docker.verbose>true</docker.verbose>
34 <docker.autoCreateCustomNetworks>true</docker.autoCreateCustomNetworks>
35 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
40 <groupId>org.onap.sdnc.northbound</groupId>
41 <artifactId>generic-resource-api-installer</artifactId>
42 <version>${sdnc.northbound.version}</version>
44 <classifier>repo</classifier>
47 <groupId>org.onap.sdnc.northbound</groupId>
48 <artifactId>optical-service-installer</artifactId>
49 <version>${sdnc.northbound.version}</version>
51 <classifier>repo</classifier>
54 <groupId>org.onap.sdnc.northbound</groupId>
55 <artifactId>vnftools-installer</artifactId>
56 <version>${sdnc.northbound.version}</version>
58 <classifier>repo</classifier>
61 <groupId>org.onap.sdnc.northbound</groupId>
62 <artifactId>sdnc-northbound-features-installer</artifactId>
63 <version>${sdnc.northbound.version}</version>
65 <classifier>repo</classifier>
74 <groupId>org.codehaus.groovy.maven</groupId>
75 <artifactId>gmaven-plugin</artifactId>
78 <phase>validate</phase>
83 <source>${basedir}/../TagVersion.groovy</source>
90 <groupId>io.fabric8</groupId>
91 <artifactId>docker-maven-plugin</artifactId>
92 <version>0.28.0</version>
93 <inherited>false</inherited>
96 <id>generate-images</id>
97 <phase>package</phase>
104 <name>${image.name}</name>
106 <cleanup>try</cleanup>
107 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
108 <dockerFile>Dockerfile</dockerFile>
110 <tag>${project.docker.latestminortag.version}</tag>
111 <tag>${project.docker.latestfulltag.version}</tag>
112 <tag>${project.docker.latesttagtimestamp.version}</tag>
120 <id>start-it-instance</id>
121 <phase>pre-integration-test</phase>
128 <name>mariadb:10.5</name>
129 <alias>sdnc-db</alias>
132 <MYSQL_ROOT_PASSWORD>itsASecret</MYSQL_ROOT_PASSWORD>
133 <MYSQL_USER>sdnctl</MYSQL_USER>
134 <MYSQL_PASSWORD>gamma</MYSQL_PASSWORD>
135 <MYSQL_DATABASE>sdnctl</MYSQL_DATABASE>
140 <alias>dbhost</alias>
141 <alias>sdnctldb01</alias>
142 <alias>sdnctldb02</alias>
145 <port>sdncdb.port:3306</port>
148 <enabled>true</enabled>
153 <name>${image.name}:${project.docker.latesttagtimestamp.version}</name>
154 <alias>sdnc-container</alias>
157 <ODL_ADMIN_PASSWORD>admin</ODL_ADMIN_PASSWORD>
158 <MYSQL_ROOT_PASSWORD>itsASecret</MYSQL_ROOT_PASSWORD>
159 <MYSQL_USER>sdnctl</MYSQL_USER>
160 <MYSQL_PASSWORD>gamma</MYSQL_PASSWORD>
161 <MYSQL_DATABASE>sdnctl</MYSQL_DATABASE>
162 <SDNC_CONFIG_DIR>/opt/onap/sdnc/data/properties</SDNC_CONFIG_DIR>
163 <KARAF_CONSOLE_LOG_LEVEL>INFO</KARAF_CONSOLE_LOG_LEVEL>
166 <container>sdnc-db</container>
174 <port>sdnc.port:8181</port>
177 <log>all warp coils are now operating at peak efficiency</log>
181 <enabled>true</enabled>
189 <id>stop-it-instance</id>
190 <phase>post-integration-test</phase>
197 <phase>${docker.push.phase}</phase>
205 <name>${image.name}</name>
207 <cleanup>try</cleanup>
208 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
209 <dockerFile>Dockerfile</dockerFile>
211 <tag>${project.docker.latestminortag.version}</tag>
212 <tag>${project.docker.latestfulltag.version}</tag>
213 <tag>${project.docker.latesttagtimestamp.version}</tag>
221 <id>generate-standalone-images</id>
222 <phase>package</phase>
229 <name>${standalone.image.name}</name>
231 <cleanup>try</cleanup>
232 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
233 <dockerFile>standalone.Dockerfile</dockerFile>
235 <tag>${project.docker.latestminortag.version}</tag>
236 <tag>${project.docker.latestfulltag.version}</tag>
237 <tag>${project.docker.latesttagtimestamp.version}</tag>
245 <id>push-standalone-images</id>
246 <phase>${docker.push.phase}</phase>
254 <name>${standalone.image.name}</name>
256 <cleanup>try</cleanup>
257 <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
258 <dockerFile>standalone.Dockerfile</dockerFile>
260 <tag>${project.docker.latestminortag.version}</tag>
261 <tag>${project.docker.latestfulltag.version}</tag>
262 <tag>${project.docker.latesttagtimestamp.version}</tag>
272 <artifactId>maven-resources-plugin</artifactId>
273 <version>2.6</version>
276 <id>copy-dockerfile</id>
278 <goal>copy-resources</goal>
279 </goals><!-- here the phase you need -->
280 <phase>validate</phase>
282 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
285 <directory>src/main/docker</directory>
287 <include>Dockerfile</include>
288 <include>standalone.Dockerfile</include>
290 <filtering>true</filtering>
296 <id>copy-scripts</id>
298 <goal>copy-resources</goal>
299 </goals><!-- here the phase you need -->
300 <phase>validate</phase>
302 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/bin</outputDirectory>
305 <directory>src/main/scripts</directory>
307 <include>*.py</include>
308 <include>*.sh</include>
310 <filtering>false</filtering>
316 <id>copy-tarballs</id>
318 <goal>copy-resources</goal>
319 </goals><!-- here the phase you need -->
320 <phase>validate</phase>
322 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
325 <directory>src/main/resources</directory>
327 <include>idmlight.db.mv.db</include>
328 <include>truststoreONAPall.jks</include>
329 <include>aaa-app-config.xml</include>
331 <filtering>false</filtering>
339 <goal>copy-resources</goal>
340 </goals><!-- here the phase you need -->
341 <phase>validate</phase>
343 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data</outputDirectory>
346 <directory>src/main/resources</directory>
348 <include>*.dump</include>
349 <include>oauth-aaa-app-config.xml</include>
351 <filtering>false</filtering>
357 <id>copy-properties</id>
359 <goal>copy-resources</goal>
360 </goals><!-- here the phase you need -->
361 <phase>validate</phase>
363 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/properties</outputDirectory>
366 <directory>../src/main/properties</directory>
368 <include>*.properties</include>
369 <include>*.props</include>
370 <include>*.csv</include>
372 <filtering>false</filtering>
378 <id>copy-keystores</id>
380 <goal>copy-resources</goal>
381 </goals><!-- here the phase you need -->
382 <phase>validate</phase>
384 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/stores</outputDirectory>
387 <directory>../src/main/stores</directory>
389 <include>*.jks</include>
390 <include>*.keyfile</include>
391 <include>*.p12</include>
393 <filtering>false</filtering>
401 <groupId>org.apache.maven.plugins</groupId>
402 <artifactId>maven-dependency-plugin</artifactId>
403 <version>3.0.2</version>
406 <id>unpack sdnc features</id>
407 <phase>generate-sources</phase>
409 <goal>unpack-dependencies</goal>
412 <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
413 <excludeTransitive>true</excludeTransitive>
418 <phase>generate-sources</phase>
423 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc</outputDirectory>
426 <groupId>${project.groupId}</groupId>
427 <artifactId>platform-logic-installer</artifactId>
428 <version>${project.version}</version>
435 <id>unpack migration utility</id>
436 <phase>generate-sources</phase>
441 <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data-migrator</outputDirectory>
444 <groupId>org.onap.sdnc.oam</groupId>
445 <artifactId>data-migrator</artifactId>
446 <version>${project.version}</version>
455 <groupId>org.codehaus.mojo</groupId>
456 <artifactId>exec-maven-plugin</artifactId>
457 <version>1.5.0</version>
460 <id>change shell permissions</id>
461 <phase>process-sources</phase>
466 <executable>/usr/bin/find</executable>
468 <argument>${basedir}/target/docker-stage/opt/onap/sdnc</argument>
469 <argument>-name</argument>
470 <argument>*.sh</argument>
471 <argument>-exec</argument>
472 <argument>chmod</argument>
473 <argument>+x</argument>
474 <argument>{}</argument>
475 <argument>;</argument>
482 <groupId>org.apache.maven.plugins</groupId>
483 <artifactId>maven-failsafe-plugin</artifactId>
487 <goal>integration-test</goal>
493 <skipITs>false</skipITs>
494 <environmentVariables>
495 <SDNC_PORT>${sdnc.port}</SDNC_PORT>
496 </environmentVariables>