blob: 516e22316b2d966f2483a139d05433e4c9440a64 [file] [log] [blame]
JoeOLeary8338d2e2019-01-22 16:09:34 +00001<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 ============LICENSE_START=======================================================
JoeOLearyd5270c62020-06-22 14:01:13 +01004 Copyright (C) 2019-2020 Nordix Foundation.
JoeOLeary8338d2e2019-01-22 16:09:34 +00005 ================================================================================
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"
dfarrelly2d336f92019-02-22 15:31:10 +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>
JoeOLearyd5270c62020-06-22 14:01:13 +010029 <version>1.3.2-SNAPSHOT</version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000030
JoeOLearybecd8ee2019-01-28 13:44:27 +000031 <parent>
32 <groupId>org.onap.oparent</groupId>
33 <artifactId>oparent</artifactId>
Gerard Hickey8dfdab22019-06-27 07:54:24 +010034 <version>2.0.0</version>
JoeOLearybecd8ee2019-01-28 13:44:27 +000035 </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>
JoeOLeary1f2e1352020-06-24 08:38:24 +010047 <undertow.version>2.0.30.Final</undertow.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000048 <gson.version>2.8.5</gson.version>
JoeOLeary924ab472019-02-15 13:46:01 +000049 <freemarker.version>2.3.28</freemarker.version>
emartin39bec812019-04-02 11:40:04 +000050 <commons.io.version>2.6</commons.io.version>
JoeOLearyd5270c62020-06-22 14:01:13 +010051 <xml.version>2.3.1</xml.version>
52 <jaxb.version>2.3.0.1</jaxb.version>
53 <!-- Testing Test Dependencies -->
JoeOLeary8338d2e2019-01-22 16:09:34 +000054 <junit.version>5.3.2</junit.version>
55 <mockito.version>2.23.4</mockito.version>
56 <mockito-ju5-ext.version>2.23.4</mockito-ju5-ext.version>
JoeOLearyd5270c62020-06-22 14:01:13 +010057 <powermock.version>2.0.7</powermock.version>
emartin4751cb92019-01-29 12:21:51 +000058 <mockserver.version>3.10.8</mockserver.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000059 <junit4.version>4.12</junit4.version>
JoeOLeary924ab472019-02-15 13:46:01 +000060 <jsonschema.version>1.3.0</jsonschema.version>
emartin1f982f92019-03-05 16:29:36 +000061 <xerces.version>2.11.0</xerces.version>
emartinab263672019-03-22 16:45:31 +000062 <reactor.test>3.1.0.RELEASE</reactor.test>
JoeOLeary8338d2e2019-01-22 16:09:34 +000063 <!-- Plugin Versions -->
JoeOLeary8338d2e2019-01-22 16:09:34 +000064 <jacoco.version>0.8.2</jacoco.version>
JoeOLeary8338d2e2019-01-22 16:09:34 +000065 <surefire.version>2.22.0</surefire.version>
dfarrelly924a8052019-07-24 16:17:13 +000066 <git-commit.version>3.0.0</git-commit.version>
67 <build-helper.version>3.0.0</build-helper.version>
68 <docker-maven.version>0.30.0</docker-maven.version>
69 <maven-jar.version>3.1.2</maven-jar.version>
70 <dependencies.version>3.1.1</dependencies.version>
JoeOLearybecd8ee2019-01-28 13:44:27 +000071 <!-- Plugin Settings -->
JoeOLearyc4b59c42019-01-31 08:45:39 +000072 <image-name>${docker.push.registry}/onap/${project.groupId}.${project.artifactId}</image-name>
dfarrelly27cdb4f2019-03-01 14:26:42 +000073 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
dfarrelly2d336f92019-02-22 15:31:10 +000074 <timestamp>${maven.build.timestamp}</timestamp>
JoeOLearybecd8ee2019-01-28 13:44:27 +000075 <sonar.language>java</sonar.language>
76 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
77 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
78 <sonar.jacoco.reportPaths>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPaths>
79 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
80 <sonar.projectVersion>${project.version}</sonar.projectVersion>
JoeOLearyd5270c62020-06-22 14:01:13 +010081 <compiler.target.version>1.11</compiler.target.version>
82 <compiler.source.version>1.11</compiler.source.version>
emartina8e48cf2019-02-08 18:22:27 +000083 <onap.logging.version>1.2.2</onap.logging.version>
dfarrelly924a8052019-07-24 16:17:13 +000084 <classpath.separator>@@</classpath.separator>
85 <pmmapper.main.class>org.onap.dcaegen2.services.pmmapper.App</pmmapper.main.class>
86 <dep.dir.name>libs</dep.dir.name>
87 <ext.dep.dir.path>${dep.dir.name}/external</ext.dep.dir.path>
JoeOLeary8338d2e2019-01-22 16:09:34 +000088 </properties>
89
90 <dependencies>
91 <dependency>
92 <groupId>org.projectlombok</groupId>
93 <artifactId>lombok</artifactId>
94 <version>${lombok.version}</version>
95 <scope>provided</scope>
96 </dependency>
97 <dependency>
98 <groupId>io.projectreactor</groupId>
99 <artifactId>reactor-core</artifactId>
100 <version>${reactor.version}</version>
101 </dependency>
102 <dependency>
103 <groupId>io.undertow</groupId>
104 <artifactId>undertow-core</artifactId>
105 <version>${undertow.version}</version>
106 </dependency>
107 <dependency>
JoeOLearyd5270c62020-06-22 14:01:13 +0100108 <groupId>javax.xml.bind</groupId>
109 <artifactId>jaxb-api</artifactId>
110 <version>${xml.version}</version>
111 </dependency>
112 <dependency>
113 <groupId>com.sun.xml.bind</groupId>
114 <artifactId>jaxb-core</artifactId>
115 <version>${jaxb.version}</version>
116 </dependency>
117 <dependency>
118 <groupId>com.sun.xml.bind</groupId>
119 <artifactId>jaxb-impl</artifactId>
120 <version>${xml.version}</version>
121 </dependency>
122 <dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000123 <groupId>org.slf4j</groupId>
124 <artifactId>slf4j-api</artifactId>
125 <version>${sl4j.version}</version>
126 </dependency>
127 <dependency>
128 <groupId>ch.qos.logback</groupId>
129 <artifactId>logback-classic</artifactId>
130 <version>${logback.version}</version>
131 </dependency>
132 <dependency>
emartina8e48cf2019-02-08 18:22:27 +0000133 <groupId>org.onap.logging-analytics</groupId>
134 <artifactId>logging-slf4j</artifactId>
135 <version>${onap.logging.version}</version>
136 </dependency>
137 <dependency>
138 <groupId>javax.servlet</groupId>
139 <artifactId>servlet-api</artifactId>
140 <version>2.5</version>
141 <scope>provided</scope>
142 </dependency>
143 <dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000144 <groupId>com.google.code.gson</groupId>
145 <artifactId>gson</artifactId>
146 <version>${gson.version}</version>
147 </dependency>
148 <dependency>
JoeOLeary924ab472019-02-15 13:46:01 +0000149 <groupId>org.freemarker</groupId>
150 <artifactId>freemarker</artifactId>
151 <version>${freemarker.version}</version>
152 </dependency>
153 <dependency>
emartin39bec812019-04-02 11:40:04 +0000154 <groupId>commons-io</groupId>
155 <artifactId>commons-io</artifactId>
156 <version>${commons.io.version}</version>
157 </dependency>
158 <dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000159 <groupId>org.junit.jupiter</groupId>
160 <artifactId>junit-jupiter-engine</artifactId>
161 <version>${junit.version}</version>
162 <scope>test</scope>
163 </dependency>
164 <dependency>
165 <groupId>org.mockito</groupId>
166 <artifactId>mockito-junit-jupiter</artifactId>
167 <version>${mockito-ju5-ext.version}</version>
168 <scope>test</scope>
169 </dependency>
170
171 <dependency>
172 <groupId>org.mockito</groupId>
173 <artifactId>mockito-core</artifactId>
174 <version>${mockito.version}</version>
175 <scope>test</scope>
176 </dependency>
177 <dependency>
178 <groupId>org.powermock</groupId>
179 <artifactId>powermock-module-junit4</artifactId>
180 <version>${powermock.version}</version>
181 <scope>test</scope>
182 </dependency>
183 <dependency>
184 <groupId>org.junit.vintage</groupId>
185 <artifactId>junit-vintage-engine</artifactId>
186 <version>${junit.version}</version>
187 <scope>test</scope>
188 </dependency>
189 <dependency>
190 <groupId>org.powermock</groupId>
191 <artifactId>powermock-api-mockito2</artifactId>
192 <version>${powermock.version}</version>
193 <scope>test</scope>
194 </dependency>
emartin4751cb92019-01-29 12:21:51 +0000195 <dependency>
196 <groupId>org.mock-server</groupId>
197 <artifactId>mockserver-netty</artifactId>
198 <version>${mockserver.version}</version>
199 <scope>test</scope>
200 </dependency>
201 <dependency>
202 <groupId>org.mock-server</groupId>
203 <artifactId>mockserver-client-java</artifactId>
204 <version>${mockserver.version}</version>
205 <scope>test</scope>
206 </dependency>
JoeOLeary924ab472019-02-15 13:46:01 +0000207 <dependency>
208 <groupId>org.junit.jupiter</groupId>
209 <artifactId>junit-jupiter-params</artifactId>
210 <version>${junit.version}</version>
211 <scope>test</scope>
212 </dependency>
213 <dependency>
emartinab263672019-03-22 16:45:31 +0000214 <groupId>io.projectreactor</groupId>
215 <artifactId>reactor-test</artifactId>
216 <version>${reactor.test}</version>
217 <scope>test</scope>
218 </dependency>
219 <dependency>
JoeOLeary924ab472019-02-15 13:46:01 +0000220 <groupId>org.everit.json</groupId>
221 <artifactId>org.everit.json.schema</artifactId>
222 <version>${jsonschema.version}</version>
223 <scope>test</scope>
224 </dependency>
emartin1f982f92019-03-05 16:29:36 +0000225 <dependency>
226 <groupId>xerces</groupId>
227 <artifactId>xercesImpl</artifactId>
228 <version>${xerces.version}</version>
229 <scope>test</scope>
230 </dependency>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000231 </dependencies>
232
233 <build>
234 <plugins>
235 <plugin>
dfarrelly924a8052019-07-24 16:17:13 +0000236 <groupId>pl.project13.maven</groupId>
237 <artifactId>git-commit-id-plugin</artifactId>
238 <version>${git-commit.version}</version>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000239 <configuration>
dfarrelly924a8052019-07-24 16:17:13 +0000240 <dateFormat>${maven.build.timestamp.format}</dateFormat>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000241 </configuration>
dfarrelly27cdb4f2019-03-01 14:26:42 +0000242 <executions>
243 <execution>
dfarrelly924a8052019-07-24 16:17:13 +0000244 <id>get-git-info</id>
dfarrelly27cdb4f2019-03-01 14:26:42 +0000245 <goals>
dfarrelly924a8052019-07-24 16:17:13 +0000246 <goal>revision</goal>
dfarrelly27cdb4f2019-03-01 14:26:42 +0000247 </goals>
dfarrelly27cdb4f2019-03-01 14:26:42 +0000248 </execution>
dfarrelly924a8052019-07-24 16:17:13 +0000249 </executions>
250 </plugin>
251 <plugin>
252 <groupId>org.apache.maven.plugins</groupId>
253 <artifactId>maven-dependency-plugin</artifactId>
254 <version>${dependencies.version}</version>
255 <configuration>
256 <silent>true</silent>
257 <includeScope>runtime</includeScope>
258 <pathSeparator>${classpath.separator}</pathSeparator>
259 </configuration>
260 <executions>
dfarrelly27cdb4f2019-03-01 14:26:42 +0000261 <execution>
dfarrelly924a8052019-07-24 16:17:13 +0000262 <id>copy-external-dependencies</id>
263 <phase>prepare-package</phase>
JoeOLeary2c8ddf32019-07-19 10:02:12 +0000264 <goals>
dfarrelly924a8052019-07-24 16:17:13 +0000265 <goal>copy-dependencies</goal>
266 <goal>build-classpath</goal>
JoeOLeary2c8ddf32019-07-19 10:02:12 +0000267 </goals>
268 <configuration>
dfarrelly924a8052019-07-24 16:17:13 +0000269 <excludeGroupIds>${project.parent.groupId}</excludeGroupIds>
270 <outputDirectory>${project.build.directory}/${ext.dep.dir.path}</outputDirectory>
271 <prefix>./${ext.dep.dir.path}</prefix>
272 <outputProperty>classpath.external</outputProperty>
dfarrelly27cdb4f2019-03-01 14:26:42 +0000273 </configuration>
274 </execution>
275 </executions>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000276 </plugin>
277 <plugin>
dfarrelly924a8052019-07-24 16:17:13 +0000278 <groupId>org.codehaus.mojo</groupId>
279 <artifactId>build-helper-maven-plugin</artifactId>
280 <version>${build-helper.version}</version>
281 <executions>
282 <execution>
283 <id>fix-classpath-separator</id>
284 <phase>prepare-package</phase>
285 <goals>
286 <goal>regex-properties</goal>
287 </goals>
288 <configuration>
289 <regexPropertySettings>
290 <regexPropertySetting>
291 <name>classpath.external</name>
292 <value>${classpath.external}</value>
293 <regex>${classpath.separator}</regex>
294 <replacement xml:space="preserve"> </replacement>
295 </regexPropertySetting>
296 </regexPropertySettings>
297 </configuration>
298 </execution>
299 </executions>
300 </plugin>
301 <plugin>
302 <groupId>io.fabric8</groupId>
303 <artifactId>docker-maven-plugin</artifactId>
304 <version>${docker-maven.version}</version>
305 <configuration>
306 <images>
307 <image>
dfarrellyb206a092019-07-30 13:22:30 +0000308 <name>onap/${project.groupId}.${project.artifactId}</name>
dfarrelly924a8052019-07-24 16:17:13 +0000309 <registry>${onap.nexus.dockerregistry.daily}</registry>
310 <build>
311 <contextDir>${project.basedir}</contextDir>
312 <dockerFile>${project.build.outputDirectory}/Dockerfile</dockerFile>
313 <args>
314 <JAR>${project.build.finalName}.jar</JAR>
315 </args>
316 <cleanup>none</cleanup>
317 <tags>
318 <tag>${project.version}</tag>
319 <tag>${project.version}-${maven.build.timestamp}Z</tag>
320 </tags>
321 </build>
322 </image>
323 </images>
324 </configuration>
325 </plugin>
326 <plugin>
327 <groupId>org.apache.maven.plugins</groupId>
328 <artifactId>maven-jar-plugin</artifactId>
329 <version>${maven-jar.version}</version>
330 <configuration>
331 <archive>
332 <manifest>
333 <mainClass>${pmmapper.main.class}</mainClass>
334 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
335 <addBuildEnvironmentEntries>true</addBuildEnvironmentEntries>
336 <useUniqueVersions>false</useUniqueVersions> <!-- workaround for MJAR-156 -->
337 </manifest>
338 <manifestEntries>
339 <Class-Path>${classpath.external}</Class-Path>
340 <Git-Branch>${git.branch}</Git-Branch>
341 <Git-Build-Host>${git.build.host}</Git-Build-Host>
342 <Git-Build-Time>${git.build.time}</Git-Build-Time>
343 <Git-Build-User-Email>${git.build.user.email}</Git-Build-User-Email>
344 <Git-Build-User-Name>${git.build.user.name}</Git-Build-User-Name>
345 <Git-Build-Version>${git.build.version}</Git-Build-Version>
346 <Git-Closest-Tag-Name>${git.closest.tag.name}</Git-Closest-Tag-Name>
347 <Git-Commit-Id>${git.commit.id}</Git-Commit-Id>
348 <Git-Commit-Message-Short>${git.commit.message.short}</Git-Commit-Message-Short>
349 <Git-Commit-Time>${git.commit.time}</Git-Commit-Time>
350 <Git-Commit-User-Email>${git.commit.user.email}</Git-Commit-User-Email>
351 <Git-Commit-User-Name>${git.commit.user.name}</Git-Commit-User-Name>
352 </manifestEntries>
353 </archive>
354 </configuration>
355 </plugin>
356 <plugin>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000357 <groupId>org.apache.maven.plugins</groupId>
358 <artifactId>maven-surefire-plugin</artifactId>
359 <version>${surefire.version}</version>
emartin4751cb92019-01-29 12:21:51 +0000360 <configuration combine.self="override">
361 <useSystemClassLoader>false</useSystemClassLoader>
362 </configuration>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000363 </plugin>
364 <plugin>
365 <groupId>org.apache.maven.plugins</groupId>
366 <artifactId>maven-failsafe-plugin</artifactId>
367 <version>${surefire.version}</version>
368 </plugin>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000369 <plugin>
370 <groupId>org.apache.maven.plugins</groupId>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000371 <artifactId>maven-compiler-plugin</artifactId>
372 <configuration>
JoeOLearybecd8ee2019-01-28 13:44:27 +0000373 <source>${maven.compiler.source}</source>
374 <target>${maven.compiler.target}</target>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000375 </configuration>
376 </plugin>
377 <plugin>
378 <groupId>org.jacoco</groupId>
379 <artifactId>jacoco-maven-plugin</artifactId>
380 <version>${jacoco.version}</version>
381 <executions>
382 <execution>
383 <id>jacoco-instrument</id>
384 <goals>
385 <goal>instrument</goal>
386 </goals>
387 </execution>
388 <execution>
389 <id>jacoco-restore-instrumented-classes</id>
390 <goals>
391 <goal>restore-instrumented-classes</goal>
392 </goals>
393 </execution>
394 <execution>
395 <goals>
396 <goal>prepare-agent</goal>
397 </goals>
JoeOLearye5013912019-03-01 14:09:52 +0000398 <configuration>
399 <excludes>
400 <exclude>*</exclude>
401 </excludes>
402 </configuration>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000403 </execution>
404 <execution>
405 <id>report</id>
406 <phase>prepare-package</phase>
407 <goals>
408 <goal>report</goal>
409 </goals>
410 </execution>
411 </executions>
JoeOLeary8338d2e2019-01-22 16:09:34 +0000412 </plugin>
413 </plugins>
414 </build>
415
JoeOLeary1f2e1352020-06-24 08:38:24 +0100416</project>