Upversion to oparent 2.0.0
[aai/spike.git] / pom.xml
1 <?xml version="1.0"?>
2 <!--
3     ============LICENSE_START=======================================================
4     org.onap.aai
5     ================================================================================
6     Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
7     Copyright © 2017-2018 Amdocs
8     ================================================================================
9     Licensed under the Apache License, Version 2.0 (the "License");
10     you may not use this file except in compliance with the License.
11     You may obtain a copy of the License at
12
13           http://www.apache.org/licenses/LICENSE-2.0
14
15     Unless required by applicable law or agreed to in writing, software
16     distributed under the License is distributed on an "AS IS" BASIS,
17     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18     See the License for the specific language governing permissions and
19     limitations under the License.
20     ============LICENSE_END=========================================================
21 -->
22 <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/xsd/maven-4.0.0.xsd">
23     <modelVersion>4.0.0</modelVersion>
24
25     <parent>
26         <groupId>org.onap.oparent</groupId>
27         <artifactId>oparent</artifactId>
28         <version>2.0.0</version>
29         <relativePath/>
30     </parent>
31
32     <groupId>org.onap.aai</groupId>
33     <artifactId>spike</artifactId>
34     <version>1.5.0-SNAPSHOT</version>
35     <name>aai-spike</name>
36
37     <properties>
38         <docker.location>${basedir}/target</docker.location>
39         <event.client.version>1.5.0</event.client.version>
40         <version.aai-schema>1.5.0</version.aai-schema>
41         <version.aai-schema-ingest>1.4.1</version.aai-schema-ingest>
42         <!-- Minimum code coverage percentage. Please update this figure as coverage increases to prevent any drops in
43          coverage caused by new changes. Note that this figure cannot be lower than the ONAP requirement of 0.55 -->
44         <jacoco.line.coverage.limit>0.55</jacoco.line.coverage.limit>
45         <jacoco.report.directory>${project.build.directory}/code-coverage</jacoco.report.directory>
46     </properties>
47
48     <dependencyManagement>
49         <dependencies>
50             <dependency>
51                 <!-- Import dependency management from Spring Boot -->
52                 <groupId>org.springframework.boot</groupId>
53                 <artifactId>spring-boot-dependencies</artifactId>
54                 <version>1.5.20.RELEASE</version>
55                 <type>pom</type>
56                 <scope>import</scope>
57             </dependency>
58         </dependencies>
59     </dependencyManagement>
60
61     <dependencies>
62         <dependency>
63             <groupId>org.springframework.boot</groupId>
64             <artifactId>spring-boot-starter-web</artifactId>
65             <exclusions>
66                 <exclusion>
67                     <groupId>org.springframework.boot</groupId>
68                     <artifactId>spring-boot-starter-tomcat</artifactId>
69                 </exclusion>
70             </exclusions>
71         </dependency>
72
73         <dependency>
74             <groupId>org.springframework.boot</groupId>
75             <artifactId>spring-boot-starter-jetty</artifactId>
76         </dependency>
77
78         <dependency>
79             <groupId>org.springframework</groupId>
80             <artifactId>spring-webmvc</artifactId>
81         </dependency>
82
83         <dependency>
84             <groupId>org.springframework.boot</groupId>
85             <artifactId>spring-boot-starter-test</artifactId>
86             <scope>test</scope>
87         </dependency>
88
89         <!-- MODEL -->
90         <dependency>
91             <groupId>org.onap.aai.schema-service</groupId>
92             <artifactId>aai-schema</artifactId>
93             <version>${version.aai-schema}</version>
94         </dependency>
95         <dependency>
96             <groupId>org.onap.aai.aai-common</groupId>
97             <artifactId>aai-schema-ingest</artifactId>
98             <version>${version.aai-schema-ingest}</version>
99             <exclusions>
100                 <exclusion>
101                     <groupId>org.powermock</groupId>
102                     <artifactId>*</artifactId>
103                 </exclusion>
104             </exclusions>
105         </dependency>
106
107         <!-- EVENT CLIENT -->
108         <dependency>
109             <groupId>org.onap.aai.event-client</groupId>
110             <artifactId>event-client-api</artifactId>
111             <version>${event.client.version}</version>
112         </dependency>
113         <dependency>
114             <groupId>org.onap.aai.event-client</groupId>
115             <artifactId>event-client-dmaap</artifactId>
116             <version>${event.client.version}</version>
117             <exclusions>
118                 <exclusion>
119                     <groupId>com.sun.jersey</groupId>
120                     <artifactId>jersey-client</artifactId>
121                 </exclusion>
122             </exclusions>
123         </dependency>
124         <dependency>
125             <groupId>org.onap.aai.event-client</groupId>
126             <artifactId>event-client-kafka</artifactId>
127             <version>${event.client.version}</version>
128         </dependency>
129         <dependency>
130            <groupId>org.onap.aai.event-client</groupId>
131            <artifactId>event-client-rabbitmq</artifactId>
132            <version>${event.client.version}</version>
133         </dependency>
134
135         <dependency>
136             <groupId>org.apache.commons</groupId>
137             <artifactId>commons-lang3</artifactId>
138             <version>3.7</version>
139         </dependency>
140
141         <dependency>
142             <groupId>org.codehaus.jackson</groupId>
143             <artifactId>jackson-mapper-asl</artifactId>
144             <version>1.4.5</version>
145         </dependency>
146
147         <dependency>
148             <groupId>commons-io</groupId>
149             <artifactId>commons-io</artifactId>
150             <version>2.4</version>
151         </dependency>
152
153         <!-- Common logging framework -->
154         <dependency>
155             <groupId>org.onap.aai.logging-service</groupId>
156             <artifactId>common-logging</artifactId>
157             <version>1.5.0</version>
158         </dependency>
159
160         <dependency>
161             <groupId>org.onap.aai.logging-service</groupId>
162             <artifactId>logging-api</artifactId>
163             <version>1.5.0</version>
164         </dependency>
165
166         <dependency>
167             <groupId>ch.qos.logback</groupId>
168             <artifactId>logback-core</artifactId>
169         </dependency>
170
171         <dependency>
172             <groupId>com.google.guava</groupId>
173             <artifactId>guava</artifactId>
174         </dependency>
175
176         <dependency>
177             <groupId>org.eclipse.persistence</groupId>
178             <artifactId>eclipselink</artifactId>
179             <version>2.6.2</version>
180         </dependency>
181
182         <dependency>
183             <groupId>org.glassfish.jersey.core</groupId>
184             <artifactId>jersey-client</artifactId>
185         </dependency>
186
187         <dependency>
188             <groupId>org.glassfish.jersey.inject</groupId>
189             <artifactId>jersey-hk2</artifactId>
190             <version>2.26</version>
191         </dependency>
192
193         <dependency>
194             <groupId>com.google.code.gson</groupId>
195             <artifactId>gson</artifactId>
196         </dependency>
197
198         <dependency>
199             <groupId>org.apache.httpcomponents</groupId>
200             <artifactId>httpclient</artifactId>
201             <version>4.5.3</version>
202         </dependency>
203
204         <dependency>
205             <groupId>org.apache.httpcomponents</groupId>
206             <artifactId>httpcore</artifactId>
207             <version>4.4.1</version>
208         </dependency>
209
210         <dependency>
211             <groupId>org.json</groupId>
212             <artifactId>json</artifactId>
213             <version>20160212</version>
214         </dependency>
215
216         <dependency>
217             <groupId>org.skyscreamer</groupId>
218             <artifactId>jsonassert</artifactId>
219             <scope>test</scope>
220         </dependency>
221
222         <dependency>
223             <groupId>org.mockito</groupId>
224             <artifactId>mockito-core</artifactId>
225             <version>2.15.0</version>
226             <scope>test</scope>
227         </dependency>
228     </dependencies>
229
230
231     <build>
232         <finalName>${project.artifactId}</finalName>
233         <plugins>
234           <plugin>
235             <groupId>org.apache.maven.plugins</groupId>
236             <artifactId>maven-deploy-plugin</artifactId>
237           </plugin>
238             <plugin>
239                 <groupId>org.springframework.boot</groupId>
240                 <artifactId>spring-boot-maven-plugin</artifactId>
241                 <version>1.5.20.RELEASE</version>
242                 <executions>
243                     <execution>
244                         <goals>
245                             <goal>repackage</goal>
246                         </goals>
247                     </execution>
248                 </executions>
249             </plugin>
250
251             <plugin>
252                 <groupId>org.apache.maven.plugins</groupId>
253                 <artifactId>maven-resources-plugin</artifactId>
254                 <version>2.7</version>
255                 <executions>
256                     <execution>
257                         <id>copy-docker-file</id>
258                         <phase>package</phase>
259                         <goals>
260                             <goal>copy-resources</goal>
261                         </goals>
262                         <configuration>
263                             <outputDirectory>target</outputDirectory>
264                             <overwrite>true</overwrite>
265                             <resources>
266                                 <resource>
267                                     <directory>${basedir}/src/main/docker</directory>
268                                     <filtering>true</filtering>
269                                     <includes>
270                                         <include>**/*</include>
271                                     </includes>
272                                 </resource>
273                                 <resource>
274                                     <directory>${basedir}</directory>
275                                     <filtering>true</filtering>
276                                     <includes>
277                                         <include>bundleconfig-local/**</include>
278                                     </includes>
279                                 </resource>
280                                 <resource>
281                                     <directory>${basedir}/src/main/bin/</directory>
282                                 </resource>
283                             </resources>
284                         </configuration>
285                     </execution>
286                 </executions>
287             </plugin>
288
289             <plugin>
290                 <groupId>org.jacoco</groupId>
291                 <artifactId>jacoco-maven-plugin</artifactId>
292                 <executions>
293                     <execution>
294                         <id>default-check</id>
295                         <goals>
296                             <goal>check</goal>
297                         </goals>
298                         <configuration>
299                             <dataFile>${jacoco.report.directory}/jacoco-ut.exec</dataFile>
300                             <rules>
301                                 <!--  implementation is needed only for Maven 2  -->
302                                 <rule implementation="org.jacoco.maven.RuleConfiguration">
303                                     <element>BUNDLE</element>
304                                     <limits>
305                                         <limit implementation="org.jacoco.report.check.Limit">
306                                             <counter>LINE</counter>
307                                             <value>COVEREDRATIO</value>
308                                             <minimum>${jacoco.line.coverage.limit}</minimum>
309                                         </limit>
310                                     </limits>
311                                 </rule>
312                             </rules>
313                         </configuration>
314                     </execution>
315                 </executions>
316             </plugin>
317
318             <plugin>
319                 <groupId>org.apache.maven.plugins</groupId>
320                 <artifactId>maven-dependency-plugin</artifactId>
321                 <executions>
322                     <execution>
323                         <id>unpack</id>
324                         <phase>prepare-package</phase>
325                         <goals>
326                             <goal>unpack</goal>
327                         </goals>
328                         <configuration>
329                             <artifactItems>
330                                 <artifactItem>
331                                     <groupId>org.onap.aai.schema-service</groupId>
332                                     <artifactId>aai-schema</artifactId>
333                                     <version>${version.aai-schema}</version>
334                                     <type>jar</type>
335                                     <includes>onap/**/</includes>
336                                     <outputDirectory>${project.build.directory}/bundleconfig-local/etc</outputDirectory>
337                                 </artifactItem>
338                             </artifactItems>
339                         </configuration>
340                     </execution>
341                 </executions>
342             </plugin>
343
344             <plugin>
345                 <groupId>com.spotify</groupId>
346                 <artifactId>docker-maven-plugin</artifactId>
347                 <version>0.4.11</version>
348                 <configuration>
349                     <verbose>true</verbose>
350                     <serverId>docker-hub</serverId>
351                     <imageName>${docker.push.registry}/onap/${project.artifactId}</imageName>
352                     <dockerDirectory>${docker.location}</dockerDirectory>
353                     <imageTags>
354                         <imageTag>latest</imageTag>
355                     </imageTags>
356                     <forceTags>true</forceTags>
357                 </configuration>
358             </plugin>
359
360             <plugin>
361                 <groupId>com.mycila</groupId>
362                 <artifactId>license-maven-plugin</artifactId>
363                 <version>3.0</version>
364                 <configuration>
365                     <header>License.txt</header>
366                     <includes>
367                         <include>src/main/java/**</include>
368                         <include>src/test/java/**</include>
369                         <include>pom.xml</include>
370                     </includes>
371                     <skipExistingHeaders>true</skipExistingHeaders>
372                 </configuration>
373                 <executions>
374                     <execution>
375                         <goals>
376                             <!-- Set goal to "format" to auto update license header. To verify only, set goal to "check". -->
377                             <goal>check</goal>
378                         </goals>
379                         <phase>process-sources</phase>
380                     </execution>
381                 </executions>
382             </plugin>
383         </plugins>
384     </build>
385 </project>