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