[DCAEGEN2]Release dcaegen2-services-son-handler maven dependency
[dcaegen2/services/son-handler.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 /*******************************************************************************
4  *  ============LICENSE_START=======================================================
5  *  son-handler
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  *   Copyright (c) 2023 Deutsche Telekom AG. All rights reserved.
11  *   ==============================================================================
12  *     Licensed under the Apache License, Version 2.0 (the "License");
13  *     you may not use this file except in compliance with the License.
14  *     You may obtain a copy of the License at
15  *
16  *          http://www.apache.org/licenses/LICENSE-2.0
17  *
18  *     Unless required by applicable law or agreed to in writing, software
19  *     distributed under the License is distributed on an "AS IS" BASIS,
20  *     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  *     See the License for the specific language governing permissions and
22  *     limitations under the License.
23  *     ============LICENSE_END=========================================================
24  *
25  *******************************************************************************/
26   -->
27 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
28         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
29         <modelVersion>4.0.0</modelVersion>
30         <groupId>org.onap.dcaegen2.services.son-handler</groupId>
31         <artifactId>son-handler</artifactId>
32         <name>dcaegen2-services-son-handler</name>
33         <version>2.2.1-SNAPSHOT</version>
34
35        <!--parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId>
36                 <version>2.0.4.RELEASE</version> </parent -->
37
38         <parent>
39                 <groupId>org.onap.oparent</groupId>
40                 <artifactId>oparent</artifactId>
41                 <version>2.0.0</version>
42                 <relativePath />
43         </parent>
44
45
46         <properties>
47                 <sdk.version>1.8.6</sdk.version>
48                 <spring.version>5.3.25</spring.version>
49                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
50                 <maven.compiler.source>11</maven.compiler.source>
51                 <maven.compiler.target>11</maven.compiler.target>
52                 <docker.image.name>onap/org.onap.dcaegen2.services.son-handler</docker.image.name>
53                 <!-- NEXUS RELATED SETTINGS -->
54                 <nexusproxy>https://nexus.onap.org</nexusproxy>
55                 <snapshots.path>content/repositories/snapshots/</snapshots.path>
56                 <releases.path>content/repositories/releases/</releases.path>
57                 <site.path>content/sites/site/org/onap/dcaegen2/services/son-handler/${project.artifactId}/${project.version}</site.path>
58                 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
59                 <sonar.coverage.jacoco.xmlReportPaths>
60                    ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
61                 </sonar.coverage.jacoco.xmlReportPaths>
62         </properties>
63
64         <dependencies>
65                 <!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-util -->
66                 <dependency>
67                         <groupId>org.apache.tomcat</groupId>
68                         <artifactId>tomcat-util</artifactId>
69                         <version>9.0.37</version>
70                 </dependency>
71                 <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-autoconfigure -->
72                 <dependency>
73                         <groupId>org.springframework.boot</groupId>
74                         <artifactId>spring-boot-autoconfigure</artifactId>
75                         <version>2.3.1.RELEASE</version>
76                 </dependency>
77                 <dependency>
78                         <groupId>org.springframework</groupId>
79                         <artifactId>spring-webmvc</artifactId>
80                         <version>${spring.version}</version>
81                 </dependency>
82                 <dependency>
83                          <groupId>org.springframework</groupId>
84                          <artifactId>spring-core</artifactId>
85                          <version>${spring.version}</version>
86                 </dependency>
87                 <dependency>
88                         <groupId>org.springframework</groupId>
89                         <artifactId>spring-beans</artifactId>
90                         <version>${spring.version}</version>
91                 </dependency>
92                 <dependency>
93                         <groupId>org.springframework</groupId>
94                         <artifactId>spring-expression</artifactId>
95                         <version>${spring.version}</version>
96                 </dependency>
97                 <dependency>
98                         <groupId>org.springframework</groupId>
99                         <artifactId>spring-web</artifactId>
100                         <version>${spring.version}</version>
101                 </dependency>
102                 <dependency>
103                         <groupId>org.springframework</groupId>
104                         <artifactId>spring-tx</artifactId>
105                         <version>${spring.version}</version>
106                 </dependency>
107                 <dependency>
108                         <groupId>org.springframework.data</groupId>
109                         <artifactId>spring-data-commons</artifactId>
110                         <version>2.2.0.RELEASE</version>
111                 </dependency>
112                 <!-- https://mvnrepository.com/artifact/io.projectreactor.netty/reactor-netty -->
113                 <dependency>
114                         <groupId>io.projectreactor.netty</groupId>
115                         <artifactId>reactor-netty</artifactId>
116                         <version>1.1.0</version>
117                 </dependency>
118                 <!-- cbs client -->
119                 <dependency>
120                         <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
121                         <artifactId>cbs-client</artifactId>
122                         <version>${sdk.version}</version>
123                 </dependency>
124                 <dependency>
125                         <groupId>org.onap.dcaegen2.services.sdk.security.crypt</groupId>
126                         <artifactId>crypt-password</artifactId>
127                         <version>${sdk.version}</version>
128                         </dependency>
129                 <dependency>
130                         <!-- Import dependency management from Spring Boot -->
131                         <groupId>org.springframework.boot</groupId>
132                         <artifactId>spring-boot-dependencies</artifactId>
133                         <version>2.1.3.RELEASE</version>
134                         <type>pom</type>
135                         <scope>import</scope>
136                 </dependency>
137                 <dependency>
138                         <groupId>com.att.nsa</groupId>
139                         <artifactId>cambriaClient</artifactId>
140                         <version>0.0.1</version>
141                 </dependency>
142                 <dependency>
143                         <groupId>junit</groupId>
144                         <artifactId>junit</artifactId>
145                         <scope>test</scope>
146                 </dependency>
147                 <dependency>
148                         <groupId>com.fasterxml.jackson.core</groupId>
149                         <artifactId>jackson-core</artifactId>
150                         <version>2.14.1</version>
151                 </dependency>
152                 <dependency>
153                         <groupId>com.fasterxml.jackson.core</groupId>
154                         <artifactId>jackson-databind</artifactId>
155                         <version>2.14.1</version>
156                 </dependency>
157                 <!-- https://mvnrepository.com/artifact/javax.json/javax.json-api -->
158                 <dependency>
159                         <groupId>javax.json</groupId>
160                         <artifactId>javax.json-api</artifactId>
161                         <version>1.1.2</version>
162                 </dependency>
163                 <dependency>
164                         <groupId>org.springframework.boot</groupId>
165                         <artifactId>spring-boot-starter-web</artifactId>
166                         <version>2.1.3.RELEASE</version>
167                         <exclusions>
168                                 <exclusion>
169                                         <groupId>org.springframework.boot</groupId>
170                                         <artifactId>spring-boot-starter-tomcat</artifactId>
171                                 </exclusion>
172                         </exclusions>
173                 </dependency>
174                  <dependency>
175                         <groupId>org.postgresql</groupId>
176                         <artifactId>postgresql</artifactId>
177                         <version>42.5.1</version>
178                         </dependency>
179                  <dependency>
180                         <groupId>org.springframework.boot</groupId>
181                         <artifactId>spring-boot-starter-data-jpa</artifactId>
182                         <version>2.1.3.RELEASE</version>
183                 </dependency>
184                 <dependency>
185                         <groupId>org.hibernate.javax.persistence</groupId>
186                         <artifactId>hibernate-jpa-2.0-api</artifactId>
187                         <version>1.0.1.Final</version>
188                 </dependency>
189                 <!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
190                 <dependency>
191                         <groupId>org.springframework.boot</groupId>
192                         <artifactId>spring-boot-starter-test</artifactId>
193                         <version>2.1.3.RELEASE</version>
194                         <scope>test</scope>
195                         <!-- exclusions> <exclusion> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId>
196                                 </exclusion> </exclusions -->
197                 </dependency>
198                 <!-- https://mvnrepository.com/artifact/org.mockito/mockito-core -->
199                 <dependency>
200                         <groupId>org.mockito</groupId>
201                         <artifactId>mockito-core</artifactId>
202                         <version>2.21.0</version>
203                         <scope>test</scope>
204                 </dependency>
205                 <dependency>
206                         <groupId>junit</groupId>
207                         <artifactId>junit</artifactId>
208                         <version>4.12</version>
209                         <scope>test</scope>
210                 </dependency>
211                 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito2 -->
212                 <dependency>
213                         <groupId>org.powermock</groupId>
214                         <artifactId>powermock-api-mockito2</artifactId>
215                         <version>2.0.2</version>
216                         <exclusions>
217                                 <exclusion>
218                                         <groupId>org.mockito</groupId>
219                                         <artifactId>mockito-all</artifactId>
220                                 </exclusion>
221                         </exclusions>
222                 </dependency>
223                 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 -->
224                 <dependency>
225                         <groupId>org.powermock</groupId>
226                         <artifactId>powermock-module-junit4</artifactId>
227                         <version>2.0.2</version>
228                         <scope>test</scope>
229                 </dependency>
230
231                 <dependency>
232                     <groupId>org.functionaljava</groupId>
233                     <artifactId>functionaljava</artifactId>
234                     <version>3.0</version>
235             </dependency>
236
237             <dependency>
238                     <groupId>org.apache.httpcomponents</groupId>
239                     <artifactId>httpclient</artifactId>
240                     <version>4.5.13</version>
241             </dependency>
242
243            <!-- https://mvnrepository.com/artifact/commons-beanutils/commons-beanutils -->
244             <dependency>
245                    <groupId>commons-beanutils</groupId>
246                    <artifactId>commons-beanutils</artifactId>
247                    <version>1.9.4</version>
248             </dependency>
249             <!-- mvnrepository.com/artifact/org.eclipse.jetty/jetty-server -->
250             <dependency>
251                    <groupId>org.eclipse.jetty</groupId>
252                    <artifactId>jetty-server</artifactId>
253                    <version>11.0.12</version>
254             </dependency>
255             <!-- https://mvnrepository.com/artifact/org.webjars/bootstrap -->
256             <dependency>
257                    <groupId>org.webjars</groupId>
258                    <artifactId>bootstrap</artifactId>
259                    <version>4.3.1</version>
260             </dependency>
261             <!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
262             <dependency>
263                    <groupId>javax.xml.bind</groupId>
264                    <artifactId>jaxb-api</artifactId>
265                    <version>2.3.0</version>
266             </dependency>
267             <!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
268             <dependency>
269                    <groupId>org.javassist</groupId>
270                    <artifactId>javassist</artifactId>
271                    <version>3.24.1-GA</version>
272             </dependency>
273             <dependency>
274                     <groupId>org.apache.tomcat.embed</groupId>
275                     <artifactId>tomcat-embed-core</artifactId>
276                     <version>9.0.72</version>
277             </dependency>
278             <dependency>
279                    <groupId>ch.qos.logback</groupId>
280                    <artifactId>logback-core</artifactId>
281                    <version>1.4.5</version>
282             </dependency>
283         </dependencies>
284
285         <build>
286                 <plugins>
287
288                         <!--plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId>
289                                 <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution>
290                                 <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId>
291                                 <versionRange>2.17,)</versionRange> <goals> <goal>check</goal> </goals> </pluginExecutionFilter>
292                                 <action> <ignore /> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata>
293                                 </configuration> </plugin -->
294                         <plugin>
295                                 <groupId>org.springframework.boot</groupId>
296                                 <artifactId>spring-boot-maven-plugin</artifactId>
297                                 <version>2.3.1.RELEASE</version>
298                                 <executions>
299                                         <execution>
300                                                 <goals>
301                                                         <goal>repackage</goal>
302                                                 </goals>
303                                         </execution>
304                                 </executions>
305                         </plugin>
306                         <plugin>
307                                 <groupId>com.spotify</groupId>
308                                 <artifactId>docker-maven-plugin</artifactId>
309                                 <configuration>
310                                         <serverId>${onap.nexus.dockerregistry.daily}</serverId>
311
312                                         <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
313                                         <imageTags>
314                                                 <imageTag>${project.version}-${maven.build.timestamp}Z</imageTag>
315                                                 <imageTag>${project.version}</imageTag>
316                                                 <imageTag>latest</imageTag>
317                                         </imageTags>
318                                         <baseImage>openjdk:11.0.6-jre-slim</baseImage>
319                                         <user>sonhms</user>
320                                         <resources>
321                                                 <resource>
322                                                         <targetPath>/bin</targetPath>
323                                                         <directory>${project.build.directory}</directory>
324                                                         <include>${project.artifactId}-${project.version}.jar</include>
325                                                 </resource>
326                                         </resources>
327                                         <runs>
328                                                 <!-- Maven is loosing file permissions during artifacts copy -->
329                                                 <run>adduser --disabled-password sonhms </run>
330                                                 <run>mv /bin/*.jar /bin/application.jar</run>
331                                                 <run>chmod -R 777 /bin</run>
332                                         </runs>
333                                         <exposes>
334                                                 <expose>8080</expose>
335                                         </exposes>
336                                         <entryPoint>java -jar /bin/application.jar</entryPoint>
337                                 </configuration>
338 <!--
339                                 <executions>
340                                         <execution>
341                                                 <id>build-image</id>
342                                                 <phase>package</phase>
343                                                 <goals>
344                                                         <goal>build</goal>
345                                                 </goals>
346                                         </execution>
347                                         <execution>
348                                                 <id>tag-and-push-image-latest</id>
349                                                 <phase>deploy</phase>
350                                                 <goals>
351                                                         <goal>tag</goal>
352                                                 </goals>
353                                                 <configuration>
354                                                         <image>${docker.image.name}:latest</image>
355                                                         <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>
356                                                         <pushImage>true</pushImage>
357                                                 </configuration>
358                                         </execution>
359                                         <execution>
360                                                 <id>tag-and-push-image-with-version</id>
361                                                 <phase>deploy</phase>
362                                                 <goals>
363                                                         <goal>tag</goal>
364                                                 </goals>
365                                                 <configuration>
366                                                         <image>${docker.image.name}:latest</image>
367                                                         <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName>
368                                                         <pushImage>true</pushImage>
369                                                 </configuration>
370                                         </execution>
371                                         <execution>
372                                                 <id>tag-and-push-image-with-version-and-date</id>
373                                                 <phase>deploy</phase>
374                                                 <goals>
375                                                         <goal>tag</goal>
376                                                 </goals>
377                                                 <configuration>
378                                                         <image>${docker.image.name}:latest</image>
379                                                         <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName>
380                                                         <pushImage>true</pushImage>
381                                                 </configuration>
382                                         </execution>
383                                 </executions>
384 -->
385                         </plugin>
386                 </plugins>
387         </build>
388 </project>