2 ============LICENSE_START==================================================
4 * ===========================================================================
5 * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6 * Modifications Copyright (C) 2018 Nokia. All rights reserved.
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
12 * http://www.apache.org/licenses/LICENSE-2.0
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====================================================
21 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
24 <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/maven-v4_0_0.xsd">
25 <modelVersion>4.0.0</modelVersion>
27 <groupId>org.onap.dmaap.datarouter</groupId>
28 <artifactId>parent</artifactId>
29 <version>1.0.7-SNAPSHOT</version>
30 <relativePath>../pom.xml</relativePath>
32 <artifactId>datarouter-subscriber</artifactId>
33 <packaging>jar</packaging>
34 <name>datarouter-subscriber</name>
36 <sonar.language>java</sonar.language>
37 <sonar.skip>false</sonar.skip>
38 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
39 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
41 <docker.location>${basedir}/target/${artifactId}</docker.location>
42 <datarouter.prov.image.name>onap/dmaap/datarouter-subscriber</datarouter.prov.image.name>
46 <groupId>com.google.guava</groupId>
47 <artifactId>guava</artifactId>
48 <version>${google.guava.version}</version>
51 <groupId>commons-codec</groupId>
52 <artifactId>commons-codec</artifactId>
53 <version>${commons-codec.version}</version>
56 <groupId>org.eclipse.jetty</groupId>
57 <artifactId>jetty-server</artifactId>
58 <version>${jetty.version}</version>
61 <groupId>org.eclipse.jetty</groupId>
62 <artifactId>jetty-continuation</artifactId>
63 <version>${jetty.version}</version>
66 <groupId>org.eclipse.jetty</groupId>
67 <artifactId>jetty-util</artifactId>
68 <version>${jetty.version}</version>
71 <groupId>org.eclipse.jetty</groupId>
72 <artifactId>jetty-deploy</artifactId>
73 <version>${jetty.version}</version>
76 <groupId>org.eclipse.jetty</groupId>
77 <artifactId>jetty-servlet</artifactId>
78 <version>${jetty.version}</version>
81 <groupId>org.eclipse.jetty</groupId>
82 <artifactId>jetty-servlets</artifactId>
83 <version>${jetty.version}</version>
86 <groupId>org.eclipse.jetty</groupId>
87 <artifactId>jetty-http</artifactId>
88 <version>${jetty.version}</version>
91 <groupId>org.eclipse.jetty</groupId>
92 <artifactId>jetty-security</artifactId>
93 <version>${jetty.version}</version>
96 <groupId>org.eclipse.jetty</groupId>
97 <artifactId>jetty-websocket</artifactId>
98 <version>${jetty.websocket.version}</version>
101 <groupId>org.eclipse.jetty</groupId>
102 <artifactId>jetty-io</artifactId>
103 <version>${jetty.version}</version>
106 <groupId>com.thoughtworks.xstream</groupId>
107 <artifactId>xstream</artifactId>
108 <version>${thoughtworks.version}</version>
111 <groupId>ch.qos.logback</groupId>
112 <artifactId>logback-classic</artifactId>
113 <version>${qos.logback.version}</version>
114 <scope>compile</scope>
117 <groupId>ch.qos.logback</groupId>
118 <artifactId>logback-core</artifactId>
119 <version>${qos.logback.version}</version>
120 <scope>compile</scope>
123 <groupId>org.apache.httpcomponents</groupId>
124 <artifactId>httpclient</artifactId>
125 <version>4.5.3</version>
128 <groupId>org.sonatype.http-testing-harness</groupId>
129 <artifactId>junit-runner</artifactId>
130 <version>0.11</version>
133 <groupId>org.databene</groupId>
134 <artifactId>contiperf</artifactId>
139 <groupId>junit</groupId>
140 <artifactId>junit</artifactId>
141 <version>4.10</version>
145 <groupId>log4j</groupId>
146 <artifactId>log4j</artifactId>
147 <version>1.2.17</version>
148 <scope>compile</scope>
151 <groupId>org.apache.commons</groupId>
152 <artifactId>commons-io</artifactId>
153 <version>1.3.2</version>
160 <skipDockerBuild>false</skipDockerBuild>
161 <skipDockerTag>false</skipDockerTag>
162 <skipTests>true</skipTests>
167 <groupId>com.spotify</groupId>
168 <artifactId>docker-maven-plugin</artifactId>
169 <version>${docker.maven.plugin.version}</version>
171 <imageName>${onap.nexus.dockerregistry.daily}/${datarouter.prov.image.name}</imageName>
172 <baseImage>java:8</baseImage>
173 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
174 <skipDockerBuild>false</skipDockerBuild>
176 <imageTag>${project.version}</imageTag>
178 <forceTags>true</forceTags>
179 <entryPoint>["/startup.sh", "start"]</entryPoint>
182 <targetPath>/opt</targetPath>
183 <directory>${project.build.directory}/opt</directory>
186 <targetPath>/</targetPath>
187 <directory>${docker.location}</directory>
188 <include>startup.sh</include>
192 <run>chmod 0700 /startup.sh</run>
195 <expose>8080</expose>
196 <expose>8443</expose>
205 <finalName>datarouter-subscriber</finalName>
208 <directory>src/main/resources</directory>
209 <filtering>true</filtering>
211 <include>**/*.properties</include>
215 <directory>src/main/resources</directory>
216 <filtering>true</filtering>
218 <include>**/subscriber.properties</include>
222 <directory>src/main/resources</directory>
223 <filtering>true</filtering>
225 <include>**/log4j.properties</include>
229 <directory>src/test/resources</directory>
230 <filtering>true</filtering>
232 <include>**/log4j.properties</include>
238 <artifactId>maven-assembly-plugin</artifactId>
239 <version>2.4</version>
242 <descriptorRef>jar-with-dependencies</descriptorRef>
244 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
247 <addClasspath>true</addClasspath>
248 <mainClass>org.onap.dmaap.datarouter.subscriber.SubscriberMain</mainClass>
254 <id>make-assembly</id>
255 <!-- this is used for inheritance merges -->
256 <phase>package</phase>
257 <!-- bind to the packaging phase -->
265 <groupId>org.apache.maven.plugins</groupId>
266 <artifactId>maven-compiler-plugin</artifactId>
271 <version>3.6.0</version>
274 <artifactId>maven-resources-plugin</artifactId>
275 <version>2.7</version>
278 <id>copy-docker-file</id>
279 <phase>package</phase>
281 <goal>copy-resources</goal>
284 <outputDirectory>${docker.location}</outputDirectory>
285 <overwrite>true</overwrite>
288 <directory>${basedir}/src/main/resources/docker</directory>
289 <filtering>true</filtering>
291 <include>**/*</include>
298 <id>copy-resources-1</id>
299 <phase>validate</phase>
301 <goal>copy-resources</goal>
304 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
307 <directory>${project.basedir}/src/main/resources</directory>
309 <include>**/*.jar</include>
316 <id>copy-resources-2</id>
317 <phase>validate</phase>
319 <goal>copy-resources</goal>
322 <outputDirectory>${basedir}/target/opt/app/subscriber/etc</outputDirectory>
325 <directory>${basedir}/src/main/resources</directory>
327 <include>*.properties</include>
336 <groupId>org.apache.maven.plugins</groupId>
337 <artifactId>maven-dependency-plugin</artifactId>
338 <version>2.10</version>
341 <id>copy-dependencies</id>
342 <phase>package</phase>
344 <goal>copy-dependencies</goal>
347 <outputDirectory>${project.build.directory}/opt/app/subscriber/lib</outputDirectory>
348 <overWriteReleases>false</overWriteReleases>
349 <overWriteSnapshots>false</overWriteSnapshots>
350 <overWriteIfNewer>true</overWriteIfNewer>
356 <groupId>org.apache.maven.plugins</groupId>
357 <artifactId>maven-source-plugin</artifactId>
358 <version>2.2.1</version>
361 <id>attach-sources</id>
363 <goal>jar-no-fork</goal>
369 <groupId>org.jacoco</groupId>
370 <artifactId>jacoco-maven-plugin</artifactId>
371 <version>${jacoco.version}</version>
374 <exclude>**/gen/**</exclude>
375 <exclude>**/generated-sources/**</exclude>
376 <exclude>**/yang-gen/**</exclude>
377 <exclude>**/pax/**</exclude>
382 <id>pre-unit-test</id>
384 <goal>prepare-agent</goal>
387 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
388 <propertyName>surefireArgLine</propertyName>
392 <id>post-unit-test</id>
398 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
399 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
403 <id>pre-integration-test</id>
404 <phase>pre-integration-test</phase>
406 <goal>prepare-agent</goal>
409 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
410 <propertyName>failsafeArgLine</propertyName>
414 <id>post-integration-test</id>
415 <phase>post-integration-test</phase>
420 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
421 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>