Use newer dbcapi version
[dmaap/buscontroller.git] / pom.xml
1 <?xml version="1.0"?>
2 <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">
3   <modelVersion>4.0.0</modelVersion>
4   <groupId>org.onap.dmaap.buscontroller</groupId>
5   <artifactId>buscontroller</artifactId>
6   <version>${artifact.version}</version>
7   <name>dmaap-buscontroller</name>
8   <parent>
9     <groupId>org.onap.oparent</groupId>
10     <artifactId>oparent</artifactId>
11     <version>1.1.0</version>
12     <relativePath/>
13   </parent>
14     <build>
15     <finalName>buscontroller</finalName>
16
17     <plugins>
18       <plugin>
19         <groupId>org.apache.maven.plugins</groupId>
20         <artifactId>maven-enforcer-plugin</artifactId>
21         <executions>
22           <execution>
23             <id>enforce-no-snapshots</id>
24             <goals>
25               <goal>enforce</goal>
26             </goals>
27             <configuration>
28               <rules>
29                 <requireReleaseDeps>
30                   <message>No Snapshots Allowed!</message>
31                   <excludes>
32                     <exclude>org.onap.dmaap.dbcapi:dbcapi</exclude>
33                   </excludes>
34                 </requireReleaseDeps>
35               </rules>
36               <fail>true</fail>
37             </configuration>
38           </execution>
39         </executions>
40       </plugin>
41
42            <!-- Package an Uber jar -->
43             <plugin>
44                 <groupId>org.apache.maven.plugins</groupId>
45                 <artifactId>maven-shade-plugin</artifactId>
46                 <version>2.4.3</version>
47                 <executions>
48                     <!-- Run shade goal on package phase -->
49                     <execution>
50                         <phase>package</phase>
51                         <goals>
52                             <goal>shade</goal>
53                         </goals>
54                         <configuration>
55                                                         <!-- this filter section is needed to avoid runtime error:
56                                                                 java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
57                                                                 suggestion found at: https://stackoverflow.com/q/999489 
58                                                         -->
59                                                         <filters>
60                                                                 <filter>
61                                                                         <artifact>*:*</artifact>
62                                                                         <excludes>
63                                                                                 <exclude>META-INF/*.SF</exclude>
64                                                                                 <exclude>META-INF/*.DSA</exclude>
65                                                                                 <exclude>META-INF/*.RSA</exclude>
66                                                                         </excludes>
67                                                                 </filter>
68                                                         </filters>
69                             <transformers>
70                                 <!-- NOTE: Need the following transformer else gets "Could not resolve type id 'https' into a subtype" error
71                                 Solution found from here:
72                                 http://stackoverflow.com/questions/27543060/why-does-dropwizard-configuration-is-not-working
73                                 Some more context here:
74                                 https://github.com/dropwizard/dropwizard/issues/455 -->
75                                 <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
76                                 <!-- add Main-Class to manifest file -->
77                                 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
78                                     <mainClass>org.onap.dmaap.dbcapi.server.Main</mainClass>
79                                 </transformer>
80                             </transformers>
81                         </configuration>
82                     </execution>
83                 </executions>
84             </plugin>
85
86
87
88       <plugin>
89                 <groupId>org.sonatype.plugins</groupId>
90                 <artifactId>nexus-staging-maven-plugin</artifactId>
91                 <extensions>true</extensions>
92                 <configuration>
93                     <serverId>ecomp-staging</serverId>
94                     <nexusUrl>${nexusproxy}</nexusUrl>
95                     <stagingProfileId>176c31dfe190a</stagingProfileId>
96                 </configuration>
97             </plugin>
98
99
100         <!-- for Distribution management -->
101                 <plugin>
102                   <groupId>org.apache.maven.plugins</groupId>
103                   <artifactId>maven-site-plugin</artifactId>
104                   <dependencies>
105                         <dependency>
106                           <groupId>org.apache.maven.wagon</groupId>
107                           <artifactId>wagon-webdav-jackrabbit</artifactId>
108                           <version>2.10</version>
109                         </dependency>
110                   </dependencies>
111                 </plugin>
112
113     </plugins>
114     <pluginManagement>
115       <plugins>
116         <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
117         <plugin>
118           <groupId>org.eclipse.m2e</groupId>
119           <artifactId>lifecycle-mapping</artifactId>
120           <version>1.0.0</version>
121           <configuration>
122             <lifecycleMappingMetadata>
123               <pluginExecutions>
124                 <pluginExecution>
125                   <pluginExecutionFilter>
126                     <groupId>org.apache.maven.plugins</groupId>
127                     <artifactId>maven-dependency-plugin</artifactId>
128                     <versionRange>[2.10,)</versionRange>
129                                             <phase>install</phase>
130                         <goals>
131                           <goal>copy-dependencies</goal>
132                         </goals>
133                   </pluginExecutionFilter>
134                   <action>
135                     <ignore/>
136                   </action>
137                 </pluginExecution>
138               </pluginExecutions>
139             </lifecycleMappingMetadata>
140           </configuration>
141         </plugin>
142       </plugins>
143     </pluginManagement>
144   </build>
145         <profiles>
146         <profile>
147                 <id>docker</id>
148                 <build>
149                         <plugins>
150       <plugin>
151                 <groupId>com.spotify</groupId>
152                  <artifactId>docker-maven-plugin</artifactId>
153                  <version>1.0.0</version>
154                  <configuration>
155                                  <imageName>${onap.nexus.dockerregistry.daily}/${docker.image}</imageName>
156                              <dockerDirectory>${project.basedir}</dockerDirectory>
157                                  <serverId>${onap.nexus.dockerregistry.daily}</serverId>
158                                  <imageTags>
159                                                  <imageTag>${artifact.version}</imageTag>
160                                                  <imageTag>latest</imageTag>
161                                  </imageTags>
162                                  <forceTags>true</forceTags>
163                                  <resources>
164                                                  <resource>
165                                                                  <targetPath>/</targetPath>
166                                                                  <directory>${project.basedir}</directory>
167                                                                  <excludes>
168                                                                         <exclude>target/**/*</exclude>
169                                                                         <exclude>pom.xml</exclude>
170                                                                 </excludes>
171                                                  </resource>
172
173                                                  <resource>
174                                                                  <targetPath>/</targetPath>
175                                                                  <directory>${project.build.directory}</directory>
176                                                                  <include>**/**</include>
177                                                  </resource>
178                                  </resources>
179                  </configuration>
180       </plugin>
181                         </plugins>
182                 </build>
183         </profile>
184         </profiles>
185   <dependencyManagement>
186     <dependencies>
187  
188       <dependency>
189         <groupId>org.glassfish.jersey</groupId>
190         <artifactId>jersey-bom</artifactId>
191         <version>${jersey.version}</version>
192         <type>pom</type>
193         <scope>import</scope>
194       </dependency>
195     </dependencies>
196   </dependencyManagement>
197   <dependencies>
198         <dependency>
199         <groupId>io.swagger</groupId>
200         <artifactId>swagger-core</artifactId>
201         <version>1.5.13</version>
202       </dependency>
203       <dependency>
204         <groupId>io.swagger</groupId>
205         <artifactId>swagger-jersey2-jaxrs</artifactId>
206         <version>1.5.13</version>
207       </dependency>
208        <dependency>
209         <groupId>io.swagger</groupId>
210         <artifactId>swagger-annotations</artifactId>
211         <version>1.5.13</version>
212       </dependency>   
213     <dependency>
214       <groupId>org.glassfish.jersey.containers</groupId>
215       <artifactId>jersey-container-servlet-core</artifactId>
216       <!-- use the following artifactId if you don't need servlet 2.x compatibility -->
217       <!-- artifactId>jersey-container-servlet</artifactId -->
218     </dependency>
219     <dependency>
220       <groupId>org.glassfish.jersey.media</groupId>
221       <artifactId>jersey-media-moxy</artifactId>
222     </dependency>
223     <dependency>
224       <groupId>log4j</groupId>
225       <artifactId>log4j</artifactId>
226       <version>1.2.17</version>
227     </dependency>
228     <dependency>
229       <groupId>org.eclipse.jetty</groupId>
230       <artifactId>jetty-server</artifactId>
231       <version>${jettyVersion}</version>
232     </dependency>
233     <dependency>
234       <groupId>org.eclipse.jetty</groupId>
235       <artifactId>jetty-servlet</artifactId>
236       <version>${jettyVersion}</version>
237       <scope>compile</scope>
238     </dependency>
239     <dependency>
240       <groupId>org.eclipse.jetty</groupId>
241       <artifactId>jetty-servlets</artifactId>
242       <version>${jettyVersion}</version>
243       <scope>compile</scope>
244     </dependency>
245     <!-- https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple -->
246     <dependency>
247       <groupId>com.googlecode.json-simple</groupId>
248       <artifactId>json-simple</artifactId>
249       <version>1.1.1</version>
250     </dependency>
251     <dependency>
252       <groupId>commons-codec</groupId>
253       <artifactId>commons-codec</artifactId>
254       <version>1.6</version>
255     </dependency>
256     <!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
257     <dependency>
258       <groupId>org.postgresql</groupId>
259       <artifactId>postgresql</artifactId>
260       <version>9.4.1208.jre7</version>
261     </dependency>
262         <dependency>
263                 <groupId>com.att.eelf</groupId> 
264                 <artifactId>eelf-core</artifactId> 
265                 <version>${eelf.version}</version> 
266         </dependency>
267         <dependency>
268                 <groupId>org.onap.dmaap.dbcapi</groupId>
269                 <artifactId>dbcapi</artifactId>
270                 <version>1.0.5-SNAPSHOT</version>
271         </dependency>
272   </dependencies>
273   <reporting>
274     <plugins>
275       <plugin>
276         <groupId>org.apache.maven.plugins</groupId>
277         <artifactId>maven-javadoc-plugin</artifactId>
278         <version>2.10.4</version>
279         <configuration>
280           <failOnError>false</failOnError>
281           <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
282           <docletArtifact>
283             <groupId>org.umlgraph</groupId>
284             <artifactId>umlgraph</artifactId>
285             <version>5.6</version>
286           </docletArtifact>
287           <additionalparam>-views</additionalparam>
288           <useStandardDocletOptions>true</useStandardDocletOptions>
289         </configuration>
290       </plugin>
291     </plugins>
292   </reporting>
293
294   <distributionManagement>
295         <site>
296                 <id>ecomp-site</id>
297                 <url>dav:${nexusproxy}${sitePath}</url>
298         </site>
299   </distributionManagement>
300   <properties>
301     <jersey.version>2.16</jersey.version>
302     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
303     <jettyVersion>9.3.7.v20160115</jettyVersion>
304     <eelf.version>0.0.1</eelf.version>
305     <artifact.version>1.0.7</artifact.version>
306                 <!--  SONAR  -->
307                  <jacoco.version>0.7.7.201606060606</jacoco.version>
308             <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
309             <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
310             <!-- Default Sonar configuration -->
311             <sonar.jacoco.reportPath>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
312             <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
313             <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
314             <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
315
316         <!-- docker image -->
317                  <docker.image>onap/dmaap/buscontroller</docker.image>
318
319                  <nexusproxy>https://nexus.onap.org</nexusproxy>
320                  <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
321
322         <!-- for Distribution Management -->
323                 <sitePath>/content/sites/site/org/onap/dmaap/buscontroller/${artifact.version}</sitePath>
324   </properties>
325   <description>Packaging Platform (DMaaP) Bus Controller API as a Docker container. </description>
326 </project>