Implement blocking consul calls
[dcaegen2/collectors/hv-ves.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index d2c5886..7fcd54c 100644 (file)
--- a/pom.xml
+++ b/pom.xml
     <description>VES HighVolume Collector</description>
     <packaging>pom</packaging>
 
-  <modules>
-    <module>hv-collector-analysis</module>
-    <module>hv-collector-client-simulator</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-main</module>
-    <module>hv-collector-utils</module>
-  </modules>
+    <modules>
+        <module>hv-collector-analysis</module>
+        <module>hv-collector-client-simulator</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-main</module>
+        <module>hv-collector-utils</module>
+    </modules>
 
     <properties>
-        <kotlin.version>1.2.41</kotlin.version>
+        <kotlin.version>1.2.51</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>
 
         <failIfMissingComponentTests>false</failIfMissingComponentTests>
         <skipAnalysis>true</skipAnalysis>
 
+        <skipDocker>true</skipDocker> <!-- TODO: unskip docker -->
         <!-- Docker -->
-        <skipDocker>true</skipDocker>
-        <docker-image.name>ves-hv-collector/${project.artifactId}</docker-image.name>
+        <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
+        <onap.nexus.dockerregistry.release>nexus3.onap.org:10002</onap.nexus.dockerregistry.release>
+        <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>
     </properties>
 
 
                         </dependency>
                     </dependencies>
                 </plugin>
-                <plugin>
-                    <groupId>org.apache.maven.plugins</groupId>
-                    <artifactId>maven-dependency-plugin</artifactId>
-                    <version>3.1.1</version>
-                </plugin>
             </plugins>
         </pluginManagement>
         <extensions>
                                 </goals>
                             </execution>
                         </executions>
+                        <configuration>
+                            <excludes>
+                                <!-- Exclute Protobuf-generated classes -->
+                                <exclude>org/onap/ves/*</exclude>
+                            </excludes>
+                        </configuration>
                     </plugin>
 
                     <plugin>
                             </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>
         </profile>
                                 <images>
                                     <image>
                                         <alias>${project.artifactId}</alias>
-                                        <name>${docker-image.namespace}/${docker-image.name}</name>
+                                        <name>${docker-image.registry}/${docker-image.namespace}/${docker-image.name}</name>
                                         <build>
                                             <dockerFileDir>${project.basedir}</dockerFileDir>
                                         </build>
                                 </images>
                             </configuration>
                         </plugin>
-
+                        <plugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-dependency-plugin</artifactId>
+                            <version>3.1.1</version>
+                            <executions>
+                                <execution>
+                                    <id>copy-internal-deps</id>
+                                    <phase>package</phase>
+                                    <goals>
+                                        <goal>copy-dependencies</goal>
+                                    </goals>
+                                    <configuration>
+                                        <outputDirectory>${project.build.directory}/libs/internal</outputDirectory>
+                                        <includeGroupIds>${project.parent.groupId}</includeGroupIds>
+                                        <includeScope>runtime</includeScope>
+                                    </configuration>
+                                </execution>
+                                <execution>
+                                    <id>copy-external-deps</id>
+                                    <phase>package</phase>
+                                    <goals>
+                                        <goal>copy-dependencies</goal>
+                                    </goals>
+                                    <configuration>
+                                        <outputDirectory>${project.build.directory}/libs/external</outputDirectory>
+                                        <excludeGroupIds>${project.parent.groupId}</excludeGroupIds>
+                                        <includeScope>runtime</includeScope>
+                                    </configuration>
+                                </execution>
+                            </executions>
+                        </plugin>
                     </plugins>
                 </pluginManagement>
             </build>
     </reporting>
 
     <pluginRepositories>
+        <pluginRepository>
+            <id>40_openecomp-release</id>
+            <name>40_openecomp-release</name>
+            <url>https://nexus.onap.org/content/repositories/releases/</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>daily</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </pluginRepository>
+
         <pluginRepository>
             <id>arturbosch-code-analysis</id>
             <name>arturbosch-code-analysis (for detekt)</name>
         </pluginRepository>
     </pluginRepositories>
 
+    <repositories>
+        <repository>
+            <id>40_openecomp-release</id>
+            <name>40_openecomp-release</name>
+            <url>https://nexus.onap.org/content/repositories/releases/</url>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>daily</updatePolicy>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
     <dependencyManagement>
         <dependencies>
             <dependency>
                 <artifactId>kotlin-reflect</artifactId>
                 <version>${kotlin.version}</version>
             </dependency>
+            <dependency>
+                <groupId>io.arrow-kt</groupId>
+                <artifactId>arrow-core</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>
+                <version>${arrow.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>io.arrow-kt</groupId>
+                <artifactId>arrow-instances-core</artifactId>
+                <version>${arrow.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>io.arrow-kt</groupId>
+                <artifactId>arrow-instances-data</artifactId>
+                <version>${arrow.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>io.arrow-kt</groupId>
+                <artifactId>arrow-effects</artifactId>
+                <version>${arrow.version}</version>
+            </dependency>
             <dependency>
                 <groupId>ch.qos.logback</groupId>
                 <artifactId>logback-classic</artifactId>
             <dependency>
                 <groupId>io.projectreactor</groupId>
                 <artifactId>reactor-bom</artifactId>
-                <version>Bismuth-SR8</version>
+                <version>Bismuth-SR10</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
                 <artifactId>protobuf-java</artifactId>
                 <version>${protobuf.version}</version>
             </dependency>
+            <dependency>
+                <groupId>com.google.protobuf</groupId>
+                <artifactId>protobuf-java-util</artifactId>
+                <version>${protobuf.version}</version>
+            </dependency>
             <dependency>
                 <groupId>commons-cli</groupId>
                 <artifactId>commons-cli</artifactId>
                 <artifactId>ratpack-core</artifactId>
                 <version>1.5.4</version>
             </dependency>
+            <dependency>
+                <groupId>io.micrometer</groupId>
+                <artifactId>micrometer-registry-jmx</artifactId>
+                <version>1.0.5</version>
+            </dependency>
 
             <!-- Test dependencies -->