blob: 5187a6b14c7d96b90467c979926507986d351446 [file] [log] [blame]
Fiachra Corcoran19620eb2018-08-27 17:59:42 +01001<!--
2 ============LICENSE_START==================================================
3 * org.onap.dmaap
4 * ===========================================================================
5 * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6 * ===========================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END====================================================
19 *
20 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
21 *
22-->
23<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">
24 <modelVersion>4.0.0</modelVersion>
25 <parent>
26 <groupId>org.onap.dmaap.datarouter</groupId>
27 <artifactId>parent</artifactId>
28 <version>1.0.1-SNAPSHOT</version>
29 <relativePath>../pom.xml</relativePath>
30 </parent>
31 <artifactId>datarouter-subscriber</artifactId>
32 <packaging>jar</packaging>
33 <name>datarouter-subscriber</name>
34 <properties>
35 <sonar.language>java</sonar.language>
36 <sonar.skip>false</sonar.skip>
37 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
38 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
39
40 <docker.location>${basedir}/target/${artifactId}</docker.location>
41 <datarouter.prov.image.name>onap/dmaap/datarouter-subscriber</datarouter.prov.image.name>
42 </properties>
43 <dependencies>
44 <dependency>
edepaul12c71a52018-09-07 16:27:01 +010045 <groupId>commons-codec</groupId>
46 <artifactId>commons-codec</artifactId>
47 <version>${commons-codec.version}</version>
48 </dependency>
49 <dependency>
Fiachra Corcoran19620eb2018-08-27 17:59:42 +010050 <groupId>org.eclipse.jetty</groupId>
51 <artifactId>jetty-server</artifactId>
52 <version>${jetty.version}</version>
53 </dependency>
54 <dependency>
55 <groupId>org.eclipse.jetty</groupId>
56 <artifactId>jetty-continuation</artifactId>
57 <version>${jetty.version}</version>
58 </dependency>
59 <dependency>
60 <groupId>org.eclipse.jetty</groupId>
61 <artifactId>jetty-util</artifactId>
62 <version>${jetty.version}</version>
63 </dependency>
64 <dependency>
65 <groupId>org.eclipse.jetty</groupId>
66 <artifactId>jetty-deploy</artifactId>
67 <version>${jetty.version}</version>
68 </dependency>
69 <dependency>
70 <groupId>org.eclipse.jetty</groupId>
71 <artifactId>jetty-servlet</artifactId>
72 <version>${jetty.version}</version>
73 </dependency>
74 <dependency>
75 <groupId>org.eclipse.jetty</groupId>
76 <artifactId>jetty-servlets</artifactId>
77 <version>${jetty.version}</version>
78 </dependency>
79 <dependency>
80 <groupId>org.eclipse.jetty</groupId>
81 <artifactId>jetty-http</artifactId>
82 <version>${jetty.version}</version>
83 </dependency>
84 <dependency>
85 <groupId>org.eclipse.jetty</groupId>
86 <artifactId>jetty-security</artifactId>
87 <version>${jetty.version}</version>
88 </dependency>
89 <dependency>
90 <groupId>org.eclipse.jetty</groupId>
91 <artifactId>jetty-websocket</artifactId>
92 <version>${jetty.websocket.version}</version>
93 </dependency>
94 <dependency>
95 <groupId>org.eclipse.jetty</groupId>
96 <artifactId>jetty-io</artifactId>
97 <version>${jetty.version}</version>
98 </dependency>
99 <dependency>
econward6e999b2018-09-05 16:10:01 +0000100 <groupId>com.thoughtworks.xstream</groupId>
101 <artifactId>xstream</artifactId>
102 <version>${thoughtworks.version}</version>
103 </dependency>
104 <dependency>
105 <groupId>ch.qos.logback</groupId>
106 <artifactId>logback-classic</artifactId>
107 <version>${qos.logback.version}</version>
108 <scope>compile</scope>
109 </dependency>
110 <dependency>
111 <groupId>ch.qos.logback</groupId>
112 <artifactId>logback-core</artifactId>
113 <version>${qos.logback.version}</version>
114 <scope>compile</scope>
115 </dependency>
116 <dependency>
Fiachra Corcoran19620eb2018-08-27 17:59:42 +0100117 <groupId>org.apache.httpcomponents</groupId>
118 <artifactId>httpclient</artifactId>
119 <version>4.5.3</version>
120 </dependency>
121 <dependency>
122 <groupId>org.sonatype.http-testing-harness</groupId>
123 <artifactId>junit-runner</artifactId>
124 <version>0.11</version>
125 <exclusions>
126 <exclusion>
127 <groupId>org.databene</groupId>
128 <artifactId>contiperf</artifactId>
129 </exclusion>
130 </exclusions>
131 </dependency>
132 <dependency>
133 <groupId>junit</groupId>
134 <artifactId>junit</artifactId>
135 <version>4.10</version>
136 <scope>test</scope>
137 </dependency>
138 <dependency>
139 <groupId>log4j</groupId>
140 <artifactId>log4j</artifactId>
141 <version>1.2.17</version>
142 <scope>compile</scope>
143 </dependency>
144 </dependencies>
145 <profiles>
146 <profile>
147 <id>docker</id>
148 <properties>
149 <skipDockerBuild>false</skipDockerBuild>
150 <skipDockerTag>false</skipDockerTag>
151 <skipTests>true</skipTests>
152 </properties>
153 <build>
154 <plugins>
155 <plugin>
156 <groupId>com.spotify</groupId>
157 <artifactId>docker-maven-plugin</artifactId>
158 <version>1.0.0</version>
159 <configuration>
160 <imageName>${onap.nexus.dockerregistry.daily}/${datarouter.prov.image.name}</imageName>
161 <dockerDirectory>${docker.location}</dockerDirectory>
162 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
163 <skipDockerBuild>false</skipDockerBuild>
164 <imageTags>
165 <imageTag>${project.version}</imageTag>
166 <imageTag>latest</imageTag>
167 </imageTags>
168 <forceTags>true</forceTags>
169 <resources>
170 <resource>
171 <targetPath>/</targetPath>
172 <directory>${project.basedir}</directory>
173 <excludes>
174 <exclude>target/**/*</exclude>
175 <exclude>pom.xml</exclude>
176 </excludes>
177 </resource>
178
179 <resource>
180 <targetPath>/</targetPath>
181 <directory>${project.build.directory}</directory>
182 <include>**/**</include>
183 </resource>
184 </resources>
185 </configuration>
186 </plugin>
187 </plugins>
188 </build>
189 </profile>
190 </profiles>
191 <build>
192 <finalName>datarouter-subscriber</finalName>
193 <resources>
194 <resource>
195 <directory>src/main/resources</directory>
196 <filtering>true</filtering>
197 <includes>
198 <include>**/*.properties</include>
199 </includes>
200 </resource>
201 <resource>
202 <directory>src/main/resources</directory>
203 <filtering>true</filtering>
204 <includes>
205 <include>**/subscriber.properties</include>
206 </includes>
207 </resource>
208 <resource>
209 <directory>src/main/resources</directory>
210 <filtering>true</filtering>
211 <includes>
212 <include>**/log4j.properties</include>
213 </includes>
214 </resource>
215 <resource>
216 <directory>src/test/resources</directory>
217 <filtering>true</filtering>
218 <includes>
219 <include>**/log4j.properties</include>
220 </includes>
221 </resource>
222 </resources>
223 <plugins>
224 <plugin>
225 <artifactId>maven-assembly-plugin</artifactId>
226 <version>2.4</version>
227 <configuration>
228 <descriptorRefs>
229 <descriptorRef>jar-with-dependencies</descriptorRef>
230 </descriptorRefs>
231 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
232 <archive>
233 <manifest>
234 <addClasspath>true</addClasspath>
235 <mainClass>org.onap.dmaap.datarouter.subscriber.Subscriber</mainClass>
236 </manifest>
237 </archive>
238 </configuration>
239 <executions>
240 <execution>
241 <id>make-assembly</id>
242 <!-- this is used for inheritance merges -->
243 <phase>package</phase>
244 <!-- bind to the packaging phase -->
245 <goals>
246 <goal>single</goal>
247 </goals>
248 </execution>
249 </executions>
250 </plugin>
251 <plugin>
252 <groupId>org.apache.maven.plugins</groupId>
253 <artifactId>maven-compiler-plugin</artifactId>
254 <configuration>
255 <source>1.8</source>
256 <target>1.8</target>
257 </configuration>
258 <version>3.6.0</version>
259 </plugin>
260 <plugin>
261 <artifactId>maven-resources-plugin</artifactId>
262 <version>2.7</version>
263 <executions>
264 <execution>
265 <id>copy-docker-file</id>
266 <phase>package</phase>
267 <goals>
268 <goal>copy-resources</goal>
269 </goals>
270 <configuration>
271 <outputDirectory>${docker.location}</outputDirectory>
272 <overwrite>true</overwrite>
273 <resources>
274 <resource>
275 <directory>${basedir}/src/main/resources/docker</directory>
276 <filtering>true</filtering>
277 <includes>
278 <include>**/*</include>
279 </includes>
280 </resource>
281 </resources>
282 </configuration>
283 </execution>
284 <execution>
285 <id>copy-resources-1</id>
286 <phase>validate</phase>
287 <goals>
288 <goal>copy-resources</goal>
289 </goals>
290 <configuration>
291 <outputDirectory>${basedir}/target/opt/app/subscriber/lib</outputDirectory>
292 <resources>
293 <resource>
294 <directory>${project.basedir}/src/main/resources</directory>
295 <includes>
296 <include>**/*.jar</include>
297 </includes>
298 </resource>
299 </resources>
300 </configuration>
301 </execution>
302 <execution>
303 <id>copy-resources-2</id>
304 <phase>validate</phase>
305 <goals>
306 <goal>copy-resources</goal>
307 </goals>
308 <configuration>
309 <outputDirectory>${basedir}/target/opt/app/subscriber/etc</outputDirectory>
310 <resources>
311 <resource>
312 <directory>${basedir}/src/main/resources</directory>
313 <includes>
314 <include>*.properties</include>
315 </includes>
316 </resource>
317 </resources>
318 </configuration>
319 </execution>
320 </executions>
321 </plugin>
322 <plugin>
323 <groupId>org.apache.maven.plugins</groupId>
324 <artifactId>maven-dependency-plugin</artifactId>
325 <version>2.10</version>
326 <executions>
327 <execution>
328 <id>copy-dependencies</id>
329 <phase>package</phase>
330 <goals>
331 <goal>copy-dependencies</goal>
332 </goals>
333 <configuration>
334 <outputDirectory>${project.build.directory}/opt/app/subscriber/lib</outputDirectory>
335 <overWriteReleases>false</overWriteReleases>
336 <overWriteSnapshots>false</overWriteSnapshots>
337 <overWriteIfNewer>true</overWriteIfNewer>
338 </configuration>
339 </execution>
340 </executions>
341 </plugin>
342 <plugin>
343 <groupId>org.apache.maven.plugins</groupId>
344 <artifactId>maven-source-plugin</artifactId>
345 <version>2.2.1</version>
346 <executions>
347 <execution>
348 <id>attach-sources</id>
349 <goals>
350 <goal>jar-no-fork</goal>
351 </goals>
352 </execution>
353 </executions>
354 </plugin>
355 <plugin>
356 <groupId>org.jacoco</groupId>
357 <artifactId>jacoco-maven-plugin</artifactId>
358 <version>${jacoco.version}</version>
359 <configuration>
360 <excludes>
361 <exclude>**/gen/**</exclude>
362 <exclude>**/generated-sources/**</exclude>
363 <exclude>**/yang-gen/**</exclude>
364 <exclude>**/pax/**</exclude>
365 </excludes>
366 </configuration>
367 <executions>
368 <execution>
369 <id>pre-unit-test</id>
370 <goals>
371 <goal>prepare-agent</goal>
372 </goals>
373 <configuration>
374 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
375 <propertyName>surefireArgLine</propertyName>
376 </configuration>
377 </execution>
378 <execution>
379 <id>post-unit-test</id>
380 <phase>test</phase>
381 <goals>
382 <goal>report</goal>
383 </goals>
384 <configuration>
385 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
386 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
387 </configuration>
388 </execution>
389 <execution>
390 <id>pre-integration-test</id>
391 <phase>pre-integration-test</phase>
392 <goals>
393 <goal>prepare-agent</goal>
394 </goals>
395 <configuration>
396 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
397 <propertyName>failsafeArgLine</propertyName>
398 </configuration>
399 </execution>
400 <execution>
401 <id>post-integration-test</id>
402 <phase>post-integration-test</phase>
403 <goals>
404 <goal>report</goal>
405 </goals>
406 <configuration>
407 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
408 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
409 </configuration>
410 </execution>
411 </executions>
412 </plugin>
413 </plugins>
414 </build>
415</project>