ea9647edcf2c48b0f5088a4c38e71b34054d3817
[sdnc/oam.git] / installation / sdnc / pom.xml
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>
4
5     <parent>
6         <groupId>org.onap.sdnc.oam</groupId>
7         <artifactId>installation</artifactId>
8         <version>2.1.7-SNAPSHOT</version>
9     </parent>
10
11     <artifactId>installation-sdnc</artifactId>
12     <packaging>pom</packaging>
13
14     <name>sdnc-oam :: installation :: ${project.artifactId}</name>
15     <description>Creates SDN Controller Docker container</description>
16     <organization>
17         <name>ONAP</name>
18     </organization>
19
20     <properties>
21         <image.name>onap/sdnc-aaf-image</image.name>
22         <standalone.image.name>onap/sdnc-image</standalone.image.name>
23         <ccsdk.docker.version>${ccsdk.docker.odlsli.alpine.version}</ccsdk.docker.version>
24         <sdnc.keystore>org.onap.sdnc.p12</sdnc.keystore>
25         <sdnc.keypass><![CDATA[;:G58,7ZhqOSI:7^oZCY[9Dv]]></sdnc.keypass>
26         <sdnc.secureport>8443</sdnc.secureport>
27
28         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
29         <sdnc.build.timestamp>${maven.build.timestamp}</sdnc.build.timestamp>
30
31         <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
32         <docker.autoCreateCustomNetworks>true</docker.autoCreateCustomNetworks>
33     </properties>
34
35     <dependencies>
36         <dependency>
37             <groupId>org.onap.sdnc.northbound</groupId>
38             <artifactId>generic-resource-api-installer</artifactId>
39             <version>${sdnc.northbound.version}</version>
40             <type>zip</type>
41             <classifier>repo</classifier>
42         </dependency>
43         <dependency>
44             <groupId>org.onap.sdnc.northbound</groupId>
45             <artifactId>optical-service-installer</artifactId>
46             <version>${sdnc.northbound.version}</version>
47             <type>zip</type>
48             <classifier>repo</classifier>
49         </dependency>
50         <dependency>
51             <groupId>org.onap.sdnc.northbound</groupId>
52             <artifactId>vnftools-installer</artifactId>
53             <version>${sdnc.northbound.version}</version>
54             <type>zip</type>
55             <classifier>repo</classifier>
56         </dependency>
57         <dependency>
58             <groupId>org.onap.sdnc.northbound</groupId>
59             <artifactId>sdnc-northbound-features-installer</artifactId>
60             <version>${sdnc.northbound.version}</version>
61             <type>zip</type>
62             <classifier>repo</classifier>
63         </dependency>
64         <!-- SDNR Related Features : Start -->
65         <dependency>
66             <groupId>org.onap.ccsdk.features</groupId>
67             <artifactId>features-installer</artifactId>
68             <version>${ccsdk.features.version}</version>
69             <type>zip</type>
70             <classifier>repo</classifier>
71         </dependency>
72         <dependency>
73             <groupId>org.onap.ccsdk.features.sdnr.wt</groupId>
74             <artifactId>sdnr-wt-feature-aggregator-installer</artifactId>
75             <version>${ccsdk.features.version}</version>
76             <type>zip</type>
77             <classifier>repo</classifier>
78         </dependency>
79         <dependency>
80             <groupId>org.onap.ccsdk.features</groupId>
81             <artifactId>aafshiro-installer</artifactId>
82             <version>${ccsdk.features.version}</version>
83             <type>zip</type>
84             <classifier>repo</classifier>
85         </dependency>
86         <dependency>
87             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
88             <artifactId>sdnr-northbound-features-installer</artifactId>
89             <version>${ccsdk.features.version}</version>
90             <type>zip</type>
91             <classifier>repo</classifier>
92         </dependency>
93         <dependency>
94             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
95             <artifactId>oofpcipoc-installer</artifactId>
96             <version>${ccsdk.features.version}</version>
97             <type>zip</type>
98             <classifier>repo</classifier>
99         </dependency>
100         <dependency>
101             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
102             <artifactId>CMNotify-installer</artifactId>
103             <version>${ccsdk.features.version}</version>
104             <type>zip</type>
105             <classifier>repo</classifier>
106         </dependency>
107         <dependency>
108             <groupId>org.onap.ccsdk.features.sdnr.northbound</groupId>
109             <artifactId>ranSlice-installer</artifactId>
110             <version>${ccsdk.features.version}</version>
111             <type>zip</type>
112             <classifier>repo</classifier>
113         </dependency>
114         <dependency>
115             <groupId>org.onap.ccsdk.oran</groupId>
116             <artifactId>a1-adapter-northbound-installer</artifactId>
117             <version>${ccsdk.oran.a1adapter.version}</version>
118             <type>zip</type>
119             <classifier>repo</classifier>
120         </dependency>
121         <dependency>
122             <groupId>org.onap.ccsdk.oran</groupId>
123             <artifactId>a1-adapter-installer</artifactId>
124             <version>${ccsdk.oran.a1adapter.version}</version>
125             <type>zip</type>
126             <classifier>repo</classifier>
127         </dependency>
128         <!-- SDNR Related Features : End -->
129     </dependencies>
130
131     <build>
132         <plugins>
133             <plugin>
134                 <groupId>org.codehaus.groovy.maven</groupId>
135                 <artifactId>gmaven-plugin</artifactId>
136                 <version>1.0</version>
137                 <executions>
138                     <execution>
139                         <phase>validate</phase>
140                         <goals>
141                             <goal>execute</goal>
142                         </goals>
143                         <configuration>
144                             <source>${basedir}/../TagVersion.groovy</source>
145                         </configuration>
146                     </execution>
147                 </executions>
148             </plugin>
149
150             <plugin>
151                 <groupId>io.fabric8</groupId>
152                 <artifactId>docker-maven-plugin</artifactId>
153                 <version>0.34.0</version>
154                 <inherited>false</inherited>
155                 <configuration>
156                     <images>
157                         <image>
158                             <name>${image.name}</name>
159                             <build>
160                                 <cleanup>try</cleanup>
161                                 <noCache>true</noCache>
162                                 <contextDir>${basedir}/target/docker-stage</contextDir>
163                                 <dockerFile>Dockerfile</dockerFile>
164                                 <args>
165                                     <AAF>true</AAF>
166                                 </args>
167                                 <tags>
168                                     <tag>${project.docker.latestminortag.version}</tag>
169                                     <tag>${project.docker.latestfulltag.version}</tag>
170                                     <tag>${project.docker.latesttagtimestamp.version}</tag>
171                                 </tags>
172                             </build>
173                         </image>
174                         <image>
175                             <name>${standalone.image.name}</name>
176                             <build>
177                                 <cleanup>try</cleanup>
178                                 <noCache>true</noCache>
179                                 <contextDir>${basedir}/target/docker-stage</contextDir>
180                                 <dockerFile>Dockerfile</dockerFile>
181                                 <args>
182                                     <AAF>false</AAF>
183                                 </args>
184                                 <tags>
185                                     <tag>${project.docker.latestminortag.version}</tag>
186                                     <tag>${project.docker.latestfulltag.version}</tag>
187                                     <tag>${project.docker.latesttagtimestamp.version}</tag>
188                                 </tags>
189                             </build>
190                         </image>
191                     </images>
192                     <verbose>${docker.verbose}</verbose>
193                     <skipPush>${docker.skip.push}</skipPush>
194                 </configuration>
195                 <executions>
196                     <execution>
197                         <id>build-push-images</id>
198                         <phase>${docker.push.phase}</phase>
199                         <goals>
200                             <goal>build</goal>
201                             <goal>push</goal>
202                         </goals>
203                     </execution>
204                 </executions>
205             </plugin>
206             <plugin>
207                 <artifactId>maven-resources-plugin</artifactId>
208                 <version>2.6</version>
209                 <executions>
210                     <execution>
211                         <id>copy-dockerfile</id>
212                         <goals>
213                             <goal>copy-resources</goal>
214                         </goals>
215                         <!-- here the phase you need -->
216                         <phase>validate</phase>
217                         <configuration>
218                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
219                             <resources>
220                                 <resource>
221                                     <directory>src/main/docker</directory>
222                                     <includes>
223                                         <include>Dockerfile</include>
224                                     </includes>
225                                     <filtering>true</filtering>
226                                 </resource>
227                             </resources>
228                         </configuration>
229                     </execution>
230                     <execution>
231                         <id>copy-scripts</id>
232                         <goals>
233                             <goal>copy-resources</goal>
234                         </goals>
235                         <!-- here the phase you need -->
236                         <phase>validate</phase>
237                         <configuration>
238                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/bin</outputDirectory>
239                             <resources>
240                                 <resource>
241                                     <directory>src/main/scripts</directory>
242                                     <includes>
243                                         <include>*.py</include>
244                                         <include>*.sh</include>
245                                     </includes>
246                                     <filtering>true</filtering>
247                                 </resource>
248                             </resources>
249                         </configuration>
250                     </execution>
251                     <execution>
252                         <id>copy-tarballs</id>
253                         <goals>
254                             <goal>copy-resources</goal>
255                         </goals>
256                         <!-- here the phase you need -->
257                         <phase>validate</phase>
258                         <configuration>
259                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
260                             <resources>
261                                 <resource>
262                                     <directory>src/main/resources</directory>
263                                     <includes>
264                                         <include>idmlight.db.mv.db</include>
265                                         <include>truststoreONAPall.jks</include>
266                                         <include>aaa-app-config.xml</include>
267                                     </includes>
268                                     <filtering>false</filtering>
269                                 </resource>
270                             </resources>
271                         </configuration>
272                     </execution>
273                     <execution>
274                         <id>copy-data</id>
275                         <goals>
276                             <goal>copy-resources</goal>
277                         </goals>
278                         <!-- here the phase you need -->
279                         <phase>validate</phase>
280                         <configuration>
281                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data</outputDirectory>
282                             <resources>
283                                 <resource>
284                                     <directory>src/main/resources</directory>
285                                     <includes>
286                                         <include>*.dump</include>
287                                         <include>oauth-aaa-app-config.xml</include>
288                                     </includes>
289                                     <filtering>false</filtering>
290                                 </resource>
291                             </resources>
292                         </configuration>
293                     </execution>
294                     <execution>
295                         <id>copy-properties</id>
296                         <goals>
297                             <goal>copy-resources</goal>
298                         </goals>
299                         <!-- here the phase you need -->
300                         <phase>validate</phase>
301                         <configuration>
302                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/properties</outputDirectory>
303                             <resources>
304                                 <resource>
305                                     <directory>../src/main/properties</directory>
306                                     <includes>
307                                         <include>*.properties</include>
308                                         <include>*.props</include>
309                                         <include>*.csv</include>
310                                     </includes>
311                                     <filtering>false</filtering>
312                                 </resource>
313                             </resources>
314                         </configuration>
315                     </execution>
316                     <execution>
317                         <id>copy-keystores</id>
318                         <goals>
319                             <goal>copy-resources</goal>
320                         </goals>
321                         <!-- here the phase you need -->
322                         <phase>validate</phase>
323                         <configuration>
324                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data/stores</outputDirectory>
325                             <resources>
326                                 <resource>
327                                     <directory>../src/main/stores</directory>
328                                     <includes>
329                                         <include>*.jks</include>
330                                         <include>*.keyfile</include>
331                                         <include>*.p12</include>
332                                     </includes>
333                                     <filtering>false</filtering>
334                                 </resource>
335                             </resources>
336                         </configuration>
337                     </execution>
338                 </executions>
339             </plugin>
340             <plugin>
341                 <groupId>org.apache.maven.plugins</groupId>
342                 <artifactId>maven-dependency-plugin</artifactId>
343                 <version>3.0.2</version>
344                 <executions>
345                     <execution>
346                         <id>unpack-sdnc-features</id>
347                         <phase>generate-sources</phase>
348                         <goals>
349                             <goal>unpack-dependencies</goal>
350                         </goals>
351                         <configuration>
352                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
353                             <excludeTransitive>true</excludeTransitive>
354                         </configuration>
355                     </execution>
356                     <execution>
357                         <id>unpack-platform-logic</id>
358                         <phase>generate-sources</phase>
359                         <goals>
360                             <goal>unpack</goal>
361                         </goals>
362                         <configuration>
363                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc</outputDirectory>
364                             <artifactItems>
365                                 <artifactItem>
366                                     <groupId>${project.groupId}</groupId>
367                                     <artifactId>platform-logic-installer</artifactId>
368                                     <version>${project.version}</version>
369                                     <type>zip</type>
370                                 </artifactItem>
371                             </artifactItems>
372                         </configuration>
373                     </execution>
374                     <execution>
375                         <id>unpack-data-migrator</id>
376                         <phase>generate-sources</phase>
377                         <goals>
378                             <goal>unpack</goal>
379                         </goals>
380                         <configuration>
381                             <outputDirectory>${basedir}/target/docker-stage/opt/onap/sdnc/data-migrator</outputDirectory>
382                             <artifactItems>
383                                 <artifactItem>
384                                     <groupId>org.onap.sdnc.oam</groupId>
385                                     <artifactId>data-migrator</artifactId>
386                                     <version>${project.version}</version>
387                                     <type>zip</type>
388                                 </artifactItem>
389                             </artifactItems>
390                         </configuration>
391                     </execution>
392                 </executions>
393             </plugin>
394             <plugin>
395                 <groupId>org.apache.maven.plugins</groupId>
396                 <artifactId>maven-antrun-plugin</artifactId>
397                 <version>1.8</version>
398                 <executions>
399                     <execution>
400                         <id>change-shell-permissions</id>
401                         <phase>process-sources</phase>
402                         <configuration>
403                             <target>
404                                 <chmod dir="${basedir}/target/docker-stage/opt/onap/sdnc" perm="+x" includes="**/*.sh"/>
405                             </target>
406                         </configuration>
407                         <goals>
408                             <goal>run</goal>
409                         </goals>
410                     </execution>
411                 </executions>
412             </plugin>
413             <plugin>
414                 <groupId>org.apache.maven.plugins</groupId>
415                 <artifactId>maven-failsafe-plugin</artifactId>
416                 <executions>
417                     <execution>
418                         <goals>
419                             <goal>integration-test</goal>
420                             <goal>verify</goal>
421                         </goals>
422                     </execution>
423                 </executions>
424                 <configuration>
425                     <skipITs>false</skipITs>
426                     <environmentVariables>
427                         <SDNC_PORT>${sdnc.port}</SDNC_PORT>
428                     </environmentVariables>
429                 </configuration>
430             </plugin>
431         </plugins>
432     </build>
433 </project>