1 <?xml version="1.0" encoding="UTF-8"?>
3 /*******************************************************************************
4 * ============LICENSE_START=======================================================
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
13 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
22 *******************************************************************************/
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.0.3-SNAPSHOT</version>
32 <!--parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId>
33 <version>2.0.4.RELEASE</version> </parent -->
36 <groupId>org.onap.oparent</groupId>
37 <artifactId>oparent</artifactId>
38 <version>1.2.1</version>
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>
60 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
61 <artifactId>cbs-client</artifactId>
62 <version>${sdk.version}</version>
66 <groupId>org.onap.dcaegen2.services.sdk.security.crypt</groupId>
67 <artifactId>crypt-password</artifactId>
68 <version>${sdk.version}</version>
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>
79 <groupId>com.att.nsa</groupId>
80 <artifactId>cambriaClient</artifactId>
81 <version>0.0.1</version>
84 <groupId>junit</groupId>
85 <artifactId>junit</artifactId>
89 <groupId>com.fasterxml.jackson.core</groupId>
90 <artifactId>jackson-core</artifactId>
91 <version>2.9.8</version>
94 <groupId>com.fasterxml.jackson.core</groupId>
95 <artifactId>jackson-databind</artifactId>
96 <version>2.9.8</version>
98 <!-- https://mvnrepository.com/artifact/javax.json/javax.json-api -->
100 <groupId>javax.json</groupId>
101 <artifactId>javax.json-api</artifactId>
102 <version>1.1.2</version>
105 <groupId>org.springframework.boot</groupId>
106 <artifactId>spring-boot-starter-web</artifactId>
107 <version>2.0.4.RELEASE</version>
110 <groupId>org.postgresql</groupId>
111 <artifactId>postgresql</artifactId>
112 <version>42.2.5</version>
115 <groupId>org.springframework.boot</groupId>
116 <artifactId>spring-boot-starter-data-jpa</artifactId>
117 <version>2.0.9.RELEASE</version>
120 <groupId>org.springframework.data</groupId>
121 <artifactId>spring-data-commons-core</artifactId>
122 <version>1.4.0.RELEASE</version>
126 <groupId>org.hibernate.javax.persistence</groupId>
127 <artifactId>hibernate-jpa-2.0-api</artifactId>
128 <version>1.0.1.Final</version>
130 <!-- https://mvnrepository.com/artifact/org.springframework/spring-beans -->
132 <groupId>org.springframework</groupId>
133 <artifactId>spring-beans</artifactId>
134 <version>5.0.10.RELEASE</version>
138 <groupId>org.springframework.boot</groupId>
139 <artifactId>spring-boot-starter-test</artifactId>
140 <version>2.0.4.RELEASE</version>
142 <!-- exclusions> <exclusion> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId>
143 </exclusion> </exclusions -->
145 <!-- https://mvnrepository.com/artifact/org.mockito/mockito-core -->
148 <groupId>org.mockito</groupId>
149 <artifactId>mockito-core</artifactId>
150 <version>1.10.16</version>
156 <groupId>junit</groupId>
157 <artifactId>junit</artifactId>
158 <version>4.12</version>
161 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 -->
162 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
164 <groupId>org.powermock</groupId>
165 <artifactId>powermock-api-mockito</artifactId>
166 <version>1.6.4</version>
169 <!-- https://mvnrepository.com/artifact/org.powermock/powermock-module-junit4 -->
171 <groupId>org.powermock</groupId>
172 <artifactId>powermock-module-junit4</artifactId>
173 <version>1.6.4</version>
178 <groupId>org.functionaljava</groupId>
179 <artifactId>functionaljava</artifactId>
180 <version>3.0</version>
189 <artifactId>maven-checkstyle-plugin</artifactId>
192 <id>onap-java-style</id>
196 <phase>process-sources</phase>
198 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
199 with minor changes -->
200 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
201 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated
202 sources directory -->
204 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
206 <includeResources>true</includeResources>
207 <includeTestSourceDirectory>false</includeTestSourceDirectory>
208 <includeTestResources>false</includeTestResources>
211 <consoleOutput>true</consoleOutput>
212 <failsOnViolation>false</failsOnViolation>
213 <violationSeverity>warning</violationSeverity>
219 <groupId>org.onap.oparent</groupId>
220 <artifactId>checkstyle</artifactId>
221 <version>1.2.3</version>
222 <scope>compile</scope>
226 <!--plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId>
227 <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution>
228 <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId>
229 <versionRange>2.17,)</versionRange> <goals> <goal>check</goal> </goals> </pluginExecutionFilter>
230 <action> <ignore /> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata>
231 </configuration> </plugin -->
233 <groupId>org.springframework.boot</groupId>
234 <artifactId>spring-boot-maven-plugin</artifactId>
235 <version>2.0.4.RELEASE</version>
239 <goal>repackage</goal>
245 <groupId>com.spotify</groupId>
246 <artifactId>docker-maven-plugin</artifactId>
248 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
250 <imageName>${docker.image.name}</imageName>
254 <baseImage>java:openjdk-8</baseImage>
258 <targetPath>/bin</targetPath>
259 <directory>${project.build.directory}</directory>
260 <include>${project.artifactId}-${project.version}.jar</include>
263 <targetPath>/bin</targetPath>
264 <directory>${project.basedir}</directory>
265 <include>entrypoint.sh</include>
269 <!-- Maven is loosing file permissions during artifacts copy -->
270 <run>adduser --disabled-password sonhms </run>
271 <run>chmod +x /bin/entrypoint.sh</run>
272 <run>mv /bin/*.jar /bin/application.jar</run>
273 <run>chmod -R 777 /bin</run>
276 <expose>8080</expose>
278 <entryPoint>/bin/entrypoint.sh</entryPoint>
283 <phase>package</phase>
289 <id>tag-and-push-image-latest</id>
290 <phase>deploy</phase>
295 <image>${docker.image.name}:latest</image>
296 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>
297 <pushImage>true</pushImage>
301 <id>tag-and-push-image-with-version</id>
302 <phase>deploy</phase>
307 <image>${docker.image.name}:latest</image>
308 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName>
309 <pushImage>true</pushImage>
313 <id>tag-and-push-image-with-version-and-date</id>
314 <phase>deploy</phase>
319 <image>${docker.image.name}:latest</image>
320 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName>
321 <pushImage>true</pushImage>