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>2.0.1-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>
177 <imageTag>latest</imageTag>
179 <forceTags>true</forceTags>
180 <entryPoint>["/startup.sh", "start"]</entryPoint>
183 <targetPath>/opt</targetPath>
184 <directory>${project.build.directory}/opt</directory>
187 <targetPath>/</targetPath>
188 <directory>${docker.location}</directory>
189 <include>startup.sh</include>
193 <run>chmod 0700 /startup.sh</run>
196 <expose>8080</expose>
197 <expose>8443</expose>
206 <finalName>datarouter-subscriber</finalName>
209 <directory>src/main/resources</directory>
210 <filtering>true</filtering>
212 <include>**/*.properties</include>
216 <directory>src/main/resources</directory>
217 <filtering>true</filtering>
219 <include>**/subscriber.properties</include>
223 <directory>src/main/resources</directory>
224 <filtering>true</filtering>
226 <include>**/log4j.properties</include>
230 <directory>src/test/resources</directory>
231 <filtering>true</filtering>
233 <include>**/log4j.properties</include>
239 <artifactId>maven-assembly-plugin</artifactId>
240 <version>2.4</version>
243 <descriptorRef>jar-with-dependencies</descriptorRef>
245 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
248 <addClasspath>true</addClasspath>
249 <mainClass>org.onap.dmaap.datarouter.subscriber.SubscriberMain</mainClass>
255 <id>make-assembly</id>
256 <!-- this is used for inheritance merges -->
257 <phase>package</phase>
258 <!-- bind to the packaging phase -->
266 <groupId>org.apache.maven.plugins</groupId>
267 <artifactId>maven-compiler-plugin</artifactId>
272 <version>3.6.0</version>
275 <artifactId>maven-resources-plugin</artifactId>
276 <version>2.7</version>
279 <id>copy-docker-file</id>
280 <phase>package</phase>
282 <goal>copy-resources</goal>
285 <outputDirectory>${docker.location}</outputDirectory>
286 <overwrite>true</overwrite>
289 <directory>${basedir}/src/main/resources/docker</directory>
290 <filtering>true</filtering>
292 <include>**/*</include>
299 <id>copy-resources-1</id>
300 <phase>validate</phase>
302 <goal>copy-resources</goal>
305 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
308 <directory>${project.basedir}/src/main/resources</directory>
310 <include>**/*.jar</include>
317 <id>copy-resources-2</id>
318 <phase>validate</phase>
320 <goal>copy-resources</goal>
323 <outputDirectory>${basedir}/target/opt/app/subscriber/etc</outputDirectory>
326 <directory>${basedir}/src/main/resources</directory>
328 <include>*.properties</include>
337 <groupId>org.apache.maven.plugins</groupId>
338 <artifactId>maven-dependency-plugin</artifactId>
339 <version>2.10</version>
342 <id>copy-dependencies</id>
343 <phase>package</phase>
345 <goal>copy-dependencies</goal>
348 <outputDirectory>${project.build.directory}/opt/app/subscriber/lib</outputDirectory>
349 <overWriteReleases>false</overWriteReleases>
350 <overWriteSnapshots>false</overWriteSnapshots>
351 <overWriteIfNewer>true</overWriteIfNewer>
357 <groupId>org.apache.maven.plugins</groupId>
358 <artifactId>maven-source-plugin</artifactId>
359 <version>2.2.1</version>
362 <id>attach-sources</id>
364 <goal>jar-no-fork</goal>
370 <groupId>org.jacoco</groupId>
371 <artifactId>jacoco-maven-plugin</artifactId>
372 <version>${jacoco.version}</version>
375 <exclude>**/gen/**</exclude>
376 <exclude>**/generated-sources/**</exclude>
377 <exclude>**/yang-gen/**</exclude>
378 <exclude>**/pax/**</exclude>
383 <id>pre-unit-test</id>
385 <goal>prepare-agent</goal>
388 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
389 <propertyName>surefireArgLine</propertyName>
393 <id>post-unit-test</id>
399 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
400 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
404 <id>pre-integration-test</id>
405 <phase>pre-integration-test</phase>
407 <goal>prepare-agent</goal>
410 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
411 <propertyName>failsafeArgLine</propertyName>
415 <id>post-integration-test</id>
416 <phase>post-integration-test</phase>
421 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
422 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>