1 <?xml version="1.0"?>
\r
3 ================================================================================
\r
4 Copyright (c) 2017-2019 AT&T Intellectual Property. All rights reserved.
\r
5 Copyright (c) 2020-2021 Nokia. All rights reserved.
\r
6 ================================================================================
\r
7 Licensed under the Apache License, Version 2.0 (the "License"); you may not
\r
8 use this file except in compliance with the License. You may obtain a copy
\r
9 of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
\r
10 by applicable law or agreed to in writing, software distributed under the
\r
11 License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
\r
12 OF ANY KIND, either express or implied. See the License for the specific
\r
13 language governing permissions and limitations under the License.
\r
14 ============LICENSE_END=========================================================
\r
16 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
\r
17 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
\r
18 <modelVersion>4.0.0</modelVersion>
\r
20 <groupId>org.onap.oparent</groupId>
\r
21 <artifactId>oparent</artifactId>
\r
22 <version>3.2.0</version>
\r
25 <groupId>org.onap.dcaegen2.collectors.ves</groupId>
\r
26 <artifactId>VESCollector</artifactId>
\r
27 <version>1.9.1-SNAPSHOT</version>
\r
28 <name>dcaegen2-collectors-ves</name>
\r
29 <description>VESCollector</description>
\r
31 <!-- PROJECT SETTINGS -->
\r
32 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
\r
33 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
\r
34 <java.version>11</java.version>
\r
35 <docker.image.name>onap/org.onap.dcaegen2.collectors.ves.vescollector</docker.image.name>
\r
36 <!-- TEST SETTINGS -->
\r
37 <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
\r
38 <!-- PLUGIN SETTINGS -->
\r
39 <dependency.locations.enabled>false</dependency.locations.enabled>
\r
40 <!-- NEXUS RELATED SETTINGS -->
\r
41 <nexusproxy>https://nexus.onap.org</nexusproxy>
\r
42 <snapshots.path>content/repositories/snapshots/</snapshots.path>
\r
43 <releases.path>content/repositories/releases/</releases.path>
\r
44 <site.path>content/sites/site/org/onap/dcaegen2/collectors/ves/${project.artifactId}/${project.version}</site.path>
\r
45 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
\r
46 <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
\r
47 <maven.compiler.target>${java.version}</maven.compiler.target>
\r
48 <maven.compiler.source>${java.version}</maven.compiler.source>
\r
49 <sonar.coverage.jacoco.xmlReportPaths>
\r
50 ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
\r
51 </sonar.coverage.jacoco.xmlReportPaths>
\r
52 <!-- DEPENDENCY RELATED SETTINGS -->
\r
53 <crypt-password.version>1.8.0</crypt-password.version>
\r
54 <micrometer.version>1.6.5</micrometer.version>
\r
55 <spring.version>2.4.3</spring.version>
\r
56 <maven-assembly-plugin.version>3.1.0</maven-assembly-plugin.version>
\r
57 <maven-javadoc-plugin.version>3.0.1</maven-javadoc-plugin.version>
\r
58 <maven-project-info-reports-plugin.version>2.9</maven-project-info-reports-plugin.version>
\r
59 <maven-surefire-plugin.version>3.0.0-M1</maven-surefire-plugin.version>
\r
60 <docker-maven-plugin.version>1.2.0</docker-maven-plugin.version>
\r
61 <json-simple.version>1.1.1</json-simple.version>
\r
62 <json-schema-validator.version>1.0.49</json-schema-validator.version>
\r
63 <gson.version>2.8.6</gson.version>
\r
64 <json.version>20210307</json.version>
\r
65 <cambriaClient.version>0.0.1</cambriaClient.version>
\r
66 <unirest-java.version>1.4.9</unirest-java.version>
\r
67 <commons-collections.version>3.2.2</commons-collections.version>
\r
68 <commons-configuration.version>1.10</commons-configuration.version>
\r
69 <vavr.version>0.10.3</vavr.version>
\r
70 <spring-boot-starter-log4j2.version>2.4.3</spring-boot-starter-log4j2.version>
\r
71 <springfox-swagger2.version>3.0.0</springfox-swagger2.version>
\r
72 <junit.jupiter.version>5.7.1</junit.jupiter.version>
\r
73 <mockito-junit-jupiter.version>3.8.0</mockito-junit-jupiter.version>
\r
74 <assertj-core.version>3.19.0</assertj-core.version>
\r
75 <jimfs.version>1.2</jimfs.version>
\r
76 <wiremock-standalone.version>2.27.2</wiremock-standalone.version>
\r
77 <spring-security-test.version>5.4.5</spring-security-test.version>
\r
78 <spring-boot-starter-test.version>2.2.13.RELEASE</spring-boot-starter-test.version>
\r
79 <api-custom-header.version>1.8.0</api-custom-header.version>
\r
80 <functionaljava.version>4.9</functionaljava.version>
\r
81 <external-schema-manager.version>1.8.0</external-schema-manager.version>
\r
82 <sdk.version>1.8.0</sdk.version>
\r
83 <guava.version>30.1-jre</guava.version>
\r
89 <groupId>org.springframework.boot</groupId>
\r
90 <artifactId>spring-boot-maven-plugin</artifactId>
\r
93 <artifactId>maven-assembly-plugin</artifactId>
\r
94 <version>${maven-assembly-plugin.version}</version>
\r
97 <artifactId>maven-javadoc-plugin</artifactId>
\r
98 <version>${maven-javadoc-plugin.version}</version>
\r
101 <artifactId>maven-project-info-reports-plugin</artifactId>
\r
102 <version>${maven-project-info-reports-plugin.version}</version>
\r
105 <groupId>org.apache.maven.plugins</groupId>
\r
106 <artifactId>maven-surefire-plugin</artifactId>
\r
107 <version>${maven-surefire-plugin.version}</version>
\r
110 <groupId>com.spotify</groupId>
\r
111 <artifactId>docker-maven-plugin</artifactId>
\r
112 <version>${docker-maven-plugin.version}</version>
\r
115 <groupId>org.apache.maven.plugins</groupId>
\r
116 <artifactId>maven-enforcer-plugin</artifactId>
\r
122 </pluginManagement>
\r
125 <artifactId>maven-assembly-plugin</artifactId>
\r
128 <descriptor>src/assembly/dep.xml</descriptor>
\r
130 <attach>false</attach>
\r
131 <appendAssemblyId>false</appendAssemblyId>
\r
132 <updateOnly>true</updateOnly>
\r
136 <id>make-assembly</id>
\r
137 <phase>package</phase>
\r
139 <goal>single</goal>
\r
145 <groupId>org.springframework.boot</groupId>
\r
146 <artifactId>spring-boot-maven-plugin</artifactId>
\r
150 <goal>repackage</goal>
\r
156 <artifactId>maven-javadoc-plugin</artifactId>
\r
158 <quiet>true</quiet>
\r
159 <verbose>false</verbose>
\r
160 <useStandardDocletOptions>false</useStandardDocletOptions>
\r
165 <phase>site</phase>
\r
167 <goal>aggregate</goal>
\r
171 <id>attach-javadoc</id>
\r
179 <groupId>com.spotify</groupId>
\r
180 <artifactId>docker-maven-plugin</artifactId>
\r
182 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
\r
183 <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
\r
185 <imageTag>${project.version}-${maven.build.timestamp}Z</imageTag>
\r
186 <imageTag>${project.version}</imageTag>
\r
187 <imageTag>latest</imageTag>
\r
189 <baseImage>openjdk:11-jre-slim</baseImage>
\r
190 <user>vescollector</user>
\r
192 <HOSTALIASES>/etc/host.aliases</HOSTALIASES>
\r
194 <workdir>/opt/app/VESCollector</workdir>
\r
197 <targetPath>.</targetPath>
\r
198 <directory>${project.build.directory}/${project.artifactId}-${project.version}</directory>
\r
202 <run>useradd -r -U vescollector</run>
\r
203 <run>chown -R vescollector:vescollector /opt/app</run>
\r
204 <run>mkdir /opt/app/VESCollector/logs</run>
\r
205 <run>chown -R vescollector:vescollector /opt/app/VESCollector/logs</run>
\r
206 <run>chown -R vescollector:vescollector /opt/app/VESCollector/etc</run>
\r
207 <!-- Maven is loosing file permissions during artifacts copy -->
\r
208 <run>chmod +x bin/*.sh</run>
\r
210 <![CDATA[apt-get update && apt-get install -y --no-install-recommends procps && apt-get install -y less && apt-get install -y vim && apt-get install -y curl && apt-get clean all]]></run>
\r
213 <expose>8080</expose>
\r
214 <expose>8443</expose>
\r
216 <cmd>bin/docker-entry.sh</cmd>
\r
223 <id>with-system-proxy</id>
\r
227 <groupId>com.spotify</groupId>
\r
228 <artifactId>docker-maven-plugin</artifactId>
\r
231 <http_proxy>${env.http_proxy}</http_proxy>
\r
242 <artifactId>maven-project-info-reports-plugin</artifactId>
\r
246 <report>dependencies</report>
\r
247 <report>license</report>
\r
253 <artifactId>maven-javadoc-plugin</artifactId>
\r
255 <failOnError>false</failOnError>
\r
256 <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
\r
258 <groupId>org.umlgraph</groupId>
\r
259 <artifactId>umlgraph</artifactId>
\r
260 <version>5.6</version>
\r
262 <additionalparam>-views</additionalparam>
\r
263 <useStandardDocletOptions>true</useStandardDocletOptions>
\r
268 <dependencyManagement>
\r
271 <!-- Import dependency management from Spring Boot -->
\r
272 <groupId>org.springframework.boot</groupId>
\r
273 <artifactId>spring-boot-dependencies</artifactId>
\r
274 <version>${spring.version}</version>
\r
276 <scope>import</scope>
\r
279 </dependencyManagement>
\r
281 <!-- Libraries related with performance tests-->
\r
283 <groupId>org.springframework.boot</groupId>
\r
284 <artifactId>spring-boot-starter-actuator</artifactId>
\r
285 <version>${spring.version}</version>
\r
288 <groupId>io.micrometer</groupId>
\r
289 <artifactId>micrometer-registry-prometheus</artifactId>
\r
290 <version>${micrometer.version}</version>
\r
293 <groupId>io.micrometer</groupId>
\r
294 <artifactId>micrometer-core</artifactId>
\r
295 <version>${micrometer.version}</version>
\r
297 <!-- JSON RELATED -->
\r
299 <groupId>com.googlecode.json-simple</groupId>
\r
300 <artifactId>json-simple</artifactId>
\r
301 <version>${json-simple.version}</version>
\r
304 <groupId>junit</groupId>
\r
305 <artifactId>junit</artifactId>
\r
310 <groupId>com.networknt</groupId>
\r
311 <artifactId>json-schema-validator</artifactId>
\r
312 <version>${json-schema-validator.version}</version>
\r
315 <groupId>com.fasterxml.jackson.core</groupId>
\r
316 <artifactId>jackson-databind</artifactId>
\r
321 <groupId>com.google.code.gson</groupId>
\r
322 <artifactId>gson</artifactId>
\r
323 <version>${gson.version}</version>
\r
326 <groupId>org.json</groupId>
\r
327 <artifactId>json</artifactId>
\r
328 <version>${json.version}</version>
\r
331 <groupId>com.google.guava</groupId>
\r
332 <artifactId>guava</artifactId>
\r
333 <version>${guava.version}</version>
\r
335 <!-- REST API RELATED -->
\r
337 <groupId>com.att.nsa</groupId>
\r
338 <artifactId>cambriaClient</artifactId>
\r
339 <version>${cambriaClient.version}</version>
\r
342 <groupId>com.mashape.unirest</groupId>
\r
343 <artifactId>unirest-java</artifactId>
\r
344 <version>${unirest-java.version}</version>
\r
346 <!-- MISCELLANEOUS -->
\r
348 <groupId>commons-collections</groupId>
\r
349 <artifactId>commons-collections</artifactId>
\r
350 <version>${commons-collections.version}</version>
\r
353 <groupId>commons-configuration</groupId>
\r
354 <artifactId>commons-configuration</artifactId>
\r
355 <version>${commons-configuration.version}</version>
\r
358 <groupId>io.vavr</groupId>
\r
359 <artifactId>vavr</artifactId>
\r
360 <version>${vavr.version}</version>
\r
363 <groupId>org.springframework.boot</groupId>
\r
364 <artifactId>spring-boot-starter-web</artifactId>
\r
367 <groupId>org.springframework.boot</groupId>
\r
368 <artifactId>spring-boot-starter-logging</artifactId>
\r
373 <groupId>org.springframework.boot</groupId>
\r
374 <artifactId>spring-boot-starter-log4j2</artifactId>
\r
375 <version>${spring-boot-starter-log4j2.version}</version>
\r
378 <groupId>io.springfox</groupId>
\r
379 <artifactId>springfox-swagger2</artifactId>
\r
380 <version>${springfox-swagger2.version}</version>
\r
383 <groupId>io.springfox</groupId>
\r
384 <artifactId>springfox-swagger-ui</artifactId>
\r
385 <version>${springfox-swagger2.version}</version>
\r
386 <scope>compile</scope>
\r
390 <groupId>org.junit.jupiter</groupId>
\r
391 <artifactId>junit-jupiter</artifactId>
\r
392 <version>${junit.jupiter.version}</version>
\r
393 <scope>test</scope>
\r
396 <groupId>org.mockito</groupId>
\r
397 <artifactId>mockito-junit-jupiter</artifactId>
\r
398 <version>${mockito-junit-jupiter.version}</version>
\r
399 <scope>test</scope>
\r
402 <groupId>org.assertj</groupId>
\r
403 <artifactId>assertj-core</artifactId>
\r
404 <version>${assertj-core.version}</version>
\r
405 <scope>test</scope>
\r
408 <groupId>com.google.jimfs</groupId>
\r
409 <artifactId>jimfs</artifactId>
\r
410 <version>${jimfs.version}</version>
\r
411 <scope>test</scope>
\r
414 <groupId>com.github.tomakehurst</groupId>
\r
415 <artifactId>wiremock-standalone</artifactId>
\r
416 <version>${wiremock-standalone.version}</version>
\r
417 <scope>test</scope>
\r
420 <groupId>org.springframework.security</groupId>
\r
421 <artifactId>spring-security-test</artifactId>
\r
422 <version>${spring-security-test.version}</version>
\r
423 <scope>test</scope>
\r
426 <groupId>org.springframework.boot</groupId>
\r
427 <artifactId>spring-boot-starter-test</artifactId>
\r
428 <version>${spring-boot-starter-test.version}</version>
\r
429 <scope>test</scope>
\r
432 <groupId>com.vaadin.external.google</groupId>
\r
433 <artifactId>android-json</artifactId>
\r
438 <groupId>org.onap.dcaegen2.services.sdk.security.crypt</groupId>
\r
439 <artifactId>crypt-password</artifactId>
\r
440 <classifier>slim</classifier>
\r
441 <version>${crypt-password.version}</version>
\r
444 <groupId>org.onap.dcaegen2.services.sdk</groupId>
\r
445 <artifactId>dcaegen2-services-sdk-services-external-schema-manager</artifactId>
\r
446 <version>${external-schema-manager.version}</version>
\r
449 <groupId>org.springframework.security</groupId>
\r
450 <artifactId>spring-security-crypto</artifactId>
\r
453 <groupId>org.onap.dcaegen2.services.sdk.standardization</groupId>
\r
454 <artifactId>api-custom-header</artifactId>
\r
455 <version>${api-custom-header.version}</version>
\r
458 <groupId>org.functionaljava</groupId>
\r
459 <artifactId>functionaljava</artifactId>
\r
460 <version>${functionaljava.version}</version>
\r
461 <scope>compile</scope>
\r
464 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
\r
465 <artifactId>cbs-client</artifactId>
\r
466 <version>${sdk.version}</version>
\r
471 <id>external-repository</id>
\r
472 <url>https://oss.sonatype.org/content/repositories</url>
\r
475 <pluginRepositories>
\r
476 <!-- Black Duck plugin dependencies -->
\r
479 <name>JCenter Repository</name>
\r
480 <url>http://jcenter.bintray.com</url>
\r
481 </pluginRepository>
\r
484 <name>Restlet Repository</name>
\r
485 <url>http://maven.restlet.com</url>
\r
486 </pluginRepository>
\r
487 </pluginRepositories>
\r