blob: 6f54741f44dc9dcff2f8ed54357d3169bbf80b45 [file] [log] [blame]
JoeOLeary8338d2e2019-01-22 16:09:34 +00001<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 ============LICENSE_START=======================================================
4 Copyright (C) 2019 Nordix Foundation.
5 ================================================================================
6 Licensed under the Apache License, Version 2.0 (the "License");
7 you may not use this file except in compliance with the License.
8 You may obtain a copy of the License at
9
10 http://www.apache.org/licenses/LICENSE-2.0
11
12 Unless required by applicable law or agreed to in writing, software
13 distributed under the License is distributed on an "AS IS" BASIS,
14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 See the License for the specific language governing permissions and
16 limitations under the License.
17
18 SPDX-License-Identifier: Apache-2.0
19 ============LICENSE_END=========================================================
20-->
21
22<project xmlns="http://maven.apache.org/POM/4.0.0"
emartin4751cb92019-01-29 12:21:51 +000023 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
JoeOLeary8338d2e2019-01-22 16:09:34 +000025 <modelVersion>4.0.0</modelVersion>
26
27 <groupId>org.onap.dcaegen2.services</groupId>
28 <artifactId>pm-mapper</artifactId>
29 <version>1.0-SNAPSHOT</version>
30
JoeOLearybecd8ee2019-01-28 13:44:27 +000031 <parent>
32 <groupId>org.onap.oparent</groupId>
33 <artifactId>oparent</artifactId>
34 <version>1.2.0</version>
35 </parent>
36
JoeOLeary4fde9d32019-02-12 15:49:07 +000037 <name>dcaegen2-services-pm-mapper</name>
38 <description>Maps PM measurement data from XML to VES</description>
39 <packaging>jar</packaging>
40
JoeOLeary8338d2e2019-01-22 16:09:34 +000041 <properties>
42 <!-- Dependency Versions -->
43 <lombok.version>1.18.4</lombok.version>
44 <sl4j.version>1.7.25</sl4j.version>
45 <logback.version>1.2.3</logback.version>
46 <reactor.version>3.2.3.RELEASE</reactor.version>
47 <undertow.version>2.0.16.Final</undertow.version>
48 <gson.version>2.8.5</gson.version>
JoeOLeary924ab472019-02-15 13:46:01 +000049 <freemarker.version>2.3.28</freemarker.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000050 <!-- Testing.Test Dependencies -->
51 <junit.version>5.3.2</junit.version>
52 <mockito.version>2.23.4</mockito.version>
53 <mockito-ju5-ext.version>2.23.4</mockito-ju5-ext.version>
54 <powermock.version>2.0.0</powermock.version>
emartin4751cb92019-01-29 12:21:51 +000055 <mockserver.version>3.10.8</mockserver.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000056 <junit4.version>4.12</junit4.version>
JoeOLeary924ab472019-02-15 13:46:01 +000057 <jsonschema.version>1.3.0</jsonschema.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000058 <!-- Plugin Versions -->
59 <shade.plugin.version>3.2.0</shade.plugin.version>
60 <jacoco.version>0.8.2</jacoco.version>
JoeOLearybecd8ee2019-01-28 13:44:27 +000061 <dockerfile.version>1.4.10</dockerfile.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000062 <surefire.version>2.22.0</surefire.version>
JoeOLearybecd8ee2019-01-28 13:44:27 +000063 <!-- Plugin Settings -->
JoeOLearyc4b59c42019-01-31 08:45:39 +000064 <image-name>${docker.push.registry}/onap/${project.groupId}.${project.artifactId}</image-name>
JoeOLearybecd8ee2019-01-28 13:44:27 +000065 <sonar.language>java</sonar.language>
66 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
67 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
68 <sonar.jacoco.reportPaths>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPaths>
69 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
70 <sonar.projectVersion>${project.version}</sonar.projectVersion>
JoeOLeary8338d2e2019-01-22 16:09:34 +000071 <compiler.target.version>1.8</compiler.target.version>
72 <compiler.source.version>1.8</compiler.source.version>
73 <shade.main>org.onap.dcaegen2.services.pmmapper.App</shade.main>
74 <shade.transformer>org.apache.maven.plugins.shade.resource.ManifestResourceTransformer</shade.transformer>
emartina8e48cf2019-02-08 18:22:27 +000075 <onap.logging.version>1.2.2</onap.logging.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000076 </properties>
77
78 <dependencies>
79 <dependency>
80 <groupId>org.projectlombok</groupId>
81 <artifactId>lombok</artifactId>
82 <version>${lombok.version}</version>
83 <scope>provided</scope>
84 </dependency>
85 <dependency>
86 <groupId>io.projectreactor</groupId>
87 <artifactId>reactor-core</artifactId>
88 <version>${reactor.version}</version>
89 </dependency>
90 <dependency>
91 <groupId>io.undertow</groupId>
92 <artifactId>undertow-core</artifactId>
93 <version>${undertow.version}</version>
94 </dependency>
95 <dependency>
96 <groupId>org.slf4j</groupId>
97 <artifactId>slf4j-api</artifactId>
98 <version>${sl4j.version}</version>
99 </dependency>
100 <dependency>
101 <groupId>ch.qos.logback</groupId>
102 <artifactId>logback-classic</artifactId>
103 <version>${logback.version}</version>
104 </dependency>
105 <dependency>
emartina8e48cf2019-02-08 18:22:27 +0000106 <groupId>org.onap.logging-analytics</groupId>
107 <artifactId>logging-slf4j</artifactId>
108 <version>${onap.logging.version}</version>
109 </dependency>
110 <dependency>
111 <groupId>javax.servlet</groupId>
112 <artifactId>servlet-api</artifactId>
113 <version>2.5</version>
114 <scope>provided</scope>
115 </dependency>
116 <dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000117 <groupId>com.google.code.gson</groupId>
118 <artifactId>gson</artifactId>
119 <version>${gson.version}</version>
120 </dependency>
121 <dependency>
JoeOLeary924ab472019-02-15 13:46:01 +0000122 <groupId>org.freemarker</groupId>
123 <artifactId>freemarker</artifactId>
124 <version>${freemarker.version}</version>
125 </dependency>
126 <dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000127 <groupId>org.junit.jupiter</groupId>
128 <artifactId>junit-jupiter-engine</artifactId>
129 <version>${junit.version}</version>
130 <scope>test</scope>
131 </dependency>
132 <dependency>
133 <groupId>org.mockito</groupId>
134 <artifactId>mockito-junit-jupiter</artifactId>
135 <version>${mockito-ju5-ext.version}</version>
136 <scope>test</scope>
137 </dependency>
138
139 <dependency>
140 <groupId>org.mockito</groupId>
141 <artifactId>mockito-core</artifactId>
142 <version>${mockito.version}</version>
143 <scope>test</scope>
144 </dependency>
145 <dependency>
146 <groupId>org.powermock</groupId>
147 <artifactId>powermock-module-junit4</artifactId>
148 <version>${powermock.version}</version>
149 <scope>test</scope>
150 </dependency>
151 <dependency>
152 <groupId>org.junit.vintage</groupId>
153 <artifactId>junit-vintage-engine</artifactId>
154 <version>${junit.version}</version>
155 <scope>test</scope>
156 </dependency>
157 <dependency>
158 <groupId>org.powermock</groupId>
159 <artifactId>powermock-api-mockito2</artifactId>
160 <version>${powermock.version}</version>
161 <scope>test</scope>
162 </dependency>
emartin4751cb92019-01-29 12:21:51 +0000163 <dependency>
164 <groupId>org.mock-server</groupId>
165 <artifactId>mockserver-netty</artifactId>
166 <version>${mockserver.version}</version>
167 <scope>test</scope>
168 </dependency>
169 <dependency>
170 <groupId>org.mock-server</groupId>
171 <artifactId>mockserver-client-java</artifactId>
172 <version>${mockserver.version}</version>
173 <scope>test</scope>
174 </dependency>
JoeOLeary924ab472019-02-15 13:46:01 +0000175 <dependency>
176 <groupId>org.junit.jupiter</groupId>
177 <artifactId>junit-jupiter-params</artifactId>
178 <version>${junit.version}</version>
179 <scope>test</scope>
180 </dependency>
181 <dependency>
182 <groupId>org.everit.json</groupId>
183 <artifactId>org.everit.json.schema</artifactId>
184 <version>${jsonschema.version}</version>
185 <scope>test</scope>
186 </dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000187 </dependencies>
188
189 <build>
190 <plugins>
191 <plugin>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000192 <groupId>com.spotify</groupId>
193 <artifactId>dockerfile-maven-plugin</artifactId>
194 <version>${dockerfile.version}</version>
195 <configuration>
JoeOLearyc4b59c42019-01-31 08:45:39 +0000196 <repository>${image-name}</repository>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000197 <tag>${project.version}</tag>
198 <dockerfile>${project.build.outputDirectory}/Dockerfile</dockerfile>
199 <buildArgs>
200 <JAR>${project.build.finalName}-jar-with-dependencies.jar</JAR>
201 </buildArgs>
202 </configuration>
203 </plugin>
204 <plugin>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000205 <groupId>org.apache.maven.plugins</groupId>
206 <artifactId>maven-surefire-plugin</artifactId>
207 <version>${surefire.version}</version>
emartin4751cb92019-01-29 12:21:51 +0000208 <configuration combine.self="override">
209 <useSystemClassLoader>false</useSystemClassLoader>
210 </configuration>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000211 </plugin>
212 <plugin>
213 <groupId>org.apache.maven.plugins</groupId>
214 <artifactId>maven-failsafe-plugin</artifactId>
215 <version>${surefire.version}</version>
216 </plugin>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000217 <plugin>
218 <groupId>org.apache.maven.plugins</groupId>
219 <artifactId>maven-shade-plugin</artifactId>
220 <version>${shade.plugin.version}</version>
221 <executions>
222 <execution>
223 <goals>
224 <goal>shade</goal>
225 </goals>
226 <configuration>
227 <shadedArtifactAttached>true</shadedArtifactAttached>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000228 <shadedClassifierName>jar-with-dependencies</shadedClassifierName>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000229 <transformers>
emartin4751cb92019-01-29 12:21:51 +0000230 <transformer
231 implementation="${shade.transformer}">
JoeOLeary8338d2e2019-01-22 16:09:34 +0000232 <mainClass>${shade.main}</mainClass>
233 </transformer>
234 </transformers>
235 </configuration>
236 </execution>
237 </executions>
238 </plugin>
239 <plugin>
240 <groupId>org.apache.maven.plugins</groupId>
241 <artifactId>maven-compiler-plugin</artifactId>
242 <configuration>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000243 <source>${maven.compiler.source}</source>
244 <target>${maven.compiler.target}</target>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000245 </configuration>
246 </plugin>
247 <plugin>
248 <groupId>org.jacoco</groupId>
249 <artifactId>jacoco-maven-plugin</artifactId>
250 <version>${jacoco.version}</version>
251 <executions>
252 <execution>
253 <id>jacoco-instrument</id>
254 <goals>
255 <goal>instrument</goal>
256 </goals>
257 </execution>
258 <execution>
259 <id>jacoco-restore-instrumented-classes</id>
260 <goals>
261 <goal>restore-instrumented-classes</goal>
262 </goals>
263 </execution>
264 <execution>
265 <goals>
266 <goal>prepare-agent</goal>
267 </goals>
268 </execution>
269 <execution>
270 <id>report</id>
271 <phase>prepare-package</phase>
272 <goals>
273 <goal>report</goal>
274 </goals>
275 </execution>
276 </executions>
277 <configuration>
278 <excludes>
279 <exclude>**/*App.*</exclude>
280 </excludes>
281 </configuration>
282 </plugin>
283 </plugins>
284 </build>
285
286</project>