fix user/permission
[dcaegen2/collectors/ves.git] / pom.xml
1 <?xml version="1.0"?>\r
2 <!--\r
3     ================================================================================\r
4         Copyright (c) 2017-2019 AT&T Intellectual Property. All rights reserved.\r
5         Copyright (c) 2018 Nokia. All rights reserved.\r
6         ================================================================================\r
7         Licensed under the Apache License, Version 2.0 (the "License"); you may not\r
8         use this file except in compliance with the License. You may obtain a copy\r
9         of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required\r
10         by applicable law or agreed to in writing, software distributed under the\r
11         License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS\r
12         OF ANY KIND, either express or implied. See the License for the specific\r
13         language governing permissions and limitations under the License.\r
14         ============LICENSE_END=========================================================\r
15 -->\r
16 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
17         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
18         <modelVersion>4.0.0</modelVersion>\r
19         <parent>\r
20                 <groupId>org.onap.oparent</groupId>\r
21                 <artifactId>oparent</artifactId>\r
22                 <version>2.0.0</version>\r
23                 <relativePath />\r
24         </parent>\r
25         <groupId>org.onap.dcaegen2.collectors.ves</groupId>\r
26         <artifactId>VESCollector</artifactId>\r
27         <version>1.5.1-SNAPSHOT</version>\r
28         <name>dcaegen2-collectors-ves</name>\r
29         <description>VESCollector</description>\r
30         <properties>\r
31                 <!-- PROJECT SETTINGS -->\r
32                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r
33                 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>\r
34                 <java.version>8</java.version>\r
35                 <docker.image.name>onap/org.onap.dcaegen2.collectors.ves.vescollector</docker.image.name>\r
36                 <!-- TEST SETTINGS -->\r
37                 <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>\r
38                 <!-- PLUGIN SETTINGS -->\r
39                 <dependency.locations.enabled>false</dependency.locations.enabled>\r
40                 <!-- NEXUS RELATED SETTINGS -->\r
41                 <nexusproxy>https://nexus.onap.org</nexusproxy>\r
42                 <snapshots.path>content/repositories/snapshots/</snapshots.path>\r
43                 <releases.path>content/repositories/releases/</releases.path>\r
44                 <site.path>content/sites/site/org/onap/dcaegen2/collectors/ves/${project.artifactId}/${project.version}</site.path>\r
45                 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>\r
46                 <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>\r
47         </properties>\r
48         <build>\r
49                 <pluginManagement>\r
50                         <plugins>\r
51                                 <plugin>\r
52                                         <groupId>org.springframework.boot</groupId>\r
53                                         <artifactId>spring-boot-maven-plugin</artifactId>\r
54                                 </plugin>\r
55                                 <plugin>\r
56                                         <artifactId>maven-assembly-plugin</artifactId>\r
57                                         <version>3.1.0</version>\r
58                                 </plugin>\r
59                                 <plugin>\r
60                                         <artifactId>maven-javadoc-plugin</artifactId>\r
61                                         <version>3.0.1</version>\r
62                                 </plugin>\r
63                                 <plugin>\r
64                                         <artifactId>maven-project-info-reports-plugin</artifactId>\r
65                                         <version>2.9</version>\r
66                                 </plugin>\r
67                                 <plugin>\r
68                                         <groupId>org.apache.maven.plugins</groupId>\r
69                                         <artifactId>maven-surefire-plugin</artifactId>\r
70                                         <version>3.0.0-M1</version>\r
71                                 </plugin>\r
72                                 <plugin>\r
73                                         <groupId>com.spotify</groupId>\r
74                                         <artifactId>docker-maven-plugin</artifactId>\r
75                                         <version>1.2.0</version>\r
76                                 </plugin>\r
77                                 <plugin>\r
78                                         <groupId>org.apache.maven.plugins</groupId>\r
79                                         <artifactId>maven-enforcer-plugin</artifactId>\r
80                                         <configuration>\r
81                                                 <skip>true</skip>\r
82                                         </configuration>\r
83                                 </plugin>\r
84                         </plugins>\r
85                 </pluginManagement>\r
86                 <plugins>\r
87                         <plugin>\r
88                                 <artifactId>maven-assembly-plugin</artifactId>\r
89                                 <configuration>\r
90                                         <descriptors>\r
91                                                 <descriptor>src/assembly/dep.xml</descriptor>\r
92                                         </descriptors>\r
93                                         <attach>false</attach>\r
94                                         <appendAssemblyId>false</appendAssemblyId>\r
95                                         <updateOnly>true</updateOnly>\r
96                                 </configuration>\r
97                                 <executions>\r
98                                         <execution>\r
99                                                 <id>make-assembly</id>\r
100                                                 <phase>package</phase>\r
101                                                 <goals>\r
102                                                         <goal>single</goal>\r
103                                                 </goals>\r
104                                         </execution>\r
105                                 </executions>\r
106                         </plugin>\r
107                         <plugin>\r
108                                 <groupId>org.springframework.boot</groupId>\r
109                                 <artifactId>spring-boot-maven-plugin</artifactId>\r
110                                 <executions>\r
111                                         <execution>\r
112                                                 <goals>\r
113                                                         <goal>repackage</goal>\r
114                                                 </goals>\r
115                                         </execution>\r
116                                 </executions>\r
117                         </plugin>\r
118                         <plugin>\r
119                                 <artifactId>maven-javadoc-plugin</artifactId>\r
120                                 <configuration>\r
121                                         <quiet>true</quiet>\r
122                                         <verbose>false</verbose>\r
123                                         <useStandardDocletOptions>false</useStandardDocletOptions>\r
124                                 </configuration>\r
125                                 <executions>\r
126                                         <execution>\r
127                                                 <id>aggregate</id>\r
128                                                 <phase>site</phase>\r
129                                                 <goals>\r
130                                                         <goal>aggregate</goal>\r
131                                                 </goals>\r
132                                         </execution>\r
133                                         <execution>\r
134                                                 <id>attach-javadoc</id>\r
135                                                 <goals>\r
136                                                         <goal>jar</goal>\r
137                                                 </goals>\r
138                                         </execution>\r
139                                 </executions>\r
140                         </plugin>\r
141                         <plugin>\r
142                                 <groupId>com.spotify</groupId>\r
143                                 <artifactId>docker-maven-plugin</artifactId>\r
144                                 <configuration>\r
145                                         <serverId>${onap.nexus.dockerregistry.daily}</serverId>\r
146                                         <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>\r
147                                         <imageTags>\r
148                                                 <imageTag>${project.version}-${maven.build.timestamp}Z</imageTag>\r
149                                                 <imageTag>${project.version}</imageTag>\r
150                                                 <imageTag>latest</imageTag>\r
151                                         </imageTags>\r
152                                         <baseImage>openjdk:8-jre-slim</baseImage>\r
153                                         <user>vescollector</user>\r
154                                         <env>\r
155                                                 <HOSTALIASES>/etc/host.aliases</HOSTALIASES>\r
156                                         </env>\r
157                                         <workdir>/opt/app/VESCollector</workdir>\r
158                                         <resources>\r
159                                                 <resource>\r
160                                                         <targetPath>.</targetPath>\r
161                                                         <directory>${project.build.directory}/${project.artifactId}-${project.version}</directory>\r
162                                                 </resource>\r
163                                         </resources>\r
164                                         <runs>\r
165                                                 <run>useradd -r -U vescollector</run>\r
166                                                 <run>chown -R vescollector:vescollector /opt/app</run>\r
167                                                 <!-- Maven is loosing file permissions during artifacts copy -->\r
168                                                 <run>chmod +x bin/*.sh</run>\r
169                                                 <run><![CDATA[apt-get update && apt-get install -y --no-install-recommends procps && apt-get install -y vim && apt-get install -y curl && apt-get clean all]]></run>\r
170                                         </runs>\r
171                                         <exposes>\r
172                                                 <expose>8080</expose>\r
173                                                 <expose>8443</expose>\r
174                                         </exposes>\r
175                                         <cmd>bin/docker-entry.sh</cmd>\r
176                                 </configuration>\r
177                                 <!--<executions>\r
178                                         <execution>\r
179                                                 <id>build-image</id>\r
180                                                 <phase>package</phase>\r
181                                                 <goals>\r
182                                                         <goal>deploy</goal>\r
183                                                 </goals>\r
184                                         </execution>\r
185                                         <execution>\r
186                                                 <id>tag-and-push-image-latest</id>\r
187                                                 <phase>deploy</phase>\r
188                                                 <goals>\r
189                                                         <goal>tag</goal>\r
190                                                 </goals>\r
191                                                 <configuration>\r
192                                                         <image>${docker.image.name}:latest</image>\r
193                                                         <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>\r
194                                                         <pushImage>true</pushImage>\r
195                                                 </configuration>\r
196                                         </execution>\r
197                                         <execution>\r
198                                                 <id>tag-and-push-image-with-version</id>\r
199                                                 <phase>deploy</phase>\r
200                                                 <goals>\r
201                                                         <goal>tag</goal>\r
202                                                 </goals>\r
203                                                 <configuration>\r
204                                                         <image>${docker.image.name}:latest</image>\r
205                                                         <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName>\r
206                                                         <pushImage>true</pushImage>\r
207                                                 </configuration>\r
208                                         </execution>\r
209                                         <execution>\r
210                                                 <id>tag-and-push-image-with-version-and-date</id>\r
211                                                 <phase>deploy</phase>\r
212                                                 <goals>\r
213                                                         <goal>tag</goal>\r
214                                                 </goals>\r
215                                                 <configuration>\r
216                                                         <image>${docker.image.name}:latest</image>\r
217                                                         <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName>\r
218                                                         <pushImage>true</pushImage>\r
219                                                 </configuration>\r
220                                         </execution>\r
221                                 </executions> -->\r
222                         </plugin>\r
223                 </plugins>\r
224         </build>\r
225         <profiles>\r
226                 <profile>\r
227                         <id>with-system-proxy</id>\r
228                         <build>\r
229                                 <plugins>\r
230                                         <plugin>\r
231                                                 <groupId>com.spotify</groupId>\r
232                                                 <artifactId>docker-maven-plugin</artifactId>\r
233                                                 <configuration>\r
234                                                         <buildArgs>\r
235                                                                 <http_proxy>${env.http_proxy}</http_proxy>\r
236                                                         </buildArgs>\r
237                                                 </configuration>\r
238                                         </plugin>\r
239                                 </plugins>\r
240                         </build>\r
241                 </profile>\r
242         </profiles>\r
243         <reporting>\r
244                 <plugins>\r
245                         <plugin>\r
246                                 <artifactId>maven-project-info-reports-plugin</artifactId>\r
247                                 <reportSets>\r
248                                         <reportSet>\r
249                                                 <reports>\r
250                                                         <report>dependencies</report>\r
251                                                         <report>license</report>\r
252                                                 </reports>\r
253                                         </reportSet>\r
254                                 </reportSets>\r
255                         </plugin>\r
256                         <plugin>\r
257                                 <artifactId>maven-javadoc-plugin</artifactId>\r
258                                 <configuration>\r
259                                         <failOnError>false</failOnError>\r
260                                         <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>\r
261                                         <docletArtifact>\r
262                                                 <groupId>org.umlgraph</groupId>\r
263                                                 <artifactId>umlgraph</artifactId>\r
264                                                 <version>5.6</version>\r
265                                         </docletArtifact>\r
266                                         <additionalparam>-views</additionalparam>\r
267                                         <useStandardDocletOptions>true</useStandardDocletOptions>\r
268                                 </configuration>\r
269                         </plugin>\r
270                 </plugins>\r
271         </reporting>\r
272         <dependencyManagement>\r
273                 <dependencies>\r
274                         <dependency>\r
275                                 <!-- Import dependency management from Spring Boot -->\r
276                                 <groupId>org.springframework.boot</groupId>\r
277                                 <artifactId>spring-boot-dependencies</artifactId>\r
278                                 <version>2.1.0.RELEASE</version>\r
279                                 <type>pom</type>\r
280                                 <scope>import</scope>\r
281                         </dependency>\r
282                 </dependencies>\r
283         </dependencyManagement>\r
284         <dependencies>\r
285                 <!-- JSON RELATED -->\r
286                 <dependency>\r
287                         <groupId>com.googlecode.json-simple</groupId>\r
288                         <artifactId>json-simple</artifactId>\r
289                         <version>1.1.1</version>\r
290                 </dependency>\r
291                 <dependency>\r
292                         <groupId>com.github.fge</groupId>\r
293                         <artifactId>json-schema-validator</artifactId>\r
294                         <version>2.2.6</version>\r
295                 </dependency>\r
296                 <dependency>\r
297                         <groupId>com.github.fge</groupId>\r
298                         <artifactId>json-schema-core</artifactId>\r
299                         <version>1.2.5</version>\r
300                 </dependency>\r
301                 <dependency>\r
302                         <groupId>com.google.code.gson</groupId>\r
303                         <artifactId>gson</artifactId>\r
304                         <version>2.8.5</version>\r
305                 </dependency>\r
306                 <dependency>\r
307                         <groupId>org.json</groupId>\r
308                         <artifactId>json</artifactId>\r
309                         <version>20160810</version>\r
310                 </dependency>\r
311                 <!-- REST API RELATED -->\r
312                 <dependency>\r
313                         <groupId>com.att.nsa</groupId>\r
314                         <artifactId>cambriaClient</artifactId>\r
315                         <version>0.0.1</version>\r
316                 </dependency>\r
317                 <dependency>\r
318                         <groupId>com.mashape.unirest</groupId>\r
319                         <artifactId>unirest-java</artifactId>\r
320                         <version>1.4.9</version>\r
321                 </dependency>\r
322                 <!-- MISCELLANEOUS -->\r
323                 <dependency>\r
324                         <groupId>commons-collections</groupId>\r
325                         <artifactId>commons-collections</artifactId>\r
326                         <version>3.2.2</version>\r
327                 </dependency>\r
328                 <dependency>\r
329                         <groupId>commons-configuration</groupId>\r
330                         <artifactId>commons-configuration</artifactId>\r
331                         <version>1.10</version>\r
332                 </dependency>\r
333                 <dependency>\r
334                         <groupId>io.vavr</groupId>\r
335                         <artifactId>vavr</artifactId>\r
336                         <version>0.9.2</version>\r
337                 </dependency>\r
338                 <dependency>\r
339                         <groupId>org.springframework.boot</groupId>\r
340                         <artifactId>spring-boot-starter-web</artifactId>\r
341             <exclusions>\r
342                 <exclusion>\r
343                     <groupId>org.springframework.boot</groupId>\r
344                     <artifactId>spring-boot-starter-logging</artifactId>\r
345                 </exclusion>\r
346             </exclusions>\r
347                 </dependency>\r
348                 <dependency>\r
349                         <groupId>org.springframework.boot</groupId>\r
350                         <artifactId>spring-boot-starter-log4j2</artifactId>\r
351                         <version>2.1.5.RELEASE</version>\r
352                 </dependency>\r
353                 <dependency>\r
354                         <groupId>io.springfox</groupId>\r
355                         <artifactId>springfox-swagger2</artifactId>\r
356                         <version>2.8.0</version>\r
357                 </dependency>\r
358                 <dependency>\r
359                         <groupId>io.springfox</groupId>\r
360                         <artifactId>springfox-swagger-ui</artifactId>\r
361                         <version>2.8.0</version>\r
362                         <scope>compile</scope>\r
363                 </dependency>\r
364                 <!-- TESTING -->\r
365                 <dependency>\r
366                         <groupId>org.junit.jupiter</groupId>\r
367                         <artifactId>junit-jupiter-api</artifactId>\r
368                         <version>5.3.1</version>\r
369                         <scope>test</scope>\r
370                 </dependency>\r
371                 <dependency>\r
372                         <groupId>org.junit.jupiter</groupId>\r
373                         <artifactId>junit-jupiter-engine</artifactId>\r
374                         <version>5.3.1</version>\r
375                         <scope>test</scope>\r
376                 </dependency>\r
377                 <dependency>\r
378                         <groupId>org.junit.vintage</groupId>\r
379                         <artifactId>junit-vintage-engine</artifactId>\r
380                         <version>5.3.1</version>\r
381                         <scope>test</scope>\r
382                 </dependency>\r
383                 <dependency>\r
384                         <groupId>org.mockito</groupId>\r
385                         <artifactId>mockito-junit-jupiter</artifactId>\r
386                         <version>2.23.0</version>\r
387                         <scope>test</scope>\r
388                 </dependency>\r
389                 <dependency>\r
390                         <groupId>org.assertj</groupId>\r
391                         <artifactId>assertj-core</artifactId>\r
392                         <version>3.8.0</version>\r
393                         <scope>test</scope>\r
394                 </dependency>\r
395                 <dependency>\r
396                         <groupId>com.google.jimfs</groupId>\r
397                         <artifactId>jimfs</artifactId>\r
398                         <version>1.1</version>\r
399                         <scope>test</scope>\r
400                 </dependency>\r
401                 <dependency>\r
402                         <groupId>com.github.tomakehurst</groupId>\r
403                         <artifactId>wiremock-standalone</artifactId>\r
404                         <version>2.17.0</version>\r
405                         <scope>test</scope>\r
406                 </dependency>\r
407                 <dependency>\r
408                         <groupId>org.springframework.security</groupId>\r
409                         <artifactId>spring-security-test</artifactId>\r
410                         <version>5.1.1.RELEASE</version>\r
411                         <scope>test</scope>\r
412                 </dependency>\r
413                 <dependency>\r
414                         <groupId>org.springframework.boot</groupId>\r
415                         <artifactId>spring-boot-starter-test</artifactId>\r
416                         <version>2.1.0.RELEASE</version>\r
417                         <scope>test</scope>\r
418                 </dependency>\r
419                 <dependency>\r
420                         <groupId>org.onap.dcaegen2.services.sdk.security.crypt</groupId>\r
421                         <artifactId>crypt-password</artifactId>\r
422                         <version>1.1.6</version>\r
423                 </dependency>\r
424         <dependency>\r
425             <groupId>org.onap.dcaegen2.services.sdk.standardization</groupId>\r
426             <artifactId>api-custom-header</artifactId>\r
427             <version>1.1.4</version>\r
428         </dependency>\r
429         </dependencies>\r
430         <repositories>\r
431                 <repository>\r
432                         <id>external-repository</id>\r
433                         <url>https://oss.sonatype.org/content/repositories</url>\r
434                 </repository>\r
435         </repositories>\r
436         <pluginRepositories>\r
437                 <!-- Black Duck plugin dependencies -->\r
438                 <pluginRepository>\r
439                         <id>JCenter</id>\r
440                         <name>JCenter Repository</name>\r
441                         <url>http://jcenter.bintray.com</url>\r
442                 </pluginRepository>\r
443                 <pluginRepository>\r
444                         <id>Restlet</id>\r
445                         <name>Restlet Repository</name>\r
446                         <url>http://maven.restlet.com</url>\r
447                 </pluginRepository>\r
448         </pluginRepositories>\r
449 </project>\r