blob: 17a86b46081c6bde97071eec66c7699698791899 [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>
46 <module>hv-collector-domain</module>
47 <module>hv-collector-main</module>
48 <module>hv-collector-utils</module>
49 </modules>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020050
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020051 <properties>
52 <kotlin.version>1.2.41</kotlin.version>
53 <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
54 <build-helper-maven-plugin.version>1.7</build-helper-maven-plugin.version>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020055
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020056 <!-- Protocol buffers -->
57 <protobuf.version>3.5.1</protobuf.version>
58 <protoc-jar-maven-plugin.version>3.5.1.1</protoc-jar-maven-plugin.version>
59 <protobuf-generated-files.directory>${project.build.directory}/generated-sources/proto/main/java/
60 </protobuf-generated-files.directory>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020061
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020062 <!-- Testing and code analysis -->
63 <junit-platform.version>1.2.0-RC1</junit-platform.version>
64 <junit-jupiter.version>5.2.0-RC1</junit-jupiter.version>
65 <spek.version>1.1.5</spek.version>
66 <maven-surefire-plugin.version>2.21.0</maven-surefire-plugin.version>
67 <failIfMissingUnitTests>true</failIfMissingUnitTests>
68 <failIfMissingComponentTests>false</failIfMissingComponentTests>
69 <skipAnalysis>true</skipAnalysis>
fkrzywka4b8cfb32018-06-01 12:45:22 +020070
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020071 <!-- Docker -->
72 <skipDocker>true</skipDocker>
73 <docker-image.name>ves-hv-collector/${project.artifactId}</docker-image.name>
74 <docker-image.namespace>onap</docker-image.namespace>
75 </properties>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +020076
77
Piotr Jaszczyka4becf22018-05-29 13:35:11 +020078 <build>
79 <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
80 <testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
81 <resources>
82 <resource>
83 <directory>${project.basedir}/src/main/resources</directory>
84 </resource>
85 </resources>
86 <pluginManagement>
87 <plugins>
88 <plugin>
89 <groupId>org.apache.maven.plugins</groupId>
90 <artifactId>maven-resources-plugin</artifactId>
91 <version>3.1.0</version>
92 <configuration>
93 <encoding>UTF-8</encoding>
94 </configuration>
95 </plugin>
96 <plugin>
Piotr Jaszczyk0aa02842018-06-06 13:18:05 +020097 <groupId>org.apache.maven.plugins</groupId>
98 <artifactId>maven-deploy-plugin</artifactId>
99 <configuration>
100 <skip>true</skip>
101 </configuration>
102 </plugin>
103 <plugin>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200104 <artifactId>kotlin-maven-plugin</artifactId>
105 <groupId>org.jetbrains.kotlin</groupId>
106 <version>${kotlin.version}</version>
107 <configuration>
108 <jvmTarget>1.8</jvmTarget>
109 </configuration>
110 <executions>
111 <execution>
112 <id>compile</id>
113 <goals>
114 <goal>compile</goal>
115 </goals>
116 <configuration>
117 <sourceDirs>
118 <source>${project.build.sourceDirectory}</source>
119 <source>${project.build.directory}/generated-sources/annotations</source>
120 </sourceDirs>
121 </configuration>
122 </execution>
123 <execution>
124 <id>test-compile</id>
125 <goals>
126 <goal>test-compile</goal>
127 </goals>
128 <configuration>
129 <sourceDirs>
130 <source>${project.build.testSourceDirectory}</source>
131 </sourceDirs>
132 </configuration>
133 </execution>
134 </executions>
135 </plugin>
136 <plugin>
137 <groupId>com.github.os72</groupId>
138 <artifactId>protoc-jar-maven-plugin</artifactId>
139 <version>${protoc-jar-maven-plugin.version}</version>
140 </plugin>
141 <plugin>
142 <groupId>org.codehaus.mojo</groupId>
143 <artifactId>build-helper-maven-plugin</artifactId>
144 <version>${build-helper-maven-plugin.version}</version>
145 <executions>
146 <execution>
147 <id>add-source</id>
148 <phase>generate-sources</phase>
149 <goals>
150 <goal>add-source</goal>
151 </goals>
152 <configuration>
153 <sources>
154 <source>${protobuf-generated-files.directory}</source>
155 </sources>
156 </configuration>
157 </execution>
158 </executions>
159 </plugin>
160 <plugin>
161 <groupId>org.apache.maven.plugins</groupId>
162 <artifactId>maven-compiler-plugin</artifactId>
163 <version>${maven-compiler-plugin.version}</version>
164 <configuration>
165 <source>8</source>
166 <target>8</target>
167 <encoding>UTF-8</encoding>
168 <showWarnings>true</showWarnings>
169 <showDeprecation>true</showDeprecation>
170 <failOnWarning>false</failOnWarning>
171 </configuration>
172 <dependencies>
173 <dependency>
174 <groupId>org.ow2.asm</groupId>
175 <artifactId>asm</artifactId>
176 <version>6.1.1</version> <!-- Use newer version of ASM -->
177 </dependency>
178 </dependencies>
179 </plugin>
180 <!--
181 Due to a memory leak in Surefire 2.20 and issues running on Java 9, the junit-platform-surefire-provider
182 currently only works with Surefire 2.19.1.
183 For updates see https://junit.org/junit5/docs/current/user-guide/#running-tests-build-maven
184 -->
185 <plugin>
186 <artifactId>maven-surefire-plugin</artifactId>
187 <groupId>org.apache.maven.plugins</groupId>
188 <version>${maven-surefire-plugin.version}</version>
189 <executions>
190 <execution>
191 <id>default-test</id>
192 <goals>
193 <goal>test</goal>
194 </goals>
195 <configuration>
196 <failIfNoTests>${failIfMissingUnitTests}</failIfNoTests>
197 <forkCount>1</forkCount>
198 <includes>
199 <include>**/*Test.*</include>
200 </includes>
201 <!--<argLine>&#45;&#45;add-modules org.junit.jupiter.api,reactor.test,assertj.core</argLine>-->
202 </configuration>
203 </execution>
204 <execution>
205 <id>component-tests</id>
206 <phase>verify</phase>
207 <goals>
208 <goal>test</goal>
209 </goals>
210 <configuration>
211 <failIfNoTests>${failIfMissingComponentTests}</failIfNoTests>
212 <forkCount>1</forkCount>
213 <includes>
214 <include>**/*Specification.*</include>
215 </includes>
216 </configuration>
217 </execution>
218 </executions>
219 <dependencies>
220 <dependency>
221 <groupId>org.apache.commons</groupId>
222 <artifactId>commons-lang3</artifactId>
223 <version>3.7</version>
224 </dependency>
225 <dependency>
226 <groupId>org.junit.platform</groupId>
227 <artifactId>junit-platform-surefire-provider</artifactId>
228 <version>${junit-platform.version}</version>
229 <scope>runtime</scope>
230 </dependency>
231 <dependency>
232 <groupId>org.jetbrains.spek</groupId>
233 <artifactId>spek-junit-platform-engine</artifactId>
234 <version>${spek.version}</version>
235 <scope>runtime</scope>
236 </dependency>
237 </dependencies>
238 </plugin>
239 <plugin>
240 <groupId>org.apache.maven.plugins</groupId>
241 <artifactId>maven-dependency-plugin</artifactId>
242 <version>3.1.1</version>
243 </plugin>
244 </plugins>
245 </pluginManagement>
246 <extensions>
247 <extension>
248 <groupId>kr.motd.maven</groupId>
249 <artifactId>os-maven-plugin</artifactId>
250 <version>1.6.0</version>
251 </extension>
252 </extensions>
253 </build>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200254
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200255 <profiles>
256 <profile>
257 <id>analysis</id>
258 <activation>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200259 <activeByDefault>true</activeByDefault>
260 </activation>
261 <build>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200262 <plugins>
263 <plugin>
264 <groupId>org.jacoco</groupId>
265 <artifactId>jacoco-maven-plugin</artifactId>
266 <version>0.8.1</version>
267 <executions>
268 <execution>
269 <id>default-prepare-agent</id>
270 <goals>
271 <goal>prepare-agent</goal>
272 </goals>
273 </execution>
274 <execution>
275 <id>default-prepare-agent-integration</id>
276 <goals>
277 <goal>prepare-agent-integration</goal>
278 </goals>
279 </execution>
280 </executions>
281 </plugin>
282
283 <plugin>
284 <groupId>org.apache.maven.plugins</groupId>
285 <artifactId>maven-antrun-plugin</artifactId>
286 <version>1.8</version>
287 <executions>
288 <execution>
289 <!-- This can be run separately with mvn antrun:run@detekt -->
290 <id>detekt</id>
291 <phase>verify</phase>
292 <configuration>
293 <target name="detekt" unless="${skipAnalysis}">
294 <java taskname="detekt" dir="${basedir}"
295 fork="true"
296 failonerror="true"
297 classname="io.gitlab.arturbosch.detekt.cli.Main"
298 classpathref="maven.plugin.classpath">
299 <arg value="--input"/>
300 <arg value="${basedir}/src/main/kotlin"/>
301 <arg value="--config-resource"/>
302 <arg value="onap-detekt-config.yml"/>
303 <arg value="--filters"/>
304 <arg value=".*/target/.*,.*/resources/.*"/>
305 <arg value="--output"/>
306 <arg value="${basedir}/target/reports"/>
307 <arg value="--output-name"/>
308 <arg value="detekt-report"/>
309 <arg value="--baseline"/>
310 <arg value="${basedir}/target/reports/baseline.xml"/>
311 </java>
312 </target>
313 </configuration>
314 <goals>
315 <goal>run</goal>
316 </goals>
317 </execution>
318 </executions>
319 <dependencies>
320 <dependency>
321 <groupId>io.gitlab.arturbosch.detekt</groupId>
322 <artifactId>detekt-cli</artifactId>
323 <version>1.0.0.RC7</version>
324 </dependency>
325 <dependency>
326 <groupId>${project.groupId}</groupId>
327 <artifactId>hv-collector-analysis</artifactId>
328 <version>${project.version}</version>
329 </dependency>
330 </dependencies>
331 </plugin>
332 </plugins>
333 </build>
334 </profile>
335 <profile>
336 <id>docker</id>
337 <activation>
338 <property>
339 <name>!skipDocker</name>
340 </property>
341 </activation>
342 <properties>
343 <os.detected.name>linux</os.detected.name>
344 <os.detected.arch>x86_64</os.detected.arch>
345 <os.detected.classifier>${os.detected.name}-${os.detected.arch}</os.detected.classifier>
346 </properties>
347 <build>
348 <pluginManagement>
349 <plugins>
350 <plugin>
351 <groupId>io.fabric8</groupId>
352 <artifactId>docker-maven-plugin</artifactId>
353 <version>0.26.0</version>
354 <executions>
355 <execution>
356 <id>build-docker-image</id>
357 <phase>pre-integration-test</phase>
358 <goals>
359 <goal>build</goal>
360 </goals>
361 </execution>
Piotr Jaszczyk0aa02842018-06-06 13:18:05 +0200362 <execution>
363 <id>push-docker-image</id>
364 <phase>deploy</phase>
365 <goals>
366 <goal>push</goal>
367 </goals>
368 </execution>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200369 </executions>
370 <configuration>
371 <verbose>true</verbose>
372 <imagePullPolicy>IfNotPresent</imagePullPolicy>
373 <images>
374 <image>
375 <alias>${project.artifactId}</alias>
376 <name>${docker-image.namespace}/${docker-image.name}</name>
377 <build>
378 <dockerFileDir>${project.basedir}</dockerFileDir>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200379 </build>
380 </image>
381 </images>
382 </configuration>
383 </plugin>
384
385 </plugins>
386 </pluginManagement>
387 </build>
388 </profile>
389 </profiles>
390
391 <reporting>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200392 <plugins>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200393 <plugin>
394 <groupId>org.jacoco</groupId>
395 <artifactId>jacoco-maven-plugin</artifactId>
396 <reportSets>
397 <reportSet>
398 <reports>
399 <report>report</report>
400 </reports>
401 </reportSet>
402 </reportSets>
403 </plugin>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200404 </plugins>
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200405 </reporting>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200406
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200407 <pluginRepositories>
408 <pluginRepository>
409 <id>arturbosch-code-analysis</id>
410 <name>arturbosch-code-analysis (for detekt)</name>
411 <url>https://dl.bintray.com/arturbosch/code-analysis/</url>
412 <layout>default</layout>
413 <releases>
414 <enabled>true</enabled>
415 <updatePolicy>never</updatePolicy>
416 </releases>
417 <snapshots>
418 <enabled>false</enabled>
419 <updatePolicy>never</updatePolicy>
420 </snapshots>
421 </pluginRepository>
422 </pluginRepositories>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200423
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200424 <dependencyManagement>
425 <dependencies>
426 <dependency>
427 <groupId>com.google.guava</groupId>
428 <artifactId>guava</artifactId>
429 <version>25.0-jre</version>
430 <exclusions>
431 <exclusion>
432 <groupId>com.google.code.findbugs</groupId>
433 <artifactId>jsr305</artifactId>
434 </exclusion>
435 </exclusions>
436 </dependency>
437 <dependency>
438 <groupId>org.jetbrains.kotlin</groupId>
439 <artifactId>kotlin-stdlib-jdk8</artifactId>
440 <version>${kotlin.version}</version>
441 </dependency>
442 <dependency>
443 <groupId>org.jetbrains.kotlin</groupId>
444 <artifactId>kotlin-reflect</artifactId>
445 <version>${kotlin.version}</version>
446 </dependency>
447 <dependency>
448 <groupId>ch.qos.logback</groupId>
449 <artifactId>logback-classic</artifactId>
450 <version>1.3.0-alpha4</version>
451 <scope>runtime</scope>
452 </dependency>
453 <dependency>
454 <groupId>org.slf4j</groupId>
455 <artifactId>slf4j-api</artifactId>
456 <version>1.8.0-beta1</version>
457 </dependency>
458 <dependency>
459 <groupId>io.projectreactor</groupId>
460 <artifactId>reactor-bom</artifactId>
461 <version>Bismuth-SR8</version>
462 <type>pom</type>
463 <scope>import</scope>
464 </dependency>
465 <dependency>
466 <groupId>io.netty</groupId>
467 <artifactId>netty-tcnative-boringssl-static</artifactId>
468 <version>2.0.8.Final</version>
469 <classifier>${os.detected.classifier}</classifier>
470 </dependency>
471 <dependency>
472 <groupId>com.google.protobuf</groupId>
473 <artifactId>protobuf-java</artifactId>
474 <version>${protobuf.version}</version>
475 </dependency>
476 <dependency>
477 <groupId>commons-cli</groupId>
478 <artifactId>commons-cli</artifactId>
479 <version>1.4</version>
480 </dependency>
481 <dependency>
482 <groupId>javax.json</groupId>
483 <artifactId>javax.json-api</artifactId>
484 <version>1.1.2</version>
485 </dependency>
486 <dependency>
487 <groupId>org.glassfish</groupId>
488 <artifactId>javax.json</artifactId>
489 <version>1.1.2</version>
490 </dependency>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200491
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200492 <!-- Test dependencies -->
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200493
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200494 <dependency>
495 <groupId>org.jetbrains.spek</groupId>
496 <artifactId>spek-api</artifactId>
497 <version>${spek.version}</version>
498 <scope>test</scope>
499 </dependency>
500 <dependency>
501 <groupId>org.jetbrains.spek</groupId>
502 <artifactId>spek-junit-platform-engine</artifactId>
503 <version>${spek.version}</version>
504 <scope>test</scope>
505 </dependency>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200506
Piotr Jaszczyka4becf22018-05-29 13:35:11 +0200507 <dependency>
508 <groupId>org.assertj</groupId>
509 <artifactId>assertj-core</artifactId>
510 <version>3.9.1</version>
511 <scope>test</scope>
512 </dependency>
513 <dependency>
514 <groupId>com.nhaarman</groupId>
515 <artifactId>mockito-kotlin</artifactId>
516 <version>1.5.0</version>
517 <scope>test</scope>
518 <exclusions>
519 <exclusion>
520 <groupId>org.mockito</groupId>
521 <artifactId>mockito-core</artifactId>
522 </exclusion>
523 </exclusions>
524 </dependency>
525 <dependency>
526 <groupId>org.mockito</groupId>
527 <artifactId>mockito-core</artifactId>
528 <version>2.18.3</version>
529 <scope>test</scope>
530 </dependency>
531 <dependency>
532 <groupId>org.jetbrains.kotlin</groupId>
533 <artifactId>kotlin-test</artifactId>
534 <version>${kotlin.version}</version>
535 <scope>test</scope>
536 </dependency>
537 <dependency>
538 <groupId>io.projectreactor</groupId>
539 <artifactId>reactor-test</artifactId>
540 <version>3.1.7.RELEASE</version>
541 <scope>test</scope>
542 </dependency>
543 </dependencies>
544 </dependencyManagement>
Piotr Jaszczyke98fdcc2018-04-26 09:17:09 +0200545</project>
546
547