blob: d2c588656f261cd184612e20cd555ab38cd7e4be [file] [log] [blame]
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +02001<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 ~ ============LICENSE_START=======================================================
4 ~ dcaegen2-collectors-veshv
5 ~ ================================================================================
fkrzywkae74c9e12018-06-06 10:43:53 +02006 ~ Copyright (C) 2018 NOKIA
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +02007 ~ ================================================================================
8 ~ Licensed under the Apache License, Version 2.0 (the "License");
9 ~ you may not use this file except in compliance with the License.
10 ~ You may obtain a copy of the License at
11 ~
12 ~ http://www.apache.org/licenses/LICENSE-2.0
13 ~
14 ~ Unless required by applicable law or agreed to in writing, software
15 ~ distributed under the License is distributed on an "AS IS" BASIS,
16 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 ~ See the License for the specific language governing permissions and
18 ~ limitations under the License.
19 ~ ============LICENSE_END=========================================================
20 -->
21<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020022 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020023
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020024 <modelVersion>4.0.0</modelVersion>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020025
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020026 <licenses>
27 <license>
28 <name>The Apache Software License, Version 2.0</name>
29 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
30 </license>
31 </licenses>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020032
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020033 <groupId>org.onap.dcaegen2.collectors.veshv</groupId>
34 <artifactId>ves-hv-collector</artifactId>
35 <version>1.0.0-SNAPSHOT</version>
36 <name>dcaegen2-collectors-veshv</name>
37 <description>VES HighVolume Collector</description>
38 <packaging>pom</packaging>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020039
fkrzywka23438162018-06-05 12:55:06 +020040 <modules>
41 <module>hv-collector-analysis</module>
42 <module>hv-collector-client-simulator</module>
43 <module>hv-collector-core</module>
44 <module>hv-collector-coverage</module>
45 <module>hv-collector-ct</module>
kjaniak9bdb7d92018-06-11 12:59:22 +020046 <module>hv-collector-dcae-app-simulator</module>
fkrzywka23438162018-06-05 12:55:06 +020047 <module>hv-collector-domain</module>
48 <module>hv-collector-main</module>
49 <module>hv-collector-utils</module>
50 </modules>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020051
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020052 <properties>
53 <kotlin.version>1.2.41</kotlin.version>
54 <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
55 <build-helper-maven-plugin.version>1.7</build-helper-maven-plugin.version>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020056
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020057 <!-- Protocol buffers -->
58 <protobuf.version>3.5.1</protobuf.version>
59 <protoc-jar-maven-plugin.version>3.5.1.1</protoc-jar-maven-plugin.version>
60 <protobuf-generated-files.directory>${project.build.directory}/generated-sources/proto/main/java/
61 </protobuf-generated-files.directory>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020062
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020063 <!-- Testing and code analysis -->
64 <junit-platform.version>1.2.0-RC1</junit-platform.version>
65 <junit-jupiter.version>5.2.0-RC1</junit-jupiter.version>
66 <spek.version>1.1.5</spek.version>
67 <maven-surefire-plugin.version>2.21.0</maven-surefire-plugin.version>
68 <failIfMissingUnitTests>true</failIfMissingUnitTests>
69 <failIfMissingComponentTests>false</failIfMissingComponentTests>
70 <skipAnalysis>true</skipAnalysis>
fkrzywka4b8cfb32018-06-01 12:45:22 +020071
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020072 <!-- Docker -->
73 <skipDocker>true</skipDocker>
74 <docker-image.name>ves-hv-collector/${project.artifactId}</docker-image.name>
75 <docker-image.namespace>onap</docker-image.namespace>
76 </properties>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020077
78
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020079 <build>
80 <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
81 <testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
82 <resources>
83 <resource>
84 <directory>${project.basedir}/src/main/resources</directory>
85 </resource>
86 </resources>
87 <pluginManagement>
88 <plugins>
89 <plugin>
90 <groupId>org.apache.maven.plugins</groupId>
91 <artifactId>maven-resources-plugin</artifactId>
92 <version>3.1.0</version>
93 <configuration>
94 <encoding>UTF-8</encoding>
95 </configuration>
96 </plugin>
97 <plugin>
Piotr Jaszczyk0aa02842018-06-06 13:18:05 +020098 <groupId>org.apache.maven.plugins</groupId>
99 <artifactId>maven-deploy-plugin</artifactId>
100 <configuration>
101 <skip>true</skip>
102 </configuration>
103 </plugin>
104 <plugin>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200105 <artifactId>kotlin-maven-plugin</artifactId>
106 <groupId>org.jetbrains.kotlin</groupId>
107 <version>${kotlin.version}</version>
108 <configuration>
109 <jvmTarget>1.8</jvmTarget>
110 </configuration>
111 <executions>
112 <execution>
113 <id>compile</id>
114 <goals>
115 <goal>compile</goal>
116 </goals>
117 <configuration>
118 <sourceDirs>
119 <source>${project.build.sourceDirectory}</source>
120 <source>${project.build.directory}/generated-sources/annotations</source>
121 </sourceDirs>
122 </configuration>
123 </execution>
124 <execution>
125 <id>test-compile</id>
126 <goals>
127 <goal>test-compile</goal>
128 </goals>
129 <configuration>
130 <sourceDirs>
131 <source>${project.build.testSourceDirectory}</source>
132 </sourceDirs>
133 </configuration>
134 </execution>
135 </executions>
136 </plugin>
137 <plugin>
138 <groupId>com.github.os72</groupId>
139 <artifactId>protoc-jar-maven-plugin</artifactId>
140 <version>${protoc-jar-maven-plugin.version}</version>
141 </plugin>
142 <plugin>
143 <groupId>org.codehaus.mojo</groupId>
144 <artifactId>build-helper-maven-plugin</artifactId>
145 <version>${build-helper-maven-plugin.version}</version>
146 <executions>
147 <execution>
148 <id>add-source</id>
149 <phase>generate-sources</phase>
150 <goals>
151 <goal>add-source</goal>
152 </goals>
153 <configuration>
154 <sources>
155 <source>${protobuf-generated-files.directory}</source>
156 </sources>
157 </configuration>
158 </execution>
159 </executions>
160 </plugin>
161 <plugin>
162 <groupId>org.apache.maven.plugins</groupId>
163 <artifactId>maven-compiler-plugin</artifactId>
164 <version>${maven-compiler-plugin.version}</version>
165 <configuration>
166 <source>8</source>
167 <target>8</target>
168 <encoding>UTF-8</encoding>
169 <showWarnings>true</showWarnings>
170 <showDeprecation>true</showDeprecation>
171 <failOnWarning>false</failOnWarning>
172 </configuration>
173 <dependencies>
174 <dependency>
175 <groupId>org.ow2.asm</groupId>
176 <artifactId>asm</artifactId>
177 <version>6.1.1</version> <!-- Use newer version of ASM -->
178 </dependency>
179 </dependencies>
180 </plugin>
181 <!--
182 Due to a memory leak in Surefire 2.20 and issues running on Java 9, the junit-platform-surefire-provider
183 currently only works with Surefire 2.19.1.
184 For updates see https://junit.org/junit5/docs/current/user-guide/#running-tests-build-maven
185 -->
186 <plugin>
187 <artifactId>maven-surefire-plugin</artifactId>
188 <groupId>org.apache.maven.plugins</groupId>
189 <version>${maven-surefire-plugin.version}</version>
190 <executions>
191 <execution>
192 <id>default-test</id>
193 <goals>
194 <goal>test</goal>
195 </goals>
196 <configuration>
197 <failIfNoTests>${failIfMissingUnitTests}</failIfNoTests>
198 <forkCount>1</forkCount>
199 <includes>
200 <include>**/*Test.*</include>
201 </includes>
202 <!--<argLine>&#45;&#45;add-modules org.junit.jupiter.api,reactor.test,assertj.core</argLine>-->
203 </configuration>
204 </execution>
205 <execution>
206 <id>component-tests</id>
207 <phase>verify</phase>
208 <goals>
209 <goal>test</goal>
210 </goals>
211 <configuration>
212 <failIfNoTests>${failIfMissingComponentTests}</failIfNoTests>
213 <forkCount>1</forkCount>
214 <includes>
215 <include>**/*Specification.*</include>
216 </includes>
217 </configuration>
218 </execution>
219 </executions>
220 <dependencies>
221 <dependency>
222 <groupId>org.apache.commons</groupId>
223 <artifactId>commons-lang3</artifactId>
224 <version>3.7</version>
225 </dependency>
226 <dependency>
227 <groupId>org.junit.platform</groupId>
228 <artifactId>junit-platform-surefire-provider</artifactId>
229 <version>${junit-platform.version}</version>
230 <scope>runtime</scope>
231 </dependency>
232 <dependency>
233 <groupId>org.jetbrains.spek</groupId>
234 <artifactId>spek-junit-platform-engine</artifactId>
235 <version>${spek.version}</version>
236 <scope>runtime</scope>
237 </dependency>
238 </dependencies>
239 </plugin>
240 <plugin>
241 <groupId>org.apache.maven.plugins</groupId>
242 <artifactId>maven-dependency-plugin</artifactId>
243 <version>3.1.1</version>
244 </plugin>
245 </plugins>
246 </pluginManagement>
247 <extensions>
248 <extension>
249 <groupId>kr.motd.maven</groupId>
250 <artifactId>os-maven-plugin</artifactId>
251 <version>1.6.0</version>
252 </extension>
253 </extensions>
254 </build>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200255
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200256 <profiles>
257 <profile>
258 <id>analysis</id>
259 <activation>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200260 <activeByDefault>true</activeByDefault>
261 </activation>
262 <build>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200263 <plugins>
264 <plugin>
265 <groupId>org.jacoco</groupId>
266 <artifactId>jacoco-maven-plugin</artifactId>
267 <version>0.8.1</version>
268 <executions>
269 <execution>
270 <id>default-prepare-agent</id>
271 <goals>
272 <goal>prepare-agent</goal>
273 </goals>
274 </execution>
275 <execution>
276 <id>default-prepare-agent-integration</id>
277 <goals>
278 <goal>prepare-agent-integration</goal>
279 </goals>
280 </execution>
281 </executions>
282 </plugin>
283
284 <plugin>
285 <groupId>org.apache.maven.plugins</groupId>
286 <artifactId>maven-antrun-plugin</artifactId>
287 <version>1.8</version>
288 <executions>
289 <execution>
290 <!-- This can be run separately with mvn antrun:run@detekt -->
291 <id>detekt</id>
292 <phase>verify</phase>
293 <configuration>
294 <target name="detekt" unless="${skipAnalysis}">
295 <java taskname="detekt" dir="${basedir}"
296 fork="true"
297 failonerror="true"
298 classname="io.gitlab.arturbosch.detekt.cli.Main"
299 classpathref="maven.plugin.classpath">
300 <arg value="--input"/>
301 <arg value="${basedir}/src/main/kotlin"/>
302 <arg value="--config-resource"/>
303 <arg value="onap-detekt-config.yml"/>
304 <arg value="--filters"/>
305 <arg value=".*/target/.*,.*/resources/.*"/>
306 <arg value="--output"/>
307 <arg value="${basedir}/target/reports"/>
308 <arg value="--output-name"/>
309 <arg value="detekt-report"/>
310 <arg value="--baseline"/>
311 <arg value="${basedir}/target/reports/baseline.xml"/>
312 </java>
313 </target>
314 </configuration>
315 <goals>
316 <goal>run</goal>
317 </goals>
318 </execution>
319 </executions>
320 <dependencies>
321 <dependency>
322 <groupId>io.gitlab.arturbosch.detekt</groupId>
323 <artifactId>detekt-cli</artifactId>
324 <version>1.0.0.RC7</version>
325 </dependency>
326 <dependency>
327 <groupId>${project.groupId}</groupId>
328 <artifactId>hv-collector-analysis</artifactId>
329 <version>${project.version}</version>
330 </dependency>
331 </dependencies>
332 </plugin>
333 </plugins>
334 </build>
335 </profile>
336 <profile>
337 <id>docker</id>
338 <activation>
339 <property>
340 <name>!skipDocker</name>
341 </property>
342 </activation>
343 <properties>
344 <os.detected.name>linux</os.detected.name>
345 <os.detected.arch>x86_64</os.detected.arch>
346 <os.detected.classifier>${os.detected.name}-${os.detected.arch}</os.detected.classifier>
347 </properties>
348 <build>
349 <pluginManagement>
350 <plugins>
351 <plugin>
352 <groupId>io.fabric8</groupId>
353 <artifactId>docker-maven-plugin</artifactId>
354 <version>0.26.0</version>
355 <executions>
356 <execution>
357 <id>build-docker-image</id>
358 <phase>pre-integration-test</phase>
359 <goals>
360 <goal>build</goal>
361 </goals>
362 </execution>
Piotr Jaszczyk0aa02842018-06-06 13:18:05 +0200363 <execution>
364 <id>push-docker-image</id>
365 <phase>deploy</phase>
366 <goals>
367 <goal>push</goal>
368 </goals>
369 </execution>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200370 </executions>
371 <configuration>
372 <verbose>true</verbose>
373 <imagePullPolicy>IfNotPresent</imagePullPolicy>
374 <images>
375 <image>
376 <alias>${project.artifactId}</alias>
377 <name>${docker-image.namespace}/${docker-image.name}</name>
378 <build>
379 <dockerFileDir>${project.basedir}</dockerFileDir>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200380 </build>
381 </image>
382 </images>
383 </configuration>
384 </plugin>
385
386 </plugins>
387 </pluginManagement>
388 </build>
389 </profile>
390 </profiles>
391
392 <reporting>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200393 <plugins>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200394 <plugin>
395 <groupId>org.jacoco</groupId>
396 <artifactId>jacoco-maven-plugin</artifactId>
397 <reportSets>
398 <reportSet>
399 <reports>
400 <report>report</report>
401 </reports>
402 </reportSet>
403 </reportSets>
404 </plugin>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200405 </plugins>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200406 </reporting>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200407
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200408 <pluginRepositories>
409 <pluginRepository>
410 <id>arturbosch-code-analysis</id>
411 <name>arturbosch-code-analysis (for detekt)</name>
412 <url>https://dl.bintray.com/arturbosch/code-analysis/</url>
413 <layout>default</layout>
414 <releases>
415 <enabled>true</enabled>
416 <updatePolicy>never</updatePolicy>
417 </releases>
418 <snapshots>
419 <enabled>false</enabled>
420 <updatePolicy>never</updatePolicy>
421 </snapshots>
422 </pluginRepository>
423 </pluginRepositories>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200424
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200425 <dependencyManagement>
426 <dependencies>
427 <dependency>
428 <groupId>com.google.guava</groupId>
429 <artifactId>guava</artifactId>
430 <version>25.0-jre</version>
431 <exclusions>
432 <exclusion>
433 <groupId>com.google.code.findbugs</groupId>
434 <artifactId>jsr305</artifactId>
435 </exclusion>
436 </exclusions>
437 </dependency>
438 <dependency>
439 <groupId>org.jetbrains.kotlin</groupId>
440 <artifactId>kotlin-stdlib-jdk8</artifactId>
441 <version>${kotlin.version}</version>
442 </dependency>
443 <dependency>
444 <groupId>org.jetbrains.kotlin</groupId>
445 <artifactId>kotlin-reflect</artifactId>
446 <version>${kotlin.version}</version>
447 </dependency>
448 <dependency>
449 <groupId>ch.qos.logback</groupId>
450 <artifactId>logback-classic</artifactId>
451 <version>1.3.0-alpha4</version>
452 <scope>runtime</scope>
453 </dependency>
454 <dependency>
455 <groupId>org.slf4j</groupId>
456 <artifactId>slf4j-api</artifactId>
457 <version>1.8.0-beta1</version>
458 </dependency>
459 <dependency>
460 <groupId>io.projectreactor</groupId>
461 <artifactId>reactor-bom</artifactId>
462 <version>Bismuth-SR8</version>
463 <type>pom</type>
464 <scope>import</scope>
465 </dependency>
466 <dependency>
467 <groupId>io.netty</groupId>
468 <artifactId>netty-tcnative-boringssl-static</artifactId>
469 <version>2.0.8.Final</version>
470 <classifier>${os.detected.classifier}</classifier>
471 </dependency>
472 <dependency>
473 <groupId>com.google.protobuf</groupId>
474 <artifactId>protobuf-java</artifactId>
475 <version>${protobuf.version}</version>
476 </dependency>
477 <dependency>
478 <groupId>commons-cli</groupId>
479 <artifactId>commons-cli</artifactId>
480 <version>1.4</version>
481 </dependency>
482 <dependency>
483 <groupId>javax.json</groupId>
484 <artifactId>javax.json-api</artifactId>
485 <version>1.1.2</version>
486 </dependency>
487 <dependency>
488 <groupId>org.glassfish</groupId>
489 <artifactId>javax.json</artifactId>
490 <version>1.1.2</version>
491 </dependency>
Piotr Jaszczyk39ceb732018-06-12 12:16:19 +0200492 <dependency>
493 <groupId>io.ratpack</groupId>
494 <artifactId>ratpack-core</artifactId>
495 <version>1.5.4</version>
496 </dependency>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200497
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200498 <!-- Test dependencies -->
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200499
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200500 <dependency>
501 <groupId>org.jetbrains.spek</groupId>
502 <artifactId>spek-api</artifactId>
503 <version>${spek.version}</version>
504 <scope>test</scope>
505 </dependency>
506 <dependency>
507 <groupId>org.jetbrains.spek</groupId>
508 <artifactId>spek-junit-platform-engine</artifactId>
509 <version>${spek.version}</version>
510 <scope>test</scope>
511 </dependency>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200512
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200513 <dependency>
514 <groupId>org.assertj</groupId>
515 <artifactId>assertj-core</artifactId>
516 <version>3.9.1</version>
517 <scope>test</scope>
518 </dependency>
519 <dependency>
520 <groupId>com.nhaarman</groupId>
521 <artifactId>mockito-kotlin</artifactId>
522 <version>1.5.0</version>
523 <scope>test</scope>
524 <exclusions>
525 <exclusion>
526 <groupId>org.mockito</groupId>
527 <artifactId>mockito-core</artifactId>
528 </exclusion>
529 </exclusions>
530 </dependency>
531 <dependency>
532 <groupId>org.mockito</groupId>
533 <artifactId>mockito-core</artifactId>
534 <version>2.18.3</version>
535 <scope>test</scope>
536 </dependency>
537 <dependency>
538 <groupId>org.jetbrains.kotlin</groupId>
539 <artifactId>kotlin-test</artifactId>
540 <version>${kotlin.version}</version>
541 <scope>test</scope>
542 </dependency>
543 <dependency>
544 <groupId>io.projectreactor</groupId>
545 <artifactId>reactor-test</artifactId>
546 <version>3.1.7.RELEASE</version>
547 <scope>test</scope>
548 </dependency>
549 </dependencies>
550 </dependencyManagement>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200551</project>
552
553