Roll master for Montreal
[ccsdk/apps.git] / ms / neng / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * ============LICENSE_START=======================================================
4  * ONAP : CCSDK.apps
5  * ================================================================================
6  * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20   -->
21 <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">
22     <modelVersion>4.0.0</modelVersion>
23
24     <parent>
25         <groupId>org.onap.ccsdk.apps</groupId>
26         <artifactId>ccsdk-apps-ms</artifactId>
27         <version>1.6.0-SNAPSHOT</version>
28     </parent>
29
30     <groupId>org.onap.ccsdk.apps</groupId>
31     <artifactId>ccsdk-apps-ms-neng</artifactId>
32     <version>1.6.0-SNAPSHOT</version>
33
34     <name>Naming Generation</name>
35
36     <developers>
37         <developer>
38             <id>${userId}</id>
39         </developer>
40     </developers>
41
42     <properties>
43         <swagger.directory>${basedir}/target/classes/META-INF/resources/swagger</swagger.directory>
44         <icd.file>service.json</icd.file>
45         <icd.package>org.onap.ccsdk.apps.ms.neng.service.rs</icd.package>
46         <java.version>17</java.version>
47         <docker.registry>nexus3.onap.org:10001</docker.registry>
48         <build.number>local</build.number>
49         <kube.namespace>TBD</kube.namespace>
50         <service.account>TBD</service.account>
51         <namespace>org.onap.ccsdk.apps.ms.neng</namespace>
52         <maven.compiler.source>17</maven.compiler.source>
53         <maven.compiler.target>17</maven.compiler.target>
54         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
55         <sdk.java.rest>6.2.0.11</sdk.java.rest>
56         <serviceArtifactName>ms-networkelementnamegen</serviceArtifactName>
57         <ccsdk.distribution.version>1.5.0-SNAPSHOT</ccsdk.distribution.version>
58         <docker.buildArg.https_proxy>${https_proxy}</docker.buildArg.https_proxy>
59         <docker.push.phase>deploy</docker.push.phase>
60         <docker.verbose>true</docker.verbose>
61         <ccsdk.project.version>${project.version}</ccsdk.project.version>
62         <base.image.name>onap/ccsdk-alpine-j11-image</base.image.name>
63         <base.image.version>1.5-STAGING-latest</base.image.version>
64         <image.name>onap/ccsdk-apps-ms-neng</image.name>
65         <timestamp>${maven.build.timestamp}</timestamp>
66         <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>    
67         <ccsdk.project.version>${project.version}</ccsdk.project.version>
68         <ccsdk.build.timestamp>${maven.build.timestamp}</ccsdk.build.timestamp>
69
70     </properties>
71
72     <dependencies>
73         <dependency>
74             <groupId>io.swagger</groupId>
75             <artifactId>swagger-core</artifactId>
76         </dependency>
77         <dependency>
78             <groupId>org.springframework.boot</groupId>
79             <artifactId>spring-boot-starter-web</artifactId>
80         </dependency>
81         <dependency>
82             <groupId>org.springframework.boot</groupId>
83             <artifactId>spring-boot-starter-jersey</artifactId>
84         </dependency>
85         <dependency>
86             <groupId>org.springframework.boot</groupId>
87             <artifactId>spring-boot-starter-actuator</artifactId>
88         </dependency>
89         <dependency>
90             <groupId>org.springframework.boot</groupId>
91             <artifactId>spring-boot-loader-tools</artifactId>
92         </dependency>
93         <dependency>
94             <groupId>org.springframework.boot</groupId>
95             <artifactId>spring-boot-starter-test</artifactId>
96             <scope>test</scope>
97         </dependency>
98         <dependency>
99             <groupId>org.springframework.boot</groupId>
100             <artifactId>spring-boot-starter-tomcat</artifactId>
101             <scope>compile</scope>
102         </dependency>
103         <dependency>
104             <groupId>org.springframework.boot</groupId>
105             <artifactId>spring-boot-starter-data-jpa</artifactId>
106             <scope>compile</scope>
107         </dependency>
108         <dependency>
109             <groupId>org.apache.httpcomponents</groupId>
110             <artifactId>httpclient</artifactId>
111         </dependency>
112         <dependency>
113             <groupId>javax.ws.rs</groupId>
114             <artifactId>javax.ws.rs-api</artifactId>
115         </dependency>
116         <dependency>
117             <groupId>commons-lang</groupId>
118             <artifactId>commons-lang</artifactId>
119         </dependency>
120         <dependency>
121             <groupId>org.liquibase</groupId>
122             <artifactId>liquibase-core</artifactId>
123         </dependency>
124         <dependency>
125             <groupId>org.mariadb.jdbc</groupId>
126             <artifactId>mariadb-java-client</artifactId>
127         </dependency>
128         <dependency>
129             <groupId>org.springframework.boot</groupId>
130             <artifactId>spring-boot-configuration-processor</artifactId>
131             <optional>true</optional>
132         </dependency>
133         <dependency>
134             <groupId>org.springframework</groupId>
135             <artifactId>spring-test</artifactId>
136             <scope>test</scope>
137         </dependency>
138         <dependency>
139             <groupId>org.springframework</groupId>
140             <artifactId>spring-aop</artifactId>
141         </dependency>
142         <dependency>
143             <groupId>org.springframework</groupId>
144             <artifactId>spring-beans</artifactId>
145         </dependency>
146         <dependency>
147             <groupId>org.springframework</groupId>
148             <artifactId>spring-beans</artifactId>
149         </dependency>
150         <dependency>
151             <groupId>org.springframework</groupId>
152             <artifactId>spring-context</artifactId>
153         </dependency>
154         <dependency>
155             <groupId>org.springframework</groupId>
156             <artifactId>spring-core</artifactId>
157         </dependency>
158         <dependency>
159             <groupId>org.springframework</groupId>
160             <artifactId>spring-expression</artifactId>
161         </dependency>
162         <dependency>
163             <groupId>org.springframework</groupId>
164             <artifactId>spring-web</artifactId>
165         </dependency>
166
167         <dependency>
168             <groupId>org.elasticsearch</groupId>
169             <artifactId>elasticsearch</artifactId>
170             <version>7.13.4</version>
171         </dependency>
172         <dependency>
173             <groupId>io.searchbox</groupId>
174             <artifactId>jest</artifactId>
175             <version>5.3.3</version>
176         </dependency>
177         <dependency>
178             <groupId>org.onap.ccsdk.sli.core</groupId>
179             <artifactId>utils-provider</artifactId>
180             <version>${ccsdk.sli.version}</version>
181         </dependency>
182         <dependency>
183             <groupId>com.google.code.gson</groupId>
184             <artifactId>gson</artifactId>
185             <version>${gson.version}</version>
186         </dependency>
187         <dependency>
188             <groupId>junit</groupId>
189             <artifactId>junit</artifactId>
190             <scope>test</scope>
191         </dependency>
192         <dependency>
193             <groupId>com.h2database</groupId>
194             <artifactId>h2</artifactId>
195             <scope>test</scope>
196         </dependency>
197     </dependencies>
198
199     <build>
200         <finalName>NetworkElementNameGen</finalName>
201         <resources>
202             <resource>
203                 <directory>src/main/resources</directory>
204                 <filtering>true</filtering>
205                 <includes>
206                     <include>**/*</include>
207                 </includes>
208             </resource>
209             <resource>
210                 <directory>opt/aai/keystore</directory>
211                 <targetPath>../opt/aai/keystore</targetPath>
212                 <filtering>false</filtering>
213                 <includes>
214                     <include>**/*</include>
215                 </includes>
216             </resource>
217
218             <resource>
219                 <directory>opt/etc/config</directory>
220                 <targetPath>../opt/etc/config</targetPath>
221                 <filtering>true</filtering>
222                 <includes>
223                     <include>**/*</include>
224                 </includes>
225             </resource>
226             <resource>
227                 <directory>opt/etc/keystore</directory>
228                 <targetPath>../opt/etc/keystore</targetPath>
229                 <filtering>false</filtering>
230                 <includes>
231                     <include>**/*</include>
232                 </includes>
233             </resource>
234             <resource>
235                 <directory>opt/etc/truststore</directory>
236                 <targetPath>../opt/etc/truststore</targetPath>
237                 <filtering>false</filtering>
238                 <includes>
239                     <include>**/*</include>
240                 </includes>
241             </resource>
242         </resources>
243         <pluginManagement>
244             <plugins>
245                 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
246                 <plugin>
247                     <groupId>org.eclipse.m2e</groupId>
248                     <artifactId>lifecycle-mapping</artifactId>
249                     <version>1.0.0</version>
250                     <configuration>
251                         <lifecycleMappingMetadata>
252                             <pluginExecutions>
253                                 <pluginExecution>
254                                     <pluginExecutionFilter>
255                                         <groupId>
256                                             org.apache.maven.plugins
257                                         </groupId>
258                                         <artifactId>
259                                             maven-checkstyle-plugin
260                                         </artifactId>
261                                         <versionRange>
262                                             [2.17,)
263                                         </versionRange>
264                                         <goals>
265                                             <goal>check</goal>
266                                         </goals>
267                                     </pluginExecutionFilter>
268                                     <action>
269                                         <ignore/>
270                                     </action>
271                                 </pluginExecution>
272                                 <pluginExecution>
273                                     <pluginExecutionFilter>
274                                         <groupId>
275                                             org.codehaus.mojo
276                                         </groupId>
277                                         <artifactId>
278                                             properties-maven-plugin
279                                         </artifactId>
280                                         <versionRange>
281                                             [1.0.0,)
282                                         </versionRange>
283                                         <goals>
284                                             <goal>
285                                                 set-system-properties
286                                             </goal>
287                                         </goals>
288                                     </pluginExecutionFilter>
289                                     <action>
290                                         <ignore/>
291                                     </action>
292                                 </pluginExecution>
293                             </pluginExecutions>
294                         </lifecycleMappingMetadata>
295                     </configuration>
296                 </plugin>
297             </plugins>
298         </pluginManagement>
299         <plugins>
300
301             <plugin>
302                 <groupId>org.codehaus.gmaven</groupId>
303                 <artifactId>groovy-maven-plugin</artifactId>
304                 <version>2.1.1</version>
305                 <executions>
306                     <execution>
307                         <phase>validate</phase>
308                         <goals>
309                             <goal>execute</goal>
310                         </goals>
311                         <configuration>
312                             <source>${basedir}/../../TagVersion.groovy</source>
313                         </configuration>
314                     </execution>
315                 </executions>
316             </plugin>
317             <plugin>
318                 <groupId>org.apache.maven.plugins</groupId>
319                 <artifactId>maven-surefire-plugin</artifactId>
320                 <configuration>
321                     <argLine>${surefireArgLine}</argLine>
322                     <skipTests>${skip.unit.tests}</skipTests>
323                     <excludes>
324                         <exclude>**/IT*.java</exclude>
325                     </excludes>
326                 </configuration>
327             </plugin>
328             <plugin>
329                 <groupId>org.apache.maven.plugins</groupId>
330                 <artifactId>maven-failsafe-plugin</artifactId>
331                 <executions>
332                     <execution>
333                         <id>integration-tests</id>
334                         <goals>
335                             <goal>integration-test</goal>
336                             <goal>verify</goal>
337                         </goals>
338                         <configuration>
339                             <argLine>${failsafeArgLine}</argLine>
340                             <skipTests>${skip.integration.tests}</skipTests>
341                         </configuration>
342                     </execution>
343                 </executions>
344             </plugin>
345             <plugin>
346                 <artifactId>maven-dependency-plugin</artifactId>
347             </plugin>
348             <plugin>
349                 <groupId>com.github.kongchen</groupId>
350                 <artifactId>swagger-maven-plugin</artifactId>
351                 <version>3.1.3</version>
352                 <configuration>
353                     <apiSources>
354                         <apiSource>
355                             <locations>org.onap.ccsdk.apps.ms.neng.service.rs</locations>
356                             <basePath>/web</basePath>
357                             <info>
358                                 <title>${project.artifactId} Service</title>
359                                 <version>${project.version}</version>
360                             </info>
361                             <swaggerDirectory>${swagger.directory}</swaggerDirectory>
362                         </apiSource>
363                     </apiSources>
364                 </configuration>
365                 <executions>
366                     <execution>
367                         <phase>package</phase>
368                         <goals>
369                             <goal>generate</goal>
370                         </goals>
371                     </execution>
372                 </executions>
373             </plugin>
374
375             <plugin>
376                 <groupId>org.codehaus.mojo</groupId>
377                 <artifactId>exec-maven-plugin</artifactId>
378             </plugin>
379
380             <plugin>
381                 <groupId>org.springframework.boot</groupId>
382                 <artifactId>spring-boot-maven-plugin</artifactId>
383                 <executions>
384                     <execution>
385                         <goals>
386                             <goal>repackage</goal>
387                         </goals>
388                     </execution>
389                 </executions>
390             </plugin>
391         </plugins>
392     </build>
393
394     <profiles>
395         <profile>
396             <id>all-tests</id>
397             <properties>
398                 <build.profile.id>all-tests</build.profile.id>
399                 <skip.integration.tests>false</skip.integration.tests>
400                 <skip.unit.tests>false</skip.unit.tests>
401             </properties>
402         </profile>
403         <profile>
404             <id>dev</id>
405         </profile>
406         <profile>
407             <id>integration-test</id>
408             <properties>
409                 <build.profile.id>integration-test</build.profile.id>
410                 <skip.integration.tests>false</skip.integration.tests>
411                 <skip.unit.tests>true</skip.unit.tests>
412             </properties>
413         </profile>
414
415         <profile>
416             <id>blackduck</id>
417             <activation>
418                 <property>
419                     <name>blackduck-scan</name>
420                 </property>
421             </activation>
422             <build>
423                 <plugins>
424                     <plugin>
425                         <groupId>com.blackducksoftware.integration</groupId>
426                         <artifactId>hub-maven-plugin</artifactId>
427                         <version>1.4.0</version>
428                         <inherited>false</inherited>
429                         <configuration>
430                             <hubProjectName>${project.name}</hubProjectName>
431                             <outputDirectory>${project.basedir}</outputDirectory>
432                         </configuration>
433                         <executions>
434                             <execution>
435                                 <id>create-bdio-file</id>
436                                 <phase>package</phase>
437                                 <goals>
438                                     <goal>createHubOutput</goal>
439                                 </goals>
440                             </execution>
441                         </executions>
442                     </plugin>
443                 </plugins>
444             </build>
445         </profile>
446
447         <profile>
448             <id>docker</id>
449             <build>
450                 <plugins>
451                     <plugin>
452                         <artifactId>maven-resources-plugin</artifactId>
453                         <version>2.6</version>
454                         <executions>
455                             <execution>
456                                 <id>copy-dockerfile</id>
457                                 <goals>
458                                     <goal>copy-resources</goal>
459                                 </goals>
460                                 <phase>validate</phase>
461                                 <configuration>
462                                     <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
463                                     <resources>
464                                         <resource>
465                                             <directory>src/main/docker</directory>
466                                             <includes>
467                                                 <include>startService.sh</include>
468                                                 <include>Dockerfile</include>
469                                             </includes>
470                                             <filtering>true</filtering>
471                                         </resource>
472                                     </resources>
473                                 </configuration>
474                             </execution>
475                             <execution>
476                                 <id>copy-app-jar</id>
477                                 <goals>
478                                     <goal>copy-resources</goal>
479                                 </goals>
480                                 <phase>package</phase>
481                                 <configuration>
482                                     <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
483                                     <resources>
484                                         <resource>
485                                             <directory>${basedir}/target/</directory>
486                                             <includes>
487                                                 <include>NetworkElementNameGen.jar</include>
488                                             </includes>
489                                             <filtering>false</filtering>
490                                         </resource>
491                                     </resources>
492                                 </configuration>
493                             </execution>
494                             <execution>
495                                 <id>copy-config</id>
496                                 <goals>
497                                     <goal>copy-resources</goal>
498                                 </goals>
499                                 <phase>validate</phase>
500                                 <configuration>
501                                     <outputDirectory>${basedir}/target/docker-stage/opt/etc/config</outputDirectory>
502                                     <resources>
503                                         <resource>
504                                             <directory>${basedir}/opt/etc/config</directory>
505                                             <includes>
506                                                 <include>*</include>
507                                             </includes>
508                                             <filtering>true</filtering>
509                                         </resource>
510                                     </resources>
511                                 </configuration>
512                             </execution>
513                         </executions>
514                     </plugin>
515
516
517                     <plugin>
518                         <groupId>io.fabric8</groupId>
519                         <artifactId>docker-maven-plugin</artifactId>
520                         <version>0.28.0</version>
521                         <inherited>false</inherited>
522                         <configuration>
523                             <images>
524                                 <image>
525                                     <name>${image.name}</name>
526                                     <build>
527                                         <cleanup>try</cleanup>
528                                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
529                                         <tags>
530                                                                                         <tag>${project.docker.latestminortag.version}</tag>
531                                                                                         <tag>${project.docker.latestfulltag.version}</tag>
532                                                                                         <tag>${project.docker.latesttagtimestamp.version}</tag>
533                                         </tags>
534                                     </build>
535                                 </image>
536                             </images>
537                             <verbose>true</verbose>
538                         </configuration>
539                         <executions>
540                             <execution>
541                                 <id>generate-images</id>
542                                 <phase>package</phase>
543                                 <goals>
544                                     <goal>build</goal>
545                                 </goals>
546                             </execution>
547                             <execution>
548                                 <id>push-images</id>
549                                 <phase>${docker.push.phase}</phase>
550                                 <goals>
551                                     <goal>build</goal>
552                                     <goal>push</goal>
553                                 </goals>
554                             </execution>
555                         </executions>
556                     </plugin>
557                 </plugins>
558             </build>
559         </profile>
560
561     </profiles>
562 </project>