[AAI-2175] Change aai champ container processes to run as non-root on the host
[aai/champ.git] / champ-service / pom.xml
1 <!--
2 ============LICENSE_START=======================================================
3 org.onap.aai
4 ================================================================================
5 Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
6 Copyright © 2017-2018 Amdocs
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
11
12       http://www.apache.org/licenses/LICENSE-2.0
13
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=========================================================
20 -->
21 <project xmlns="http://maven.apache.org/POM/4.0.0"
22          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
24     <modelVersion>4.0.0</modelVersion>
25
26     <parent>
27         <groupId>org.onap.aai</groupId>
28         <artifactId>champ</artifactId>
29         <version>1.4.0-SNAPSHOT</version>
30     </parent>
31
32     <groupId>org.onap.aai.champ</groupId>
33     <artifactId>champ-service</artifactId>
34
35     <properties>
36         <docker.location>${basedir}/target</docker.location>
37         <docker.name>champ</docker.name>
38         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
39         <common.logging.groupid>org.onap.aai.logging-service</common.logging.groupid>
40         <common.logging.version>1.2.2</common.logging.version>
41
42         <version.org.apache.commons.commons-lang3>3.7</version.org.apache.commons.commons-lang3>
43         <version.org.hamcrest.hamcrest-library>1.3</version.org.hamcrest.hamcrest-library>
44         <version.org.springframework.boot.spring-boot-dependencies>1.5.18.RELEASE</version.org.springframework.boot.spring-boot-dependencies>
45     </properties>
46
47     <dependencyManagement>
48         <dependencies>
49             <dependency>
50                 <groupId>org.springframework.boot</groupId>
51                 <artifactId>spring-boot-dependencies</artifactId>
52                 <version>${version.org.springframework.boot.spring-boot-dependencies}</version>
53                 <type>pom</type>
54                 <scope>import</scope>
55             </dependency>
56
57             <dependency>
58                 <groupId>org.apache.httpcomponents</groupId>
59                 <artifactId>httpclient</artifactId>
60                 <version>4.5.3</version>
61             </dependency>
62
63             <dependency>
64                 <groupId>org.apache.httpcomponents</groupId>
65                 <artifactId>httpclient-cache</artifactId>
66                 <version>4.5.3</version>
67             </dependency>
68         </dependencies>
69     </dependencyManagement>
70
71     <dependencies>
72         <dependency>
73             <groupId>org.springframework.boot</groupId>
74             <artifactId>spring-boot-starter-web</artifactId>
75             <exclusions>
76                 <exclusion>
77                     <groupId>org.springframework.boot</groupId>
78                     <artifactId>spring-boot-starter-tomcat</artifactId>
79                 </exclusion>
80                 <exclusion>
81                     <groupId>ch.qos.logback</groupId>
82                     <artifactId>logback-classic</artifactId>
83                 </exclusion>
84             </exclusions>
85         </dependency>
86
87         <dependency>
88             <groupId>org.springframework.boot</groupId>
89             <artifactId>spring-boot-starter-jetty</artifactId>
90         </dependency>
91
92         <dependency>
93             <groupId>org.springframework.boot</groupId>
94             <artifactId>spring-boot-starter-test</artifactId>
95             <scope>test</scope>
96         </dependency>
97         <dependency>
98             <groupId>org.powermock</groupId>
99             <artifactId>powermock-module-junit4</artifactId>
100             <version>1.7.4</version>
101             <scope>test</scope>
102             <exclusions>
103                 <exclusion>
104                     <groupId>org.javassist</groupId>
105                     <artifactId>javassist</artifactId>
106                 </exclusion>
107             </exclusions>
108         </dependency>
109         <dependency>
110             <groupId>org.powermock</groupId>
111             <artifactId>powermock-api-mockito</artifactId>
112             <version>1.7.4</version>
113             <scope>test</scope>
114         </dependency>
115
116         <!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
117         <dependency>
118             <groupId>org.javassist</groupId>
119             <artifactId>javassist</artifactId>
120             <version>3.22.0-GA</version>
121         </dependency>
122
123
124         <dependency>
125             <groupId>org.springframework.boot</groupId>
126             <artifactId>spring-boot-starter-jersey</artifactId>
127             <exclusions>
128               <exclusion>
129                <groupId>org.springframework.boot</groupId>
130                <artifactId>spring-boot-starter-tomcat</artifactId>
131               </exclusion>
132             </exclusions>
133         </dependency>
134
135         <dependency>
136             <groupId>org.json</groupId>
137             <artifactId>json</artifactId>
138             <version>20160212</version>
139         </dependency>
140
141         <dependency>
142             <groupId>commons-io</groupId>
143             <artifactId>commons-io</artifactId>
144             <version>2.4</version>
145         </dependency>
146
147         <dependency>
148             <groupId>com.google.code.gson</groupId>
149             <artifactId>gson</artifactId>
150             <version>2.6.2</version>
151         </dependency>
152
153          <dependency>
154           <groupId>com.google.guava</groupId>
155           <artifactId>guava</artifactId>
156         </dependency>
157
158         <dependency>
159             <groupId>${common.logging.groupid}</groupId>
160             <artifactId>common-logging</artifactId>
161             <version>${common.logging.version}</version>
162             <exclusions>
163                 <exclusion>
164                     <groupId>ch.qos.logback</groupId>
165                     <artifactId>logback-classic</artifactId>
166                 </exclusion>
167                 <exclusion>
168                     <groupId>ch.qos.logback</groupId>
169                     <artifactId>logback-core</artifactId>
170                 </exclusion>
171                 <exclusion>
172                     <groupId>org.slf4j</groupId>
173                     <artifactId>slf4j-api</artifactId>
174                 </exclusion>
175             </exclusions>
176         </dependency>
177
178         <dependency>
179             <groupId>org.eclipse.persistence</groupId>
180             <artifactId>eclipselink</artifactId>
181             <version>2.6.2</version>
182         </dependency>
183
184         <dependency>
185             <groupId>org.apache.commons</groupId>
186             <artifactId>commons-lang3</artifactId>
187             <version>3.7</version>
188         </dependency>
189
190         <dependency>
191             <groupId>org.onap.aai.champ.champ-lib</groupId>
192             <artifactId>champ-core</artifactId>
193             <version>${project.version}</version>
194             <scope>compile</scope>
195             <exclusions>
196                 <exclusion>
197                     <groupId>org.apache.hbase</groupId>
198                     <artifactId>hbase-client</artifactId>
199                 </exclusion>
200                 <exclusion>
201                     <groupId>log4j</groupId>
202                     <artifactId>log4j</artifactId>
203                 </exclusion>
204                 <exclusion>
205                     <groupId>log4j</groupId>
206                     <artifactId>apache-log4j-extras</artifactId>
207                 </exclusion>
208                 <exclusion>
209                     <groupId>org.slf4j</groupId>
210                     <artifactId>slf4j-api</artifactId>
211                 </exclusion>
212             </exclusions>
213         </dependency>
214
215         <dependency>
216             <groupId>org.hamcrest</groupId>
217             <artifactId>hamcrest-library</artifactId>
218             <scope>test</scope>
219         </dependency>
220
221         <dependency>
222             <groupId>org.skyscreamer</groupId>
223             <artifactId>jsonassert</artifactId>
224             <version>1.5.0</version>
225             <scope>test</scope>
226         </dependency>
227
228         <dependency>
229             <groupId>ch.qos.logback</groupId>
230             <artifactId>logback-classic</artifactId>
231             <version>1.2.3</version>
232         </dependency>
233
234         <dependency>
235             <groupId>ch.qos.logback</groupId>
236             <artifactId>logback-core</artifactId>
237             <version>1.2.3</version>
238         </dependency>
239
240         <dependency>
241             <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
242             <artifactId>dmaapClient</artifactId>
243             <version>1.1.5</version>
244         </dependency>
245     </dependencies>
246
247     <distributionManagement>
248         <repository>
249             <id>ecomp-releases</id>
250             <name>ECOMP Release Repository</name>
251             <url>${onap.nexus.url}/content/repositories/releases/</url>
252         </repository>
253         <snapshotRepository>
254             <id>ecomp-snapshots</id>
255             <name>ECOMP Snapshot Repository</name>
256             <url>${onap.nexus.url}/content/repositories/snapshots/</url>
257         </snapshotRepository>
258     </distributionManagement>
259
260     <build>
261         <finalName>${project.artifactId}</finalName>
262         <plugins>
263             <plugin>
264                 <groupId>org.springframework.boot</groupId>
265                 <artifactId>spring-boot-maven-plugin</artifactId>
266                 <configuration>
267                     <layout>ZIP</layout>
268                 </configuration>
269                 <executions>
270                     <execution>
271                         <goals>
272                             <goal>repackage</goal>
273                         </goals>
274                     </execution>
275                 </executions>
276             </plugin>
277
278             <plugin>
279                 <groupId>org.apache.maven.plugins</groupId>
280                 <artifactId>maven-resources-plugin</artifactId>
281                 <version>2.7</version>
282                 <executions>
283                     <execution>
284                         <id>copy-docker-file</id>
285                         <phase>package</phase>
286                         <goals>
287                             <goal>copy-resources</goal>
288                         </goals>
289                         <configuration>
290                             <outputDirectory>target</outputDirectory>
291                             <overwrite>true</overwrite>
292                             <resources>
293                                 <resource>
294                                     <directory>${basedir}/src/main/docker</directory>
295                                     <filtering>true</filtering>
296                                     <includes>
297                                         <include>**/*</include>
298                                     </includes>
299                                 </resource>
300                                 <resource>
301                                     <directory>${basedir}/src/main/bin/</directory>
302                                 </resource>
303                                 <resource>
304                                     <directory>../champ-service-deps-janus/target/</directory>
305                                 </resource>
306                                 <resource>
307                                     <directory>../champ-service-deps-titan/target/</directory>
308                                 </resource>
309                                 <resource>
310                                     <directory>${basedir}</directory>
311                                     <includes>
312                                         <include>**/dynamic/**/*</include>
313                                     </includes>
314                                 </resource>
315                             </resources>
316                         </configuration>
317                     </execution>
318                 </executions>
319             </plugin>
320
321             <plugin>
322                 <groupId>com.mycila</groupId>
323                 <artifactId>license-maven-plugin</artifactId>
324                 <version>3.0</version>
325                 <configuration>
326                     <header>License.txt</header>
327                     <includes>
328                         <include>src/main/java/**</include>
329                         <include>src/test/java/**</include>
330                         <include>pom.xml</include>
331                     </includes>
332                     <skipExistingHeaders>true</skipExistingHeaders>
333                 </configuration>
334                 <executions>
335                     <execution>
336                         <goals>
337                             <!-- Set goal to "format" to auto update license headers -->
338                             <goal>check</goal>
339                         </goals>
340                         <phase>process-sources</phase>
341                     </execution>
342                 </executions>
343             </plugin>
344
345             <plugin>
346                 <groupId>com.spotify</groupId>
347                 <artifactId>docker-maven-plugin</artifactId>
348                 <version>0.4.11</version>
349                 <configuration>
350                     <verbose>true</verbose>
351                     <serverId>docker-hub</serverId>
352                     <imageName>${docker.push.registry}/onap/${docker.name}</imageName>
353                     <dockerDirectory>${docker.location}</dockerDirectory>
354                     <imageTags>
355                         <imageTag>latest</imageTag>
356                     </imageTags>
357                     <forceTags>true</forceTags>
358                 </configuration>
359             </plugin>
360
361             <plugin>
362                 <groupId>org.apache.maven.plugins</groupId>
363                 <artifactId>maven-deploy-plugin</artifactId>
364             </plugin>
365
366             <plugin>
367                 <groupId>org.sonatype.plugins</groupId>
368                 <artifactId>nexus-staging-maven-plugin</artifactId>
369             </plugin>
370
371             <plugin>
372                 <groupId>org.apache.maven.plugins</groupId>
373                 <artifactId>maven-site-plugin</artifactId>
374             </plugin>
375         </plugins>
376     </build>
377 </project>