1 <?xml version="1.0"?>
\r
3 ================================================================================
\r
4 Copyright (c) 2017-2019 AT&T Intellectual Property. All rights reserved.
\r
5 Copyright (c) 2018 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>1.2.0</version>
\r
25 <groupId>org.onap.dcaegen2.collectors.ves</groupId>
\r
26 <artifactId>VESCollector</artifactId>
\r
27 <version>1.4.2-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>8</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
51 <groupId>org.springframework.boot</groupId>
\r
52 <artifactId>spring-boot-maven-plugin</artifactId>
\r
53 <version>2.0.2.RELEASE</version>
\r
57 <goal>repackage</goal>
\r
63 <artifactId>maven-compiler-plugin</artifactId>
\r
64 <version>3.7.0</version>
\r
67 <artifactId>maven-source-plugin</artifactId>
\r
68 <version>3.0.1</version>
\r
71 <artifactId>maven-jar-plugin</artifactId>
\r
72 <version>3.1.0</version>
\r
75 <artifactId>maven-assembly-plugin</artifactId>
\r
76 <version>3.1.0</version>
\r
79 <artifactId>maven-javadoc-plugin</artifactId>
\r
80 <version>3.0.1</version>
\r
83 <artifactId>maven-project-info-reports-plugin</artifactId>
\r
84 <version>2.9</version>
\r
87 <groupId>org.apache.maven.plugins</groupId>
\r
88 <artifactId>maven-surefire-plugin</artifactId>
\r
89 <version>3.0.0-M1</version>
\r
92 <groupId>com.spotify</groupId>
\r
93 <artifactId>docker-maven-plugin</artifactId>
\r
94 <version>1.1.1</version>
\r
97 <groupId>org.apache.maven.plugins</groupId>
\r
98 <artifactId>maven-enforcer-plugin</artifactId>
\r
104 </pluginManagement>
\r
107 <artifactId>maven-compiler-plugin</artifactId>
\r
109 <source>${java.version}</source>
\r
110 <target>${java.version}</target>
\r
111 <showWarnings>true</showWarnings>
\r
112 <showDeprecation>true</showDeprecation>
\r
116 <artifactId>maven-source-plugin</artifactId>
\r
118 <excludeResources>true</excludeResources>
\r
122 <id>attach-sources</id>
\r
123 <phase>verify</phase>
\r
125 <goal>jar-no-fork</goal>
\r
131 <artifactId>maven-jar-plugin</artifactId>
\r
135 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
\r
138 <Implementation-Build-Version>${project.version}</Implementation-Build-Version>
\r
144 <artifactId>maven-assembly-plugin</artifactId>
\r
147 <descriptor>src/assembly/dep.xml</descriptor>
\r
149 <attach>false</attach>
\r
150 <appendAssemblyId>false</appendAssemblyId>
\r
151 <updateOnly>true</updateOnly>
\r
155 <id>make-assembly</id>
\r
156 <phase>package</phase>
\r
158 <goal>single</goal>
\r
164 <artifactId>maven-javadoc-plugin</artifactId>
\r
166 <!-- minimize console output messages -->
\r
167 <quiet>true</quiet>
\r
168 <verbose>false</verbose>
\r
169 <useStandardDocletOptions>false</useStandardDocletOptions>
\r
174 <phase>site</phase>
\r
176 <goal>aggregate</goal>
\r
180 <id>attach-javadoc</id>
\r
188 <groupId>com.spotify</groupId>
\r
189 <artifactId>docker-maven-plugin</artifactId>
\r
191 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
\r
192 <imageName>${docker.image.name}</imageName>
\r
196 <baseImage>openjdk:8-jre-slim</baseImage>
\r
198 <HOSTALIASES>/etc/host.aliases</HOSTALIASES>
\r
200 <workdir>/opt/app/VESCollector</workdir>
\r
203 <targetPath>.</targetPath>
\r
204 <directory>${project.build.directory}/${project.artifactId}-${project.version}</directory>
\r
208 <!-- Maven is loosing file permissions during artifacts copy -->
\r
209 <run>chmod +x bin/*.sh</run>
\r
210 <run><![CDATA[apt-get update && apt-get install -y --no-install-recommends logrotate procps && apt-get install -y vim && apt-get install -y curl && apt-get clean all]]></run>
\r
211 <run>chmod 0644 etc/logrotate.conf</run>
\r
214 <expose>8080</expose>
\r
215 <expose>8443</expose>
\r
217 <cmd>bin/docker-entry.sh</cmd>
\r
221 <id>build-image</id>
\r
222 <phase>package</phase>
\r
228 <id>tag-and-push-image-latest</id>
\r
229 <phase>deploy</phase>
\r
234 <image>${docker.image.name}:latest</image>
\r
235 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>
\r
236 <pushImage>true</pushImage>
\r
240 <id>tag-and-push-image-with-version</id>
\r
241 <phase>deploy</phase>
\r
246 <image>${docker.image.name}:latest</image>
\r
247 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName>
\r
248 <pushImage>true</pushImage>
\r
252 <id>tag-and-push-image-with-version-and-date</id>
\r
253 <phase>deploy</phase>
\r
258 <image>${docker.image.name}:latest</image>
\r
259 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName>
\r
260 <pushImage>true</pushImage>
\r
269 <id>with-system-proxy</id>
\r
273 <groupId>com.spotify</groupId>
\r
274 <artifactId>docker-maven-plugin</artifactId>
\r
277 <http_proxy>${env.http_proxy}</http_proxy>
\r
288 <artifactId>maven-project-info-reports-plugin</artifactId>
\r
292 <report>dependencies</report>
\r
293 <report>license</report>
\r
299 <artifactId>maven-javadoc-plugin</artifactId>
\r
301 <failOnError>false</failOnError>
\r
302 <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
\r
304 <groupId>org.umlgraph</groupId>
\r
305 <artifactId>umlgraph</artifactId>
\r
306 <version>5.6</version>
\r
308 <additionalparam>-views</additionalparam>
\r
309 <useStandardDocletOptions>true</useStandardDocletOptions>
\r
314 <dependencyManagement>
\r
317 <!-- Import dependency management from Spring Boot -->
\r
318 <groupId>org.springframework.boot</groupId>
\r
319 <artifactId>spring-boot-dependencies</artifactId>
\r
320 <version>2.1.0.RELEASE</version>
\r
322 <scope>import</scope>
\r
325 </dependencyManagement>
\r
327 <!-- JSON RELATED -->
\r
329 <groupId>com.googlecode.json-simple</groupId>
\r
330 <artifactId>json-simple</artifactId>
\r
331 <version>1.1.1</version>
\r
334 <groupId>com.github.fge</groupId>
\r
335 <artifactId>json-schema-validator</artifactId>
\r
336 <version>2.2.6</version>
\r
339 <groupId>com.github.fge</groupId>
\r
340 <artifactId>json-schema-core</artifactId>
\r
341 <version>1.2.5</version>
\r
344 <groupId>com.google.code.gson</groupId>
\r
345 <artifactId>gson</artifactId>
\r
346 <version>2.8.5</version>
\r
349 <groupId>org.json</groupId>
\r
350 <artifactId>json</artifactId>
\r
351 <version>20160810</version>
\r
353 <!-- REST API RELATED -->
\r
355 <groupId>com.att.nsa</groupId>
\r
356 <artifactId>cambriaClient</artifactId>
\r
357 <version>0.0.1</version>
\r
360 <groupId>com.mashape.unirest</groupId>
\r
361 <artifactId>unirest-java</artifactId>
\r
362 <version>1.4.9</version>
\r
364 <!-- MISCELLANEOUS -->
\r
366 <groupId>commons-collections</groupId>
\r
367 <artifactId>commons-collections</artifactId>
\r
368 <version>3.2.2</version>
\r
371 <groupId>commons-configuration</groupId>
\r
372 <artifactId>commons-configuration</artifactId>
\r
373 <version>1.10</version>
\r
376 <groupId>io.vavr</groupId>
\r
377 <artifactId>vavr</artifactId>
\r
378 <version>0.9.2</version>
\r
381 <groupId>org.springframework.boot</groupId>
\r
382 <artifactId>spring-boot-starter-security</artifactId>
\r
385 <groupId>org.springframework.boot</groupId>
\r
386 <artifactId>spring-boot-starter-logging</artifactId>
\r
391 <groupId>org.springframework.boot</groupId>
\r
392 <artifactId>spring-boot-starter-web</artifactId>
\r
395 <groupId>org.springframework.security</groupId>
\r
396 <artifactId>spring-security-config</artifactId>
\r
399 <groupId>org.springframework.boot</groupId>
\r
400 <artifactId>spring-boot-starter-log4j</artifactId>
\r
401 <version>1.3.8.RELEASE</version>
\r
404 <groupId>io.springfox</groupId>
\r
405 <artifactId>springfox-swagger2</artifactId>
\r
406 <version>2.8.0</version>
\r
409 <groupId>io.springfox</groupId>
\r
410 <artifactId>springfox-swagger-ui</artifactId>
\r
411 <version>2.8.0</version>
\r
412 <scope>compile</scope>
\r
416 <groupId>org.junit.jupiter</groupId>
\r
417 <artifactId>junit-jupiter-api</artifactId>
\r
418 <version>5.3.1</version>
\r
419 <scope>test</scope>
\r
422 <groupId>org.junit.jupiter</groupId>
\r
423 <artifactId>junit-jupiter-engine</artifactId>
\r
424 <version>5.3.1</version>
\r
425 <scope>test</scope>
\r
428 <groupId>org.junit.vintage</groupId>
\r
429 <artifactId>junit-vintage-engine</artifactId>
\r
430 <version>5.3.1</version>
\r
431 <scope>test</scope>
\r
434 <groupId>org.mockito</groupId>
\r
435 <artifactId>mockito-junit-jupiter</artifactId>
\r
436 <version>2.23.0</version>
\r
437 <scope>test</scope>
\r
440 <groupId>org.assertj</groupId>
\r
441 <artifactId>assertj-core</artifactId>
\r
442 <version>3.8.0</version>
\r
443 <scope>test</scope>
\r
446 <groupId>com.google.jimfs</groupId>
\r
447 <artifactId>jimfs</artifactId>
\r
448 <version>1.1</version>
\r
449 <scope>test</scope>
\r
452 <groupId>com.github.tomakehurst</groupId>
\r
453 <artifactId>wiremock-standalone</artifactId>
\r
454 <version>2.17.0</version>
\r
455 <scope>test</scope>
\r
458 <groupId>org.springframework.security</groupId>
\r
459 <artifactId>spring-security-test</artifactId>
\r
460 <version>5.1.1.RELEASE</version>
\r
461 <scope>test</scope>
\r
464 <groupId>org.springframework.boot</groupId>
\r
465 <artifactId>spring-boot-starter-test</artifactId>
\r
466 <version>2.1.0.RELEASE</version>
\r
467 <scope>test</scope>
\r
470 <groupId>org.onap.dcaegen2.services.sdk.security.crypt</groupId>
\r
471 <artifactId>crypt-password</artifactId>
\r
472 <version>1.0.0-SNAPSHOT</version>
\r
477 <id>external-repository</id>
\r
478 <url>https://oss.sonatype.org/content/repositories</url>
\r
481 <pluginRepositories>
\r
482 <!-- Black Duck plugin dependencies -->
\r
485 <name>JCenter Repository</name>
\r
486 <url>http://jcenter.bintray.com</url>
\r
487 </pluginRepository>
\r
490 <name>Restlet Repository</name>
\r
491 <url>http://maven.restlet.com</url>
\r
492 </pluginRepository>
\r
493 </pluginRepositories>
\r