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