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.8-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}:${project.version}</imageName>
172 <baseImage>java:8</baseImage>
173 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
174 <skipDockerBuild>false</skipDockerBuild>
175 <forceTags>true</forceTags>
176 <entryPoint>["/startup.sh", "start"]</entryPoint>
179 <targetPath>/opt</targetPath>
180 <directory>${project.build.directory}/opt</directory>
183 <targetPath>/</targetPath>
184 <directory>${docker.location}</directory>
185 <include>startup.sh</include>
189 <run>chmod 0700 /startup.sh</run>
192 <expose>8080</expose>
193 <expose>8443</expose>
202 <finalName>datarouter-subscriber</finalName>
205 <directory>src/main/resources</directory>
206 <filtering>true</filtering>
208 <include>**/*.properties</include>
212 <directory>src/main/resources</directory>
213 <filtering>true</filtering>
215 <include>**/subscriber.properties</include>
219 <directory>src/main/resources</directory>
220 <filtering>true</filtering>
222 <include>**/log4j.properties</include>
226 <directory>src/test/resources</directory>
227 <filtering>true</filtering>
229 <include>**/log4j.properties</include>
235 <artifactId>maven-assembly-plugin</artifactId>
236 <version>2.4</version>
239 <descriptorRef>jar-with-dependencies</descriptorRef>
241 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
244 <addClasspath>true</addClasspath>
245 <mainClass>org.onap.dmaap.datarouter.subscriber.SubscriberMain</mainClass>
251 <id>make-assembly</id>
252 <!-- this is used for inheritance merges -->
253 <phase>package</phase>
254 <!-- bind to the packaging phase -->
262 <groupId>org.apache.maven.plugins</groupId>
263 <artifactId>maven-compiler-plugin</artifactId>
268 <version>3.6.0</version>
271 <artifactId>maven-resources-plugin</artifactId>
272 <version>2.7</version>
275 <id>copy-docker-file</id>
276 <phase>package</phase>
278 <goal>copy-resources</goal>
281 <outputDirectory>${docker.location}</outputDirectory>
282 <overwrite>true</overwrite>
285 <directory>${basedir}/src/main/resources/docker</directory>
286 <filtering>true</filtering>
288 <include>**/*</include>
295 <id>copy-resources-1</id>
296 <phase>validate</phase>
298 <goal>copy-resources</goal>
301 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
304 <directory>${project.basedir}/src/main/resources</directory>
306 <include>**/*.jar</include>
313 <id>copy-resources-2</id>
314 <phase>validate</phase>
316 <goal>copy-resources</goal>
319 <outputDirectory>${basedir}/target/opt/app/subscriber/etc</outputDirectory>
322 <directory>${basedir}/src/main/resources</directory>
324 <include>*.properties</include>
333 <groupId>org.apache.maven.plugins</groupId>
334 <artifactId>maven-dependency-plugin</artifactId>
335 <version>2.10</version>
338 <id>copy-dependencies</id>
339 <phase>package</phase>
341 <goal>copy-dependencies</goal>
344 <outputDirectory>${project.build.directory}/opt/app/subscriber/lib</outputDirectory>
345 <overWriteReleases>false</overWriteReleases>
346 <overWriteSnapshots>false</overWriteSnapshots>
347 <overWriteIfNewer>true</overWriteIfNewer>
353 <groupId>org.apache.maven.plugins</groupId>
354 <artifactId>maven-source-plugin</artifactId>
355 <version>2.2.1</version>
358 <id>attach-sources</id>
360 <goal>jar-no-fork</goal>
366 <groupId>org.jacoco</groupId>
367 <artifactId>jacoco-maven-plugin</artifactId>
368 <version>${jacoco.version}</version>
371 <exclude>**/gen/**</exclude>
372 <exclude>**/generated-sources/**</exclude>
373 <exclude>**/yang-gen/**</exclude>
374 <exclude>**/pax/**</exclude>
379 <id>pre-unit-test</id>
381 <goal>prepare-agent</goal>
384 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
385 <propertyName>surefireArgLine</propertyName>
389 <id>post-unit-test</id>
395 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
396 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
400 <id>pre-integration-test</id>
401 <phase>pre-integration-test</phase>
403 <goal>prepare-agent</goal>
406 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
407 <propertyName>failsafeArgLine</propertyName>
411 <id>post-integration-test</id>
412 <phase>post-integration-test</phase>
417 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
418 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>