2 ================================================================================
3 Copyright (c) 2017-2018 AT&T Intellectual Property. All rights reserved.
4 Copyright (c) 2018 Nokia. All rights reserved.
5 ================================================================================
6 Licensed under the Apache License, Version 2.0 (the "License");
7 you may not use this file except in compliance with the License.
8 You may obtain a copy of the License at
10 http://www.apache.org/licenses/LICENSE-2.0
12 Unless required by applicable law or agreed to in writing, software
13 distributed under the License is distributed on an "AS IS" BASIS,
14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 See the License for the specific language governing permissions and
16 limitations under the License.
17 ============LICENSE_END=========================================================
20 <project xmlns="http://maven.apache.org/POM/4.0.0"
21 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
22 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
23 <modelVersion>4.0.0</modelVersion>
26 <groupId>org.onap.oparent</groupId>
27 <artifactId>oparent</artifactId>
28 <version>0.1.1</version>
32 <groupId>org.onap.dcaegen2.collectors.ves</groupId>
33 <artifactId>VESCollector</artifactId>
34 <version>1.3.0-SNAPSHOT</version>
36 <name>dcaegen2-collectors-ves</name>
37 <description>VESCollector</description>
40 <!-- PROJECT SETTINGS -->
41 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
42 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
43 <java.version>8</java.version>
44 <docker.image.name>onap/org.onap.dcaegen2.collectors.ves.vescollector</docker.image.name>
46 <!-- TEST SETTINGS -->
47 <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
49 <!-- PLUGIN SETTINGS -->
50 <dependency.locations.enabled>false</dependency.locations.enabled>
52 <!-- NEXUS RELATED SETTINGS -->
53 <nexusproxy>https://nexus.onap.org</nexusproxy>
54 <snapshots.path>content/repositories/snapshots/</snapshots.path>
55 <releases.path>content/repositories/releases/</releases.path>
57 content/sites/site/org/onap/dcaegen2/collectors/ves/${project.artifactId}/${project.version}
59 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
67 <groupId>org.springframework.boot</groupId>
68 <artifactId>spring-boot-maven-plugin</artifactId>
69 <version>2.0.2.RELEASE</version>
73 <goal>repackage</goal>
79 <artifactId>maven-compiler-plugin</artifactId>
80 <version>3.7.0</version>
83 <artifactId>maven-source-plugin</artifactId>
84 <version>3.0.1</version>
87 <artifactId>maven-jar-plugin</artifactId>
88 <version>3.1.0</version>
91 <artifactId>maven-assembly-plugin</artifactId>
92 <version>3.1.0</version>
95 <artifactId>maven-javadoc-plugin</artifactId>
96 <version>3.0.1</version>
99 <artifactId>maven-project-info-reports-plugin</artifactId>
100 <version>2.9</version>
103 <groupId>com.spotify</groupId>
104 <artifactId>docker-maven-plugin</artifactId>
105 <version>1.1.1</version>
112 <artifactId>maven-compiler-plugin</artifactId>
114 <source>${java.version}</source>
115 <target>${java.version}</target>
116 <showWarnings>true</showWarnings>
117 <showDeprecation>true</showDeprecation>
122 <artifactId>maven-source-plugin</artifactId>
124 <excludeResources>true</excludeResources>
128 <id>attach-sources</id>
129 <phase>verify</phase>
131 <goal>jar-no-fork</goal>
138 <artifactId>maven-jar-plugin</artifactId>
142 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
145 <Implementation-Build-Version>${project.version}</Implementation-Build-Version>
152 <artifactId>maven-assembly-plugin</artifactId>
155 <descriptor>src/assembly/dep.xml</descriptor>
157 <attach>false</attach>
158 <appendAssemblyId>false</appendAssemblyId>
159 <updateOnly>true</updateOnly>
163 <id>make-assembly</id>
164 <phase>package</phase>
173 <artifactId>maven-javadoc-plugin</artifactId>
175 <!-- minimize console output messages -->
177 <verbose>false</verbose>
178 <useStandardDocletOptions>false</useStandardDocletOptions>
185 <goal>aggregate</goal>
189 <id>attach-javadoc</id>
198 <groupId>com.spotify</groupId>
199 <artifactId>docker-maven-plugin</artifactId>
201 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
202 <imageName>${docker.image.name}</imageName>
206 <baseImage>openjdk:8-jre-slim</baseImage>
208 <HOSTALIASES>/etc/host.aliases</HOSTALIASES>
210 <workdir>/opt/app/VESCollector</workdir>
213 <targetPath>.</targetPath>
214 <directory>${project.build.directory}/${project.artifactId}-${project.version}</directory>
218 <run>chmod +x bin/*.sh</run> <!-- Maven is loosing file permissions during artifacts copy -->
220 <![CDATA[apt-get update && apt-get install -y --no-install-recommends logrotate && apt-get install -y procps && apt-get install -y vim && apt-get clean all]]>
222 <run>chmod 0644 etc/logrotate.conf</run>
225 <expose>8080</expose>
226 <expose>8443</expose>
228 <entryPoint>bin/docker-entry.sh</entryPoint>
234 <phase>package</phase>
240 <id>tag-and-push-image-latest</id>
241 <phase>deploy</phase>
246 <image>${docker.image.name}:latest</image>
247 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>
248 <pushImage>true</pushImage>
252 <id>tag-and-push-image-with-version</id>
253 <phase>deploy</phase>
258 <image>${docker.image.name}:latest</image>
259 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}
261 <pushImage>true</pushImage>
265 <id>tag-and-push-image-with-version-and-date</id>
266 <phase>deploy</phase>
271 <image>${docker.image.name}:latest</image>
273 ${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z
275 <pushImage>true</pushImage>
285 <id>with-system-proxy</id>
289 <groupId>com.spotify</groupId>
290 <artifactId>docker-maven-plugin</artifactId>
293 <http_proxy>${env.http_proxy}</http_proxy>
305 <artifactId>maven-project-info-reports-plugin</artifactId>
309 <report>dependencies</report>
310 <report>license</report>
317 <artifactId>maven-javadoc-plugin</artifactId>
319 <failOnError>false</failOnError>
320 <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
322 <groupId>org.umlgraph</groupId>
323 <artifactId>umlgraph</artifactId>
324 <version>5.6</version>
326 <additionalparam>-views</additionalparam>
327 <useStandardDocletOptions>true</useStandardDocletOptions>
333 <dependencyManagement>
336 <!-- Import dependency management from Spring Boot -->
337 <groupId>org.springframework.boot</groupId>
338 <artifactId>spring-boot-dependencies</artifactId>
339 <version>2.0.3.RELEASE</version>
341 <scope>import</scope>
344 </dependencyManagement>
347 <!-- JSON RELATED -->
349 <groupId>com.googlecode.json-simple</groupId>
350 <artifactId>json-simple</artifactId>
351 <version>1.1.1</version>
354 <groupId>com.github.fge</groupId>
355 <artifactId>json-schema-validator</artifactId>
356 <version>2.2.6</version>
359 <groupId>com.github.fge</groupId>
360 <artifactId>json-schema-core</artifactId>
361 <version>1.2.5</version>
364 <groupId>com.google.code.gson</groupId>
365 <artifactId>gson</artifactId>
366 <version>2.3.1</version>
369 <groupId>org.json</groupId>
370 <artifactId>json</artifactId>
371 <version>20160810</version>
374 <!-- REST API RELATED -->
376 <groupId>com.att.nsa</groupId>
377 <artifactId>cambriaClient</artifactId>
378 <version>0.0.1</version>
381 <groupId>com.mashape.unirest</groupId>
382 <artifactId>unirest-java</artifactId>
383 <version>1.4.9</version>
386 <!-- MISCELLANEOUS -->
388 <groupId>commons-collections</groupId>
389 <artifactId>commons-collections</artifactId>
390 <version>3.2.2</version>
393 <groupId>commons-configuration</groupId>
394 <artifactId>commons-configuration</artifactId>
395 <version>1.10</version>
398 <groupId>io.vavr</groupId>
399 <artifactId>vavr</artifactId>
400 <version>0.9.2</version>
404 <groupId>org.springframework.boot</groupId>
405 <artifactId>spring-boot-starter-security</artifactId>
408 <groupId>org.springframework.boot</groupId>
409 <artifactId>spring-boot-starter-logging</artifactId>
414 <groupId>org.springframework.boot</groupId>
415 <artifactId>spring-boot-starter-web</artifactId>
418 <groupId>org.springframework.security</groupId>
419 <artifactId>spring-security-config</artifactId>
422 <groupId>org.springframework.boot</groupId>
423 <artifactId>spring-boot-starter-log4j</artifactId>
424 <version>1.3.8.RELEASE</version>
429 <groupId>org.mockito</groupId>
430 <artifactId>mockito-core</artifactId>
431 <version>2.18.0</version>
435 <groupId>junit</groupId>
436 <artifactId>junit</artifactId>
437 <version>4.12</version>
441 <groupId>org.assertj</groupId>
442 <artifactId>assertj-core</artifactId>
443 <version>3.8.0</version>
447 <groupId>com.google.jimfs</groupId>
448 <artifactId>jimfs</artifactId>
449 <version>1.1</version>
453 <groupId>com.github.tomakehurst</groupId>
454 <artifactId>wiremock-standalone</artifactId>
455 <version>2.17.0</version>
462 <id>external-repository</id>
463 <url>https://oss.sonatype.org/content/repositories</url>
468 <!-- Black Duck plugin dependencies -->
471 <name>JCenter Repository</name>
472 <url>http://jcenter.bintray.com</url>
476 <name>Restlet Repository</name>
477 <url>http://maven.restlet.com</url>
479 </pluginRepositories>