[DCAE] INFO.yaml update
[dcaegen2/collectors/hv-ves.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index ac5e1f2..add64f5 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
   ~ ============LICENSE_START=======================================================
   ~ dcaegen2-collectors-veshv
   ~ ================================================================================
-  ~ Copyright (C) 2018 NOKIA
+  ~ Copyright (C) 2018-2021 NOKIA
   ~ ================================================================================
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -19,7 +19,7 @@
   ~ ============LICENSE_END=========================================================
   -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
     <modelVersion>4.0.0</modelVersion>
 
         </license>
     </licenses>
 
-    <groupId>org.onap.dcaegen2.collectors.veshv</groupId>
+    <parent>
+        <groupId>org.onap.oparent</groupId>
+        <artifactId>oparent</artifactId>
+        <version>3.0.0</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.onap.dcaegen2.collectors.hv-ves</groupId>
     <artifactId>ves-hv-collector</artifactId>
-    <version>1.0.0-SNAPSHOT</version>
+    <version>1.9.1-SNAPSHOT</version>
     <name>dcaegen2-collectors-veshv</name>
     <description>VES HighVolume Collector</description>
     <packaging>pom</packaging>
 
     <modules>
-        <module>hv-collector-analysis</module>
-        <module>hv-collector-core</module>
-        <module>hv-collector-coverage</module>
-        <module>hv-collector-ct</module>
-        <module>hv-collector-dcae-app-simulator</module>
-        <module>hv-collector-domain</module>
-        <module>hv-collector-health-check</module>
-        <module>hv-collector-main</module>
-        <module>hv-collector-test-utils</module>
-        <module>hv-collector-utils</module>
-        <module>hv-collector-ves-message-generator</module>
-        <module>hv-collector-xnf-simulator</module>
+        <module>build</module>
+        <module>sources</module>
     </modules>
 
     <properties>
-        <kotlin.version>1.2.60</kotlin.version>
-        <arrow.version>0.7.2</arrow.version>
-        <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
-        <build-helper-maven-plugin.version>1.7</build-helper-maven-plugin.version>
+        <maven-resources-plugin.version>3.2.0</maven-resources-plugin.version>
+        <asm.version>9.1</asm.version>
+        <commons-lang3.version>3.12.0</commons-lang3.version>
+        <maven-failsafe-plugin.version>2.22.2</maven-failsafe-plugin.version>
+        <maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
+        <exec-maven-plugin.version>3.0.0</exec-maven-plugin.version>
+        <os-maven-plugin.version>1.7.0</os-maven-plugin.version>
+        <maven-dependency-plugin.version>3.1.2</maven-dependency-plugin.version>
+        <docker-maven-plugin.version>0.34.1</docker-maven-plugin.version>
+        <guava.version>30.1.1-jre</guava.version>
+        <logback-classic.version>1.3.0-alpha4</logback-classic.version>
+        <slf4j-api.version>2.0.0-alpha1</slf4j-api.version>
+        <reactor-bom.version>2020.0.5</reactor-bom.version>
+        <kafka-clients.version>2.7.0</kafka-clients.version>
+        <commons-cli.version>1.4</commons-cli.version>
+        <javax.json-api.version>1.1.4</javax.json-api.version>
+        <javax.json.version>1.1.4</javax.json.version>
+        <micrometer-registry-prometheus.version>1.6.5</micrometer-registry-prometheus.version>
+        <assertj-core.version>3.19.0</assertj-core.version>
+        <mockito-kotlin.version>2.2.0</mockito-kotlin.version>
+        <coroutines.version>1.4.2</coroutines.version>
+        <kotlin.version>1.4.10</kotlin.version>
+        <arrow.version>0.9.0</arrow.version>
+        <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
+        <build-helper-maven-plugin.version>3.2.0</build-helper-maven-plugin.version>
+        <jacoco.version>0.8.3</jacoco.version>
+        <detekt.version>1.15.0</detekt.version>
+        <sdk.version>1.8.7</sdk.version>
 
         <!-- Protocol buffers -->
-        <protobuf.version>3.5.1</protobuf.version>
-        <protoc-jar-maven-plugin.version>3.5.1.1</protoc-jar-maven-plugin.version>
-        <protobuf-generated-files.directory>${project.build.directory}/generated-sources/proto/main/java/
-        </protobuf-generated-files.directory>
+        <protobuf.version>4.0.0-rc-2</protobuf.version>
 
         <!-- Testing and code analysis -->
-        <junit-platform.version>1.2.0-RC1</junit-platform.version>
-        <junit-jupiter.version>5.2.0-RC1</junit-jupiter.version>
+        <junit-platform.version>1.2.0</junit-platform.version>
+        <junit-jupiter.version>5.8.0-M1</junit-jupiter.version>
         <spek.version>1.1.5</spek.version>
-        <maven-surefire-plugin.version>2.21.0</maven-surefire-plugin.version>
-        <failIfMissingUnitTests>true</failIfMissingUnitTests>
+        <gson.version>2.8.6</gson.version>
+
+        <failIfMissingUnitTests>false</failIfMissingUnitTests>
         <failIfMissingComponentTests>false</failIfMissingComponentTests>
         <skipAnalysis>true</skipAnalysis>
+        <jacoco.minimum.coverage>60</jacoco.minimum.coverage>
+        <skipEnforcer>true</skipEnforcer>
+        <!--Specify path to load jacoco xml report, as Sonar can't load Kotlin coverage from binary report. -->
+        <sonar.coverage.jacoco.xmlReportPaths>
+            ${project.basedir}/../../build/hv-collector-coverage/target/site/jacoco-aggregate/jacoco.xml
+        </sonar.coverage.jacoco.xmlReportPaths>
 
         <!-- Docker -->
         <skipDocker>false</skipDocker>
-        <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
-        <onap.nexus.dockerregistry.release>nexus3.onap.org:10002</onap.nexus.dockerregistry.release>
+        <skipDockerPush>true</skipDockerPush>
+        <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
         <docker-image.registry>${onap.nexus.dockerregistry.daily}</docker-image.registry>
         <docker-image.namespace>onap</docker-image.namespace>
-        <docker-image.name>ves-hv-collector/${project.artifactId}</docker-image.name>
-        <docker.http_proxy> </docker.http_proxy>
-        <docker.https_proxy> </docker.https_proxy>
+        <docker-image.name>${project.groupId}.${project.artifactId}</docker-image.name>
+        <docker-image.latest>latest</docker-image.latest>
+        <docker.http_proxy/>
     </properties>
 
-
     <build>
         <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
         <testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-resources-plugin</artifactId>
-                    <version>3.1.0</version>
+                    <version>${maven-resources-plugin.version}</version>
                     <configuration>
                         <encoding>UTF-8</encoding>
                     </configuration>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-deploy-plugin</artifactId>
+                </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
                     <configuration>
-                        <skip>true</skip>
+                        <skip>${skipEnforcer}</skip>
                     </configuration>
                 </plugin>
                 <plugin>
                     <groupId>org.jetbrains.kotlin</groupId>
                     <version>${kotlin.version}</version>
                     <configuration>
-                        <jvmTarget>1.8</jvmTarget>
+                        <jvmTarget>11</jvmTarget>
                     </configuration>
                     <executions>
                         <execution>
                         </execution>
                     </executions>
                 </plugin>
-                <plugin>
-                    <groupId>com.github.os72</groupId>
-                    <artifactId>protoc-jar-maven-plugin</artifactId>
-                    <version>${protoc-jar-maven-plugin.version}</version>
-                </plugin>
-                <plugin>
-                    <groupId>org.codehaus.mojo</groupId>
-                    <artifactId>build-helper-maven-plugin</artifactId>
-                    <version>${build-helper-maven-plugin.version}</version>
-                    <executions>
-                        <execution>
-                            <id>add-source</id>
-                            <phase>generate-sources</phase>
-                            <goals>
-                                <goal>add-source</goal>
-                            </goals>
-                            <configuration>
-                                <sources>
-                                    <source>${protobuf-generated-files.directory}</source>
-                                </sources>
-                            </configuration>
-                        </execution>
-                    </executions>
-                </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-compiler-plugin</artifactId>
                     <version>${maven-compiler-plugin.version}</version>
                     <configuration>
-                        <source>8</source>
-                        <target>8</target>
+                        <source>11</source>
+                        <target>11</target>
                         <encoding>UTF-8</encoding>
                         <showWarnings>true</showWarnings>
                         <showDeprecation>true</showDeprecation>
                         <dependency>
                             <groupId>org.ow2.asm</groupId>
                             <artifactId>asm</artifactId>
-                            <version>6.1.1</version> <!-- Use newer version of ASM -->
+                            <version>${asm.version}</version> <!-- Use newer version of ASM -->
                         </dependency>
                     </dependencies>
                 </plugin>
                     <artifactId>maven-surefire-plugin</artifactId>
                     <groupId>org.apache.maven.plugins</groupId>
                     <version>${maven-surefire-plugin.version}</version>
-                    <executions>
-                        <execution>
-                            <id>default-test</id>
-                            <goals>
-                                <goal>test</goal>
-                            </goals>
-                            <configuration>
-                                <failIfNoTests>${failIfMissingUnitTests}</failIfNoTests>
-                                <forkCount>1</forkCount>
-                                <includes>
-                                    <include>**/*Test.*</include>
-                                </includes>
-                                <!--<argLine>&#45;&#45;add-modules org.junit.jupiter.api,reactor.test,assertj.core</argLine>-->
-                            </configuration>
-                        </execution>
-                        <execution>
-                            <id>component-tests</id>
-                            <phase>verify</phase>
-                            <goals>
-                                <goal>test</goal>
-                            </goals>
-                            <configuration>
-                                <failIfNoTests>${failIfMissingComponentTests}</failIfNoTests>
-                                <forkCount>1</forkCount>
-                                <includes>
-                                    <include>**/*Specification.*</include>
-                                </includes>
-                            </configuration>
-                        </execution>
-                    </executions>
+                    <configuration>
+                        <failIfNoTests>${failIfMissingUnitTests}</failIfNoTests>
+                        <forkCount>1</forkCount>
+                        <includes>
+                            <include>**/*Test.*</include>
+                        </includes>
+                    </configuration>
                     <dependencies>
                         <dependency>
                             <groupId>org.apache.commons</groupId>
                             <artifactId>commons-lang3</artifactId>
-                            <version>3.7</version>
+                            <version>${commons-lang3.version}</version>
                         </dependency>
                         <dependency>
                             <groupId>org.junit.platform</groupId>
                         </dependency>
                     </dependencies>
                 </plugin>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-failsafe-plugin</artifactId>
+                    <version>${maven-failsafe-plugin.version}</version>
+                    <configuration>
+                        <failIfNoTests>${failIfMissingComponentTests}</failIfNoTests>
+                        <forkCount>1</forkCount>
+                        <includes>
+                            <include>**/*Specification.*</include>
+                        </includes>
+                    </configuration>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.apache.commons</groupId>
+                            <artifactId>commons-lang3</artifactId>
+                            <version>${commons-lang3.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.junit.platform</groupId>
+                            <artifactId>junit-platform-surefire-provider</artifactId>
+                            <version>${junit-platform.version}</version>
+                            <scope>runtime</scope>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.jetbrains.spek</groupId>
+                            <artifactId>spek-junit-platform-engine</artifactId>
+                            <version>${spek.version}</version>
+                            <scope>runtime</scope>
+                        </dependency>
+                    </dependencies>
+                </plugin>
+                <plugin>
+                    <groupId>org.codehaus.mojo</groupId>
+                    <artifactId>exec-maven-plugin</artifactId>
+                    <version>${exec-maven-plugin.version}</version>
+                </plugin>
             </plugins>
         </pluginManagement>
         <extensions>
             <extension>
                 <groupId>kr.motd.maven</groupId>
                 <artifactId>os-maven-plugin</artifactId>
-                <version>1.6.0</version>
+                <version>${os-maven-plugin.version}</version>
             </extension>
         </extensions>
     </build>
 
     <profiles>
         <profile>
-            <id>analysis</id>
+            <id>docker-proxy</id>
             <activation>
-        <activeByDefault>true</activeByDefault>
-      </activation>
-      <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.jacoco</groupId>
-                        <artifactId>jacoco-maven-plugin</artifactId>
-                        <version>0.8.1</version>
-                        <executions>
-                            <execution>
-                                <id>default-prepare-agent</id>
-                                <goals>
-                                    <goal>prepare-agent</goal>
-                                </goals>
-                            </execution>
-                            <execution>
-                                <id>default-prepare-agent-integration</id>
-                                <goals>
-                                    <goal>prepare-agent-integration</goal>
-                                </goals>
-                            </execution>
-                        </executions>
-                        <configuration>
-                            <excludes>
-                                <!-- Exclute Protobuf-generated classes -->
-                                <exclude>org/onap/ves/*</exclude>
-                            </excludes>
-                        </configuration>
-                    </plugin>
-
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-antrun-plugin</artifactId>
-                        <version>1.8</version>
-                        <executions>
-                            <execution>
-                                <!-- This can be run separately with mvn antrun:run@detekt -->
-                                <id>detekt</id>
-                                <phase>verify</phase>
-                                <configuration>
-                                    <target name="detekt" unless="${skipAnalysis}">
-                                        <java taskname="detekt" dir="${basedir}"
-                                                fork="true"
-                                                failonerror="true"
-                                                classname="io.gitlab.arturbosch.detekt.cli.Main"
-                                                classpathref="maven.plugin.classpath">
-                                            <arg value="--input"/>
-                                            <arg value="${basedir}/src/main/kotlin"/>
-                                            <arg value="--config-resource"/>
-                                            <arg value="onap-detekt-config.yml"/>
-                                            <arg value="--filters"/>
-                                            <arg value=".*/target/.*,.*/resources/.*"/>
-                                            <arg value="--output"/>
-                                            <arg value="${basedir}/target/reports"/>
-                                            <arg value="--output-name"/>
-                                            <arg value="detekt-report"/>
-                                            <arg value="--baseline"/>
-                                            <arg value="${basedir}/target/reports/baseline.xml"/>
-                                        </java>
-                                    </target>
-                                </configuration>
-                                <goals>
-                                    <goal>run</goal>
-                                </goals>
-                            </execution>
-                        </executions>
-                        <dependencies>
-                            <dependency>
-                                <groupId>io.gitlab.arturbosch.detekt</groupId>
-                                <artifactId>detekt-cli</artifactId>
-                                <version>1.0.0.RC7</version>
-                            </dependency>
-                            <dependency>
-                                <groupId>${project.groupId}</groupId>
-                                <artifactId>hv-collector-analysis</artifactId>
-                                <version>${project.version}</version>
-                            </dependency>
-                        </dependencies>
-                    </plugin>
-
-                    <plugin>
-                        <artifactId>maven-checkstyle-plugin</artifactId>
-                        <version>3.0.0</version>
-                        <dependencies>
-                            <dependency>
-                                <groupId>org.onap.oparent</groupId>
-                                <artifactId>checkstyle</artifactId>
-                                <version>1.1.1</version>
-                            </dependency>
-                        </dependencies>
-                        <executions>
-                            <execution>
-                                <id>onap-license</id>
-                                <goals>
-                                    <goal>check</goal>
-                                </goals>
-                                <phase>process-sources</phase>
-                                <configuration>
-                                    <configLocation>onap-checkstyle/check-license.xml</configLocation>
-                                    <includeResources>false</includeResources>
-                                    <includeTestSourceDirectory>true</includeTestSourceDirectory>
-                                    <includeTestResources>false</includeTestResources>
-                                    <includes>**\/*.kt</includes>
-                                    <consoleOutput>true</consoleOutput>
-                                    <!--<failOnViolation>false</failOnViolation>-->
-                                </configuration>
-                            </execution>
-                        </executions>
-                    </plugin>
-                </plugins>
-            </build>
+                <property>
+                    <name>docker.http_proxy</name>
+                </property>
+            </activation>
+            <properties>
+                <!-- set build args as defined in https://dmp.fabric8.io/#build-buildargs -->
+                <docker.buildArg.http_proxy>${docker.http_proxy}</docker.buildArg.http_proxy>
+                <docker.buildArg.https_proxy>${docker.http_proxy}</docker.buildArg.https_proxy>
+            </properties>
         </profile>
+
         <profile>
             <id>docker</id>
             <activation>
                         <plugin>
                             <groupId>org.apache.maven.plugins</groupId>
                             <artifactId>maven-dependency-plugin</artifactId>
-                            <version>3.1.1</version>
+                            <version>${maven-dependency-plugin.version}</version>
                             <executions>
                                 <execution>
                                     <id>docker-copy-internal-deps</id>
                         <plugin>
                             <groupId>io.fabric8</groupId>
                             <artifactId>docker-maven-plugin</artifactId>
-                            <version>0.26.0</version>
+                            <version>${docker-maven-plugin.version}</version>
                             <executions>
                                 <execution>
                                     <id>docker-build-image</id>
-                                    <phase>deploy</phase>
+                                    <phase>package</phase>
                                     <goals>
                                         <goal>build</goal>
                                     </goals>
                                 </execution>
                             </executions>
                             <configuration>
+                                <skipPush>${skipDockerPush}</skipPush>
                                 <verbose>true</verbose>
                                 <imagePullPolicy>IfNotPresent</imagePullPolicy>
                                 <images>
                                     <image>
                                         <alias>${project.artifactId}</alias>
-                                        <name>${docker-image.registry}/${docker-image.namespace}/${docker-image.name}</name>
+                                        <name>${docker-image.namespace}/${docker-image.name}:${project.version}
+                                        </name>
+                                        <registry>${docker-image.registry}</registry>
                                         <build>
-                                            <!--
-                                            <args>
-                                                <http_proxy>${docker.http_proxy}</http_proxy>
-                                                <https_proxy>${docker.https_proxy}</https_proxy>
-                                            </args>
-                                            -->
                                             <dockerFileDir>${project.basedir}</dockerFileDir>
+                                            <tags>
+                                                <tag>${project.version}-${maven.build.timestamp}Z</tag>
+                                                <tag>${docker-image.latest}</tag>
+                                            </tags>
                                         </build>
                                     </image>
                                 </images>
         </profile>
     </profiles>
 
-    <reporting>
-        <plugins>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
-        </plugins>
-    </reporting>
-
     <pluginRepositories>
         <pluginRepository>
-            <id>40_openecomp-release</id>
-            <name>40_openecomp-release</name>
-            <url>https://nexus.onap.org/content/repositories/releases/</url>
+            <id>kotlinx-repository</id>
+            <name>kotlinx-repository</name>
+            <url>https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven</url>
             <releases>
                 <enabled>true</enabled>
-                <updatePolicy>daily</updatePolicy>
+                <updatePolicy>never</updatePolicy>
             </releases>
             <snapshots>
                 <enabled>false</enabled>
+                <updatePolicy>never</updatePolicy>
             </snapshots>
         </pluginRepository>
+    </pluginRepositories>
 
-        <pluginRepository>
-            <id>arturbosch-code-analysis</id>
-            <name>arturbosch-code-analysis (for detekt)</name>
-            <url>https://dl.bintray.com/arturbosch/code-analysis/</url>
-            <layout>default</layout>
+    <repositories>
+        <repository>
+            <id>kotlinx-repository</id>
+            <name>kotlinx-repository</name>
+            <url>https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven/</url>
             <releases>
                 <enabled>true</enabled>
                 <updatePolicy>never</updatePolicy>
                 <enabled>false</enabled>
                 <updatePolicy>never</updatePolicy>
             </snapshots>
-        </pluginRepository>
-    </pluginRepositories>
-
-    <repositories>
+        </repository>
         <repository>
             <id>40_openecomp-release</id>
             <name>40_openecomp-release</name>
             <dependency>
                 <groupId>com.google.guava</groupId>
                 <artifactId>guava</artifactId>
-                <version>25.0-jre</version>
+                <version>${guava.version}</version>
                 <exclusions>
                     <exclusion>
                         <groupId>com.google.code.findbugs</groupId>
             </dependency>
             <dependency>
                 <groupId>org.jetbrains.kotlin</groupId>
-                <artifactId>kotlin-stdlib-jdk8</artifactId>
+                <artifactId>kotlin-bom</artifactId>
+                <version>${kotlin.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.jetbrains.kotlin</groupId>
+                <artifactId>kotlin-compiler-embeddable</artifactId>
+                <version>${kotlin.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.jetbrains.kotlin</groupId>
+                <artifactId>kotlin-scripting-compiler-embeddable</artifactId>
                 <version>${kotlin.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.jetbrains.kotlin</groupId>
-                <artifactId>kotlin-reflect</artifactId>
+                <artifactId>kotlin-script-util</artifactId>
                 <version>${kotlin.version}</version>
+                <scope>runtime</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.jetbrains.kotlinx</groupId>
+                <artifactId>kotlinx-coroutines-core</artifactId>
+                <version>${coroutines.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.google.code.gson</groupId>
+                <artifactId>gson</artifactId>
+                <version>${gson.version}</version>
             </dependency>
             <dependency>
                 <groupId>io.arrow-kt</groupId>
-                <artifactId>arrow-core</artifactId>
+                <artifactId>arrow-core-data</artifactId>
                 <version>${arrow.version}</version>
-                <exclusions>
-                    <exclusion>
-                        <groupId>org.jetbrains.kotlin</groupId>
-                        <artifactId>kotlin-stdlib</artifactId>
-                    </exclusion>
-                    <exclusion>
-                        <groupId>org.jetbrains.kotlin</groupId>
-                        <artifactId>kotlin-stdlib-jdk7</artifactId>
-                    </exclusion>
-                </exclusions>
             </dependency>
             <dependency>
                 <groupId>io.arrow-kt</groupId>
-                <artifactId>arrow-syntax</artifactId>
+                <artifactId>arrow-core-extensions</artifactId>
                 <version>${arrow.version}</version>
             </dependency>
             <dependency>
                 <groupId>io.arrow-kt</groupId>
-                <artifactId>arrow-instances-core</artifactId>
+                <artifactId>arrow-extras-data</artifactId>
                 <version>${arrow.version}</version>
             </dependency>
             <dependency>
                 <groupId>io.arrow-kt</groupId>
-                <artifactId>arrow-instances-data</artifactId>
+                <artifactId>arrow-syntax</artifactId>
                 <version>${arrow.version}</version>
             </dependency>
             <dependency>
                 <groupId>io.arrow-kt</groupId>
-                <artifactId>arrow-effects</artifactId>
+                <artifactId>arrow-typeclasses</artifactId>
                 <version>${arrow.version}</version>
             </dependency>
             <dependency>
                 <groupId>ch.qos.logback</groupId>
                 <artifactId>logback-classic</artifactId>
-                <version>1.3.0-alpha4</version>
+                <version>${logback-classic.version}</version>
                 <scope>runtime</scope>
             </dependency>
             <dependency>
                 <groupId>org.slf4j</groupId>
                 <artifactId>slf4j-api</artifactId>
-                <version>1.8.0-beta1</version>
+                <version>${slf4j-api.version}</version>
             </dependency>
             <dependency>
                 <groupId>io.projectreactor</groupId>
                 <artifactId>reactor-bom</artifactId>
-                <version>Bismuth-SR10</version>
+                <!-- remember to update netty native bindings versions -->
+                <version>${reactor-bom.version}</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
+            <!-- Due to security reasons, override transitive kafka-clients dependency version (2.0.0 -> 2.3.1) -->
             <dependency>
-                <groupId>io.netty</groupId>
-                <artifactId>netty-tcnative-boringssl-static</artifactId>
-                <version>2.0.8.Final</version>
-                <classifier>${os.detected.classifier}</classifier>
+                <groupId>org.apache.kafka</groupId>
+                <artifactId>kafka-clients</artifactId>
+                <version>${kafka-clients.version}</version>
             </dependency>
+            <!--
+            Disable native extension (epoll) on production for now.
+            Might be reintroduced if performance tests prove there is some performance issue.
+            -->
+            <!--
             <dependency>
-                <groupId>com.google.protobuf</groupId>
-                <artifactId>protobuf-java</artifactId>
-                <version>${protobuf.version}</version>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-transport-native-epoll</artifactId>
+                <version>4.1.29.Final</version>
+                <classifier>${os.detected.classifier}</classifier>
             </dependency>
+            -->
             <dependency>
                 <groupId>com.google.protobuf</groupId>
                 <artifactId>protobuf-java-util</artifactId>
                 <version>${protobuf.version}</version>
+                <exclusions>
+                    <exclusion>
+                        <groupId>com.google.guava</groupId>
+                        <artifactId>guava</artifactId>
+                    </exclusion>
+                </exclusions>
             </dependency>
             <dependency>
                 <groupId>commons-cli</groupId>
                 <artifactId>commons-cli</artifactId>
-                <version>1.4</version>
+                <version>${commons-cli.version}</version>
             </dependency>
             <dependency>
                 <groupId>javax.json</groupId>
                 <artifactId>javax.json-api</artifactId>
-                <version>1.1.2</version>
+                <version>${javax.json-api.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.glassfish</groupId>
                 <artifactId>javax.json</artifactId>
-                <version>1.1.2</version>
+                <version>${javax.json.version}</version>
             </dependency>
             <dependency>
-                <groupId>io.ratpack</groupId>
-                <artifactId>ratpack-core</artifactId>
-                <version>1.5.4</version>
+                <groupId>io.micrometer</groupId>
+                <artifactId>micrometer-registry-prometheus</artifactId>
+                <version>${micrometer-registry-prometheus.version}</version>
             </dependency>
             <dependency>
-                <groupId>io.micrometer</groupId>
-                <artifactId>micrometer-registry-jmx</artifactId>
-                <version>1.0.5</version>
+                <groupId>org.onap.dcaegen2.services.sdk</groupId>
+                <artifactId>hvvesclient-producer-impl</artifactId>
+                <version>${sdk.version}</version>
+                <scope>runtime</scope>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.dcaegen2.services.sdk</groupId>
+                <artifactId>hvvesclient-producer-api</artifactId>
+                <version>${sdk.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.dcaegen2.services.sdk</groupId>
+                <artifactId>hvvesclient-protobuf</artifactId>
+                <version>${sdk.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.dcaegen2.services.sdk.security</groupId>
+                <artifactId>ssl</artifactId>
+                <version>${sdk.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
+                <artifactId>cbs-client</artifactId>
+                <version>${sdk.version}</version>
             </dependency>
 
             <!-- Test dependencies -->
             <dependency>
                 <groupId>org.assertj</groupId>
                 <artifactId>assertj-core</artifactId>
-                <version>3.9.1</version>
+                <version>${assertj-core.version}</version>
                 <scope>test</scope>
             </dependency>
             <dependency>
-                <groupId>com.nhaarman</groupId>
+                <groupId>com.nhaarman.mockitokotlin2</groupId>
                 <artifactId>mockito-kotlin</artifactId>
-                <version>1.5.0</version>
-                <scope>test</scope>
-                <exclusions>
-                    <exclusion>
-                        <groupId>org.mockito</groupId>
-                        <artifactId>mockito-core</artifactId>
-                    </exclusion>
-                </exclusions>
-            </dependency>
-            <dependency>
-                <groupId>org.mockito</groupId>
-                <artifactId>mockito-core</artifactId>
-                <version>2.18.3</version>
+                <version>${mockito-kotlin.version}</version>
                 <scope>test</scope>
             </dependency>
             <dependency>
                 <scope>test</scope>
             </dependency>
             <dependency>
-                <groupId>io.projectreactor</groupId>
-                <artifactId>reactor-test</artifactId>
-                <version>3.1.7.RELEASE</version>
+                <groupId>org.jetbrains.kotlinx</groupId>
+                <artifactId>kotlinx-coroutines-test</artifactId>
+                <version>${coroutines.version}</version>
                 <scope>test</scope>
             </dependency>
         </dependencies>
     </dependencyManagement>
 </project>
-
-