71a754cdb599d9709111864b84bab0096fecb593
[dcaegen2/collectors/hv-ves.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ ============LICENSE_START=======================================================
4   ~ dcaegen2-collectors-veshv
5   ~ ================================================================================
6   ~ Copyright (C) 2018 NOKIA
7   ~ ================================================================================
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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
22
23     <modelVersion>4.0.0</modelVersion>
24
25     <licenses>
26         <license>
27             <name>The Apache Software License, Version 2.0</name>
28             <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
29         </license>
30     </licenses>
31
32     <parent>
33         <groupId>org.onap.oparent</groupId>
34         <artifactId>oparent</artifactId>
35         <version>1.2.1</version>
36         <relativePath/>
37     </parent>
38
39     <groupId>org.onap.dcaegen2.collectors.hv-ves</groupId>
40     <artifactId>ves-hv-collector</artifactId>
41     <version>1.1.0-SNAPSHOT</version>
42     <name>dcaegen2-collectors-veshv</name>
43     <description>VES HighVolume Collector</description>
44     <packaging>pom</packaging>
45
46     <modules>
47         <module>hv-collector-analysis</module>
48         <module>hv-collector-core</module>
49         <module>hv-collector-coverage</module>
50         <module>hv-collector-ct</module>
51         <module>hv-collector-dcae-app-simulator</module>
52         <module>hv-collector-domain</module>
53         <module>hv-collector-health-check</module>
54         <module>hv-collector-main</module>
55         <module>hv-collector-ssl</module>
56         <module>hv-collector-test-utils</module>
57         <module>hv-collector-utils</module>
58         <module>hv-collector-ves-message-generator</module>
59         <module>hv-collector-xnf-simulator</module>
60     </modules>
61
62     <properties>
63         <kotlin.version>1.3.0</kotlin.version>
64         <arrow.version>0.8.0</arrow.version>
65         <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
66         <build-helper-maven-plugin.version>1.7</build-helper-maven-plugin.version>
67         <jacoco.version>0.8.2</jacoco.version>
68         <jacoco.minimum.coverage>60</jacoco.minimum.coverage>
69
70         <!-- Protocol buffers -->
71         <protobuf.version>3.6.1</protobuf.version>
72         <protoc-jar-maven-plugin.version>3.6.0.1</protoc-jar-maven-plugin.version>
73         <protobuf-generated-files.directory>${project.build.directory}/generated-sources/proto/main/java/
74         </protobuf-generated-files.directory>
75
76         <!-- Testing and code analysis -->
77         <junit-platform.version>1.2.0-RC1</junit-platform.version>
78         <junit-jupiter.version>5.2.0-RC1</junit-jupiter.version>
79         <spek.version>1.1.5</spek.version>
80         <maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>
81         <failIfMissingUnitTests>false</failIfMissingUnitTests>
82         <failIfMissingComponentTests>false</failIfMissingComponentTests>
83         <skipAnalysis>true</skipAnalysis>
84
85         <!-- Docker -->
86         <skipDocker>false</skipDocker>
87         <skipDockerPush>true</skipDockerPush>
88         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
89         <docker-image.registry>${onap.nexus.dockerregistry.daily}</docker-image.registry>
90         <docker-image.namespace>onap</docker-image.namespace>
91         <docker-image.name>${project.groupId}.${project.artifactId}</docker-image.name>
92         <docker-image.latest>1.1-SNAPSHOT</docker-image.latest>
93         <docker.http_proxy/>
94
95     </properties>
96
97     <build>
98         <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
99         <testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
100         <resources>
101             <resource>
102                 <directory>${project.basedir}/src/main/resources</directory>
103             </resource>
104         </resources>
105         <pluginManagement>
106             <plugins>
107                 <plugin>
108                     <groupId>org.apache.maven.plugins</groupId>
109                     <artifactId>maven-resources-plugin</artifactId>
110                     <version>3.1.0</version>
111                     <configuration>
112                         <encoding>UTF-8</encoding>
113                     </configuration>
114                 </plugin>
115                 <plugin>
116                     <groupId>org.apache.maven.plugins</groupId>
117                     <artifactId>maven-deploy-plugin</artifactId>
118                     <configuration>
119                         <skip>true</skip>
120                     </configuration>
121                 </plugin>
122                 <plugin>
123                     <artifactId>kotlin-maven-plugin</artifactId>
124                     <groupId>org.jetbrains.kotlin</groupId>
125                     <version>${kotlin.version}</version>
126                     <configuration>
127                         <jvmTarget>1.8</jvmTarget>
128                         <experimentalCoroutines>enable</experimentalCoroutines>
129                     </configuration>
130                     <executions>
131                         <execution>
132                             <id>compile</id>
133                             <goals>
134                                 <goal>compile</goal>
135                             </goals>
136                             <configuration>
137                                 <sourceDirs>
138                                     <source>${project.build.sourceDirectory}</source>
139                                     <source>${project.build.directory}/generated-sources/annotations</source>
140                                 </sourceDirs>
141                             </configuration>
142                         </execution>
143                         <execution>
144                             <id>test-compile</id>
145                             <goals>
146                                 <goal>test-compile</goal>
147                             </goals>
148                             <configuration>
149                                 <sourceDirs>
150                                     <source>${project.build.testSourceDirectory}</source>
151                                 </sourceDirs>
152                             </configuration>
153                         </execution>
154                     </executions>
155                 </plugin>
156                 <plugin>
157                     <groupId>com.github.os72</groupId>
158                     <artifactId>protoc-jar-maven-plugin</artifactId>
159                     <version>${protoc-jar-maven-plugin.version}</version>
160                 </plugin>
161                 <plugin>
162                     <groupId>org.codehaus.mojo</groupId>
163                     <artifactId>build-helper-maven-plugin</artifactId>
164                     <version>${build-helper-maven-plugin.version}</version>
165                     <executions>
166                         <execution>
167                             <id>add-source</id>
168                             <phase>generate-sources</phase>
169                             <goals>
170                                 <goal>add-source</goal>
171                             </goals>
172                             <configuration>
173                                 <sources>
174                                     <source>${protobuf-generated-files.directory}</source>
175                                 </sources>
176                             </configuration>
177                         </execution>
178                     </executions>
179                 </plugin>
180                 <plugin>
181                     <groupId>org.apache.maven.plugins</groupId>
182                     <artifactId>maven-compiler-plugin</artifactId>
183                     <version>${maven-compiler-plugin.version}</version>
184                     <configuration>
185                         <source>8</source>
186                         <target>8</target>
187                         <encoding>UTF-8</encoding>
188                         <showWarnings>true</showWarnings>
189                         <showDeprecation>true</showDeprecation>
190                         <failOnWarning>false</failOnWarning>
191                     </configuration>
192                     <dependencies>
193                         <dependency>
194                             <groupId>org.ow2.asm</groupId>
195                             <artifactId>asm</artifactId>
196                             <version>6.1.1</version> <!-- Use newer version of ASM -->
197                         </dependency>
198                     </dependencies>
199                 </plugin>
200                 <!--
201                  Due to a memory leak in Surefire 2.20 and issues running on Java 9, the junit-platform-surefire-provider
202                  currently only works with Surefire 2.19.1.
203                  For updates see https://junit.org/junit5/docs/current/user-guide/#running-tests-build-maven
204                  -->
205                 <plugin>
206                     <artifactId>maven-surefire-plugin</artifactId>
207                     <groupId>org.apache.maven.plugins</groupId>
208                     <version>${maven-surefire-plugin.version}</version>
209                     <configuration>
210                         <failIfNoTests>${failIfMissingUnitTests}</failIfNoTests>
211                         <forkCount>1</forkCount>
212                         <includes>
213                             <include>**/*Test.*</include>
214                         </includes>
215                     </configuration>
216                     <dependencies>
217                         <dependency>
218                             <groupId>org.apache.commons</groupId>
219                             <artifactId>commons-lang3</artifactId>
220                             <version>3.7</version>
221                         </dependency>
222                         <dependency>
223                             <groupId>org.junit.platform</groupId>
224                             <artifactId>junit-platform-surefire-provider</artifactId>
225                             <version>${junit-platform.version}</version>
226                             <scope>runtime</scope>
227                         </dependency>
228                         <dependency>
229                             <groupId>org.jetbrains.spek</groupId>
230                             <artifactId>spek-junit-platform-engine</artifactId>
231                             <version>${spek.version}</version>
232                             <scope>runtime</scope>
233                         </dependency>
234                     </dependencies>
235                 </plugin>
236                 <plugin>
237                     <groupId>org.apache.maven.plugins</groupId>
238                     <artifactId>maven-failsafe-plugin</artifactId>
239                     <version>2.22.0</version>
240                     <configuration>
241                         <failIfNoTests>${failIfMissingComponentTests}</failIfNoTests>
242                         <forkCount>1</forkCount>
243                         <includes>
244                             <include>**/*Specification.*</include>
245                         </includes>
246                     </configuration>
247                     <dependencies>
248                         <dependency>
249                             <groupId>org.apache.commons</groupId>
250                             <artifactId>commons-lang3</artifactId>
251                             <version>3.7</version>
252                         </dependency>
253                         <dependency>
254                             <groupId>org.junit.platform</groupId>
255                             <artifactId>junit-platform-surefire-provider</artifactId>
256                             <version>${junit-platform.version}</version>
257                             <scope>runtime</scope>
258                         </dependency>
259                         <dependency>
260                             <groupId>org.jetbrains.spek</groupId>
261                             <artifactId>spek-junit-platform-engine</artifactId>
262                             <version>${spek.version}</version>
263                             <scope>runtime</scope>
264                         </dependency>
265                     </dependencies>
266                 </plugin>
267                 <plugin>
268                     <groupId>org.codehaus.mojo</groupId>
269                     <artifactId>exec-maven-plugin</artifactId>
270                     <version>1.6.0</version>
271                 </plugin>
272             </plugins>
273         </pluginManagement>
274         <plugins>
275             <plugin>
276                 <artifactId>maven-checkstyle-plugin</artifactId>
277                 <version>2.17</version>
278                 <dependencies>
279                     <dependency>
280                         <groupId>org.onap.oparent</groupId>
281                         <artifactId>checkstyle</artifactId>
282                         <version>1.1.1</version>
283                     </dependency>
284                 </dependencies>
285                 <executions>
286                     <execution>
287                         <!-- To override oparent configuration different id must be used
288                              We need to override it to include .kt files in check. -->
289                         <id>check-license-kotlin</id>
290                         <goals>
291                             <goal>check</goal>
292                         </goals>
293                         <phase>process-sources</phase>
294                         <configuration>
295                             <configLocation>onap-checkstyle/check-license.xml</configLocation>
296                             <includeResources>false</includeResources>
297                             <includeTestSourceDirectory>true</includeTestSourceDirectory>
298                             <includeTestResources>false</includeTestResources>
299                             <includes>**\/*.kt</includes>
300                             <consoleOutput>true</consoleOutput>
301                             <!--<failOnViolation>false</failOnViolation>-->
302                         </configuration>
303                     </execution>
304                 </executions>
305             </plugin>
306             <plugin>
307                 <groupId>org.apache.maven.plugins</groupId>
308                 <artifactId>maven-antrun-plugin</artifactId>
309                 <version>1.8</version>
310                 <executions>
311                     <execution>
312                         <!-- This can be run separately with mvn antrun:run@detekt -->
313                         <id>detekt</id>
314                         <phase>verify</phase>
315                         <goals>
316                             <goal>run</goal>
317                         </goals>
318                         <configuration>
319                             <target name="detekt" unless="${skipAnalysis}">
320                                 <java taskname="detekt" dir="${basedir}" fork="true" failonerror="true" classname="io.gitlab.arturbosch.detekt.cli.Main" classpathref="maven.plugin.classpath">
321                                     <arg value="--input"/>
322                                     <arg value="${basedir}/src/main/kotlin"/>
323                                     <arg value="--config-resource"/>
324                                     <arg value="onap-detekt-config.yml"/>
325                                     <arg value="--filters"/>
326                                     <arg value=".*/target/.*,.*/resources/.*"/>
327                                     <arg value="--output"/>
328                                     <arg value="${basedir}/target/reports"/>
329                                     <arg value="--output-name"/>
330                                     <arg value="detekt-report"/>
331                                     <arg value="--baseline"/>
332                                     <arg value="${basedir}/target/reports/baseline.xml"/>
333                                 </java>
334                             </target>
335                         </configuration>
336                     </execution>
337                 </executions>
338                 <dependencies>
339                     <dependency>
340                         <groupId>io.gitlab.arturbosch.detekt</groupId>
341                         <artifactId>detekt-cli</artifactId>
342                         <version>1.0.0.RC7</version>
343                     </dependency>
344                     <dependency>
345                         <groupId>${project.groupId}</groupId>
346                         <artifactId>hv-collector-analysis</artifactId>
347                         <version>1.1.0-SNAPSHOT</version>
348                     </dependency>
349                 </dependencies>
350             </plugin>
351         </plugins>
352         <extensions>
353             <extension>
354                 <groupId>kr.motd.maven</groupId>
355                 <artifactId>os-maven-plugin</artifactId>
356                 <version>1.6.0</version>
357             </extension>
358         </extensions>
359     </build>
360
361     <profiles>
362         <profile>
363             <id>docker-proxy</id>
364             <activation>
365                 <property>
366                     <name>docker.http_proxy</name>
367                 </property>
368             </activation>
369             <properties>
370                 <!-- set build args as defined in https://dmp.fabric8.io/#build-buildargs -->
371                 <docker.buildArg.http_proxy>${docker.http_proxy}</docker.buildArg.http_proxy>
372                 <docker.buildArg.https_proxy>${docker.http_proxy}</docker.buildArg.https_proxy>
373             </properties>
374         </profile>
375
376         <profile>
377             <id>docker</id>
378             <activation>
379                 <property>
380                     <name>!skipDocker</name>
381                 </property>
382             </activation>
383             <properties>
384                 <os.detected.name>linux</os.detected.name>
385                 <os.detected.arch>x86_64</os.detected.arch>
386                 <os.detected.classifier>${os.detected.name}-${os.detected.arch}</os.detected.classifier>
387             </properties>
388             <build>
389                 <pluginManagement>
390                     <plugins>
391                         <plugin>
392                             <groupId>org.apache.maven.plugins</groupId>
393                             <artifactId>maven-dependency-plugin</artifactId>
394                             <version>3.1.1</version>
395                             <executions>
396                                 <execution>
397                                     <id>docker-copy-internal-deps</id>
398                                     <phase>package</phase>
399                                     <goals>
400                                         <goal>copy-dependencies</goal>
401                                     </goals>
402                                     <configuration>
403                                         <outputDirectory>${project.build.directory}/libs/internal</outputDirectory>
404                                         <includeGroupIds>${project.parent.groupId}</includeGroupIds>
405                                         <includeScope>runtime</includeScope>
406                                     </configuration>
407                                 </execution>
408                                 <execution>
409                                     <id>docker-copy-external-deps</id>
410                                     <phase>package</phase>
411                                     <goals>
412                                         <goal>copy-dependencies</goal>
413                                     </goals>
414                                     <configuration>
415                                         <outputDirectory>${project.build.directory}/libs/external</outputDirectory>
416                                         <excludeGroupIds>${project.parent.groupId}</excludeGroupIds>
417                                         <includeScope>runtime</includeScope>
418                                     </configuration>
419                                 </execution>
420                             </executions>
421                         </plugin>
422                         <plugin>
423                             <groupId>io.fabric8</groupId>
424                             <artifactId>docker-maven-plugin</artifactId>
425                             <version>0.26.0</version>
426                             <executions>
427                                 <execution>
428                                     <id>docker-build-image</id>
429                                     <phase>package</phase>
430                                     <goals>
431                                         <goal>build</goal>
432                                     </goals>
433                                 </execution>
434                                 <execution>
435                                     <id>docker-push-image</id>
436                                     <phase>deploy</phase>
437                                     <goals>
438                                         <goal>push</goal>
439                                     </goals>
440                                 </execution>
441                             </executions>
442                             <configuration>
443                                 <skipPush>${skipDockerPush}</skipPush>
444                                 <verbose>true</verbose>
445                                 <imagePullPolicy>IfNotPresent</imagePullPolicy>
446                                 <images>
447                                     <image>
448                                         <alias>${project.artifactId}</alias>
449                                         <name>${docker-image.namespace}/${docker-image.name}
450                                         </name>
451                                         <registry>${docker-image.registry}</registry>
452                                         <build>
453                                             <dockerFileDir>${project.basedir}</dockerFileDir>
454                                             <tags>
455                                                 <tag>${project.version}-${maven.build.timestamp}Z</tag>
456                                                 <tag>${project.version}</tag>
457                                                 <tag>${docker-image.latest}</tag>
458                                             </tags>
459                                         </build>
460                                     </image>
461                                 </images>
462                             </configuration>
463                         </plugin>
464                     </plugins>
465                 </pluginManagement>
466             </build>
467         </profile>
468     </profiles>
469
470     <pluginRepositories>
471         <pluginRepository>
472             <id>arturbosch-code-analysis</id>
473             <name>arturbosch-code-analysis (for detekt)</name>
474             <url>https://dl.bintray.com/arturbosch/code-analysis/</url>
475             <layout>default</layout>
476             <releases>
477                 <enabled>true</enabled>
478                 <updatePolicy>never</updatePolicy>
479             </releases>
480             <snapshots>
481                 <enabled>false</enabled>
482                 <updatePolicy>never</updatePolicy>
483             </snapshots>
484         </pluginRepository>
485     </pluginRepositories>
486
487     <repositories>
488         <repository>
489             <id>40_openecomp-release</id>
490             <name>40_openecomp-release</name>
491             <url>https://nexus.onap.org/content/repositories/releases/</url>
492             <releases>
493                 <enabled>true</enabled>
494                 <updatePolicy>daily</updatePolicy>
495             </releases>
496             <snapshots>
497                 <enabled>false</enabled>
498             </snapshots>
499         </repository>
500     </repositories>
501
502     <dependencyManagement>
503         <dependencies>
504             <dependency>
505                 <groupId>com.google.guava</groupId>
506                 <artifactId>guava</artifactId>
507
508                 <exclusions>
509                     <exclusion>
510                         <groupId>com.google.code.findbugs</groupId>
511                         <artifactId>jsr305</artifactId>
512                     </exclusion>
513                 </exclusions>
514             </dependency>
515             <dependency>
516                 <groupId>org.jetbrains.kotlin</groupId>
517                 <artifactId>kotlin-stdlib-jdk8</artifactId>
518                 <version>${kotlin.version}</version>
519             </dependency>
520             <dependency>
521                 <groupId>org.jetbrains.kotlin</groupId>
522                 <artifactId>kotlin-reflect</artifactId>
523                 <version>${kotlin.version}</version>
524             </dependency>
525             <dependency>
526                 <groupId>org.jetbrains.kotlinx</groupId>
527                 <artifactId>kotlinx-coroutines-core</artifactId>
528                 <version>1.0.0</version>
529             </dependency>
530             <dependency>
531                 <groupId>io.arrow-kt</groupId>
532                 <artifactId>arrow-core</artifactId>
533                 <version>${arrow.version}</version>
534                 <exclusions>
535                     <exclusion>
536                         <groupId>org.jetbrains.kotlin</groupId>
537                         <artifactId>kotlin-stdlib</artifactId>
538                     </exclusion>
539                     <exclusion>
540                         <groupId>org.jetbrains.kotlin</groupId>
541                         <artifactId>kotlin-stdlib-jdk7</artifactId>
542                     </exclusion>
543                 </exclusions>
544             </dependency>
545             <dependency>
546                 <groupId>io.arrow-kt</groupId>
547                 <artifactId>arrow-syntax</artifactId>
548                 <version>${arrow.version}</version>
549             </dependency>
550             <dependency>
551                 <groupId>io.arrow-kt</groupId>
552                 <artifactId>arrow-instances-core</artifactId>
553                 <version>${arrow.version}</version>
554             </dependency>
555             <dependency>
556                 <groupId>io.arrow-kt</groupId>
557                 <artifactId>arrow-instances-data</artifactId>
558                 <version>${arrow.version}</version>
559             </dependency>
560             <dependency>
561                 <groupId>io.arrow-kt</groupId>
562                 <artifactId>arrow-effects</artifactId>
563                 <version>${arrow.version}</version>
564             </dependency>
565             <dependency>
566                 <groupId>io.arrow-kt</groupId>
567                 <artifactId>arrow-effects-instances</artifactId>
568                 <version>${arrow.version}</version>
569             </dependency>
570             <dependency>
571                 <groupId>io.arrow-kt</groupId>
572                 <artifactId>arrow-effects-reactor</artifactId>
573                 <version>${arrow.version}</version>
574             </dependency>
575             <dependency>
576                 <groupId>ch.qos.logback</groupId>
577                 <artifactId>logback-classic</artifactId>
578                 <version>1.3.0-alpha4</version>
579                 <scope>runtime</scope>
580             </dependency>
581             <dependency>
582                 <groupId>org.slf4j</groupId>
583                 <artifactId>slf4j-api</artifactId>
584                 <version>1.8.0-beta1</version>
585             </dependency>
586             <dependency>
587                 <groupId>io.projectreactor</groupId>
588                 <artifactId>reactor-bom</artifactId>
589                 <!-- remember to update netty native bindings versions -->
590                 <version>Californium-SR2</version>
591                 <type>pom</type>
592                 <scope>import</scope>
593             </dependency>
594
595             <!--
596             Disable native extensions (ssl and epoll) on production for now.
597             Might be reintroduced if performance tests prove there is some performance issue.
598             -->
599             <dependency>
600                 <groupId>io.netty</groupId>
601                 <artifactId>netty-tcnative-boringssl-static</artifactId>
602                 <version>2.0.15.Final</version>
603                 <scope>runtime</scope>
604                 <classifier>${os.detected.classifier}</classifier>
605             </dependency>
606             <!--
607             <dependency>
608                 <groupId>io.netty</groupId>
609                 <artifactId>netty-transport-native-epoll</artifactId>
610                 <version>4.1.29.Final</version>
611                 <classifier>${os.detected.classifier}</classifier>
612             </dependency>
613             -->
614             <dependency>
615                 <groupId>com.google.protobuf</groupId>
616                 <artifactId>protobuf-java</artifactId>
617                 <version>${protobuf.version}</version>
618             </dependency>
619             <dependency>
620                 <groupId>com.google.protobuf</groupId>
621                 <artifactId>protobuf-java-util</artifactId>
622                 <version>${protobuf.version}</version>
623             </dependency>
624             <dependency>
625                 <groupId>commons-cli</groupId>
626                 <artifactId>commons-cli</artifactId>
627                 <version>1.4</version>
628             </dependency>
629             <dependency>
630                 <groupId>javax.json</groupId>
631                 <artifactId>javax.json-api</artifactId>
632                 <version>1.1.2</version>
633             </dependency>
634             <dependency>
635                 <groupId>org.glassfish</groupId>
636                 <artifactId>javax.json</artifactId>
637                 <version>1.1.2</version>
638             </dependency>
639             <dependency>
640                 <!-- To override ratpack transitive dependency which creates security vulnerability
641                 This issue will be resolved with ratpack 1.6.0 release -->
642                 <groupId>com.fasterxml.jackson.core</groupId>
643                 <artifactId>jackson-databind</artifactId>
644                 <version>2.9.6</version>
645             </dependency>
646             <dependency>
647                 <groupId>io.ratpack</groupId>
648                 <artifactId>ratpack-core</artifactId>
649                 <version>1.5.4</version>
650             </dependency>
651             <dependency>
652                 <groupId>io.micrometer</groupId>
653                 <artifactId>micrometer-registry-jmx</artifactId>
654                 <version>1.0.5</version>
655             </dependency>
656
657             <!-- Test dependencies -->
658
659             <dependency>
660                 <groupId>org.jetbrains.spek</groupId>
661                 <artifactId>spek-api</artifactId>
662                 <version>${spek.version}</version>
663                 <scope>test</scope>
664             </dependency>
665             <dependency>
666                 <groupId>org.jetbrains.spek</groupId>
667                 <artifactId>spek-junit-platform-engine</artifactId>
668                 <version>${spek.version}</version>
669                 <scope>test</scope>
670             </dependency>
671             <dependency>
672                 <groupId>org.assertj</groupId>
673                 <artifactId>assertj-core</artifactId>
674                 <version>3.9.1</version>
675                 <scope>test</scope>
676             </dependency>
677             <dependency>
678                 <groupId>com.nhaarman.mockitokotlin2</groupId>
679                 <artifactId>mockito-kotlin</artifactId>
680                 <version>2.0.0</version>
681                 <scope>test</scope>
682             </dependency>
683             <dependency>
684                 <groupId>org.jetbrains.kotlin</groupId>
685                 <artifactId>kotlin-test</artifactId>
686                 <version>${kotlin.version}</version>
687                 <scope>test</scope>
688             </dependency>
689             <dependency>
690                 <groupId>io.projectreactor</groupId>
691                 <artifactId>reactor-test</artifactId>
692                 <version>3.1.7.RELEASE</version>
693                 <scope>test</scope>
694             </dependency>
695         </dependencies>
696     </dependencyManagement>
697 </project>