1 <?xml version="1.0" encoding="UTF-8"?>
3 /*******************************************************************************
4 * ============LICENSE_START=======================================================
6 * ================================================================================
7 * Copyright (C) 2019-2022 Wipro Limited.
8 * Copyright (C) 2022 Huawei Technologies Co., Ltd.
9 * Copyright (C) 2022 AT&T. All rights reserved.
10 * ==============================================================================
11 * Licensed under the Apache License, Version 2.0 (the "License");
12 * you may not use this file except in compliance with the License.
13 * You may obtain a copy of the License at
15 * http://www.apache.org/licenses/LICENSE-2.0
17 * Unless required by applicable law or agreed to in writing, software
18 * distributed under the License is distributed on an "AS IS" BASIS,
19 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 * See the License for the specific language governing permissions and
21 * limitations under the License.
22 * ============LICENSE_END=========================================================
24 *******************************************************************************/
26 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
27 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
28 <modelVersion>4.0.0</modelVersion>
29 <groupId>org.onap.dcaegen2.services.son-handler</groupId>
30 <artifactId>son-handler</artifactId>
31 <name>dcaegen2-services-son-handler</name>
32 <version>2.1.10-SNAPSHOT</version>
34 <!--parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId>
35 <version>2.0.4.RELEASE</version> </parent -->
38 <groupId>org.onap.oparent</groupId>
39 <artifactId>oparent</artifactId>
40 <version>2.0.0</version>
46 <sdk.version>1.8.6</sdk.version>
47 <spring.version>5.3.20</spring.version>
48 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
49 <maven.compiler.source>11</maven.compiler.source>
50 <maven.compiler.target>11</maven.compiler.target>
51 <docker.image.name>onap/org.onap.dcaegen2.services.son-handler</docker.image.name>
52 <!-- NEXUS RELATED SETTINGS -->
53 <nexusproxy>https://nexus.onap.org</nexusproxy>
54 <snapshots.path>content/repositories/snapshots/</snapshots.path>
55 <releases.path>content/repositories/releases/</releases.path>
56 <site.path>content/sites/site/org/onap/dcaegen2/services/son-handler/${project.artifactId}/${project.version}</site.path>
57 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
58 <sonar.coverage.jacoco.xmlReportPaths>
59 ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
60 </sonar.coverage.jacoco.xmlReportPaths>
64 <!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-util -->
66 <groupId>org.apache.tomcat</groupId>
67 <artifactId>tomcat-util</artifactId>
68 <version>9.0.37</version>
70 <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-autoconfigure -->
72 <groupId>org.springframework.boot</groupId>
73 <artifactId>spring-boot-autoconfigure</artifactId>
74 <version>2.3.1.RELEASE</version>
77 <groupId>org.springframework</groupId>
78 <artifactId>spring-webmvc</artifactId>
79 <version>${spring.version}</version>
82 <groupId>org.springframework</groupId>
83 <artifactId>spring-core</artifactId>
84 <version>${spring.version}</version>
87 <groupId>org.springframework</groupId>
88 <artifactId>spring-beans</artifactId>
89 <version>${spring.version}</version>
92 <groupId>org.springframework</groupId>
93 <artifactId>spring-expression</artifactId>
94 <version>${spring.version}</version>
97 <groupId>org.springframework</groupId>
98 <artifactId>spring-web</artifactId>
99 <version>${spring.version}</version>
102 <groupId>org.springframework</groupId>
103 <artifactId>spring-tx</artifactId>
104 <version>${spring.version}</version>
107 <groupId>org.springframework.data</groupId>
108 <artifactId>spring-data-commons</artifactId>
109 <version>2.2.0.RELEASE</version>
111 <!-- https://mvnrepository.com/artifact/io.projectreactor.netty/reactor-netty -->
113 <groupId>io.projectreactor.netty</groupId>
114 <artifactId>reactor-netty</artifactId>
115 <version>0.9.12.RELEASE</version>
119 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
120 <artifactId>cbs-client</artifactId>
121 <version>${sdk.version}</version>
124 <groupId>org.onap.dcaegen2.services.sdk.security.crypt</groupId>
125 <artifactId>crypt-password</artifactId>
126 <version>${sdk.version}</version>
129 <!-- Import dependency management from Spring Boot -->
130 <groupId>org.springframework.boot</groupId>
131 <artifactId>spring-boot-dependencies</artifactId>
132 <version>2.1.3.RELEASE</version>
134 <scope>import</scope>
137 <groupId>com.att.nsa</groupId>
138 <artifactId>cambriaClient</artifactId>
139 <version>0.0.1</version>
142 <groupId>junit</groupId>
143 <artifactId>junit</artifactId>
147 <groupId>com.fasterxml.jackson.core</groupId>
148 <artifactId>jackson-core</artifactId>
149 <version>2.13.3</version>
152 <groupId>com.fasterxml.jackson.core</groupId>
153 <artifactId>jackson-databind</artifactId>
154 <version>2.13.3</version>
156 <!-- https://mvnrepository.com/artifact/javax.json/javax.json-api -->
158 <groupId>javax.json</groupId>
159 <artifactId>javax.json-api</artifactId>
160 <version>1.1.2</version>
163 <groupId>org.springframework.boot</groupId>
164 <artifactId>spring-boot-starter-web</artifactId>
165 <version>2.1.3.RELEASE</version>
168 <groupId>org.springframework.boot</groupId>
169 <artifactId>spring-boot-starter-tomcat</artifactId>
174 <groupId>org.postgresql</groupId>
175 <artifactId>postgresql</artifactId>
176 <version>42.3.6</version>
179 <groupId>org.springframework.boot</groupId>
180 <artifactId>spring-boot-starter-data-jpa</artifactId>
181 <version>2.1.3.RELEASE</version>
184 <groupId>org.hibernate.javax.persistence</groupId>
185 <artifactId>hibernate-jpa-2.0-api</artifactId>
186 <version>1.0.1.Final</version>
188 <!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
190 <groupId>org.springframework.boot</groupId>
191 <artifactId>spring-boot-starter-test</artifactId>
192 <version>2.1.3.RELEASE</version>
194 <!-- exclusions> <exclusion> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId>
195 </exclusion> </exclusions -->
197 <!-- https://mvnrepository.com/artifact/org.mockito/mockito-core -->
199 <groupId>org.mockito</groupId>
200 <artifactId>mockito-core</artifactId>
201 <version>2.21.0</version>
205 <groupId>junit</groupId>
206 <artifactId>junit</artifactId>
207 <version>4.12</version>
210 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 -->
212 <groupId>org.powermock</groupId>
213 <artifactId>powermock-api-mockito2</artifactId>
214 <version>2.0.2</version>
217 <groupId>org.mockito</groupId>
218 <artifactId>mockito-all</artifactId>
222 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 -->
224 <groupId>org.powermock</groupId>
225 <artifactId>powermock-module-junit4</artifactId>
226 <version>2.0.2</version>
231 <groupId>org.functionaljava</groupId>
232 <artifactId>functionaljava</artifactId>
233 <version>3.0</version>
237 <groupId>org.apache.httpcomponents</groupId>
238 <artifactId>httpclient</artifactId>
239 <version>4.5.13</version>
242 <!-- https://mvnrepository.com/artifact/commons-beanutils/commons-beanutils -->
244 <groupId>commons-beanutils</groupId>
245 <artifactId>commons-beanutils</artifactId>
246 <version>1.9.4</version>
248 <!-- mvnrepository.com/artifact/org.eclipse.jetty/jetty-server -->
250 <groupId>org.eclipse.jetty</groupId>
251 <artifactId>jetty-server</artifactId>
252 <version>9.4.40.v20210413</version>
254 <!-- https://mvnrepository.com/artifact/org.webjars/bootstrap -->
256 <groupId>org.webjars</groupId>
257 <artifactId>bootstrap</artifactId>
258 <version>4.3.1</version>
260 <!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
262 <groupId>javax.xml.bind</groupId>
263 <artifactId>jaxb-api</artifactId>
264 <version>2.3.0</version>
266 <!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
268 <groupId>org.javassist</groupId>
269 <artifactId>javassist</artifactId>
270 <version>3.24.1-GA</version>
273 <groupId>org.apache.tomcat.embed</groupId>
274 <artifactId>tomcat-embed-core</artifactId>
275 <version>9.0.65</version>
278 <groupId>ch.qos.logback</groupId>
279 <artifactId>logback-core</artifactId>
280 <version>1.2.11</version>
287 <!--plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId>
288 <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution>
289 <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId>
290 <versionRange>2.17,)</versionRange> <goals> <goal>check</goal> </goals> </pluginExecutionFilter>
291 <action> <ignore /> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata>
292 </configuration> </plugin -->
294 <groupId>org.springframework.boot</groupId>
295 <artifactId>spring-boot-maven-plugin</artifactId>
296 <version>2.3.1.RELEASE</version>
300 <goal>repackage</goal>
306 <groupId>com.spotify</groupId>
307 <artifactId>docker-maven-plugin</artifactId>
309 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
311 <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
313 <imageTag>${project.version}-${maven.build.timestamp}Z</imageTag>
314 <imageTag>${project.version}</imageTag>
315 <imageTag>latest</imageTag>
317 <baseImage>openjdk:11.0.6-jre-slim</baseImage>
321 <targetPath>/bin</targetPath>
322 <directory>${project.build.directory}</directory>
323 <include>${project.artifactId}-${project.version}.jar</include>
327 <!-- Maven is loosing file permissions during artifacts copy -->
328 <run>adduser --disabled-password sonhms </run>
329 <run>mv /bin/*.jar /bin/application.jar</run>
330 <run>chmod -R 777 /bin</run>
333 <expose>8080</expose>
335 <entryPoint>java -jar /bin/application.jar</entryPoint>
341 <phase>package</phase>
347 <id>tag-and-push-image-latest</id>
348 <phase>deploy</phase>
353 <image>${docker.image.name}:latest</image>
354 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>
355 <pushImage>true</pushImage>
359 <id>tag-and-push-image-with-version</id>
360 <phase>deploy</phase>
365 <image>${docker.image.name}:latest</image>
366 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName>
367 <pushImage>true</pushImage>
371 <id>tag-and-push-image-with-version-and-date</id>
372 <phase>deploy</phase>
377 <image>${docker.image.name}:latest</image>
378 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName>
379 <pushImage>true</pushImage>