Upgrade SDC from Titan to Janus Graph
[sdc.git] / pom.xml
1 <!--
2 ============LICENSE_START=======================================================
3 SDC
4 ================================================================================
5 Copyright (C) 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 Modifications copyright (c) 2018 Nokia
20 ================================================================================
21 -->
22 <project xmlns="http://maven.apache.org/POM/4.0.0" 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     <groupId>org.openecomp.sdc</groupId>
27     <artifactId>sdc-main</artifactId>
28     <version>1.5.0-SNAPSHOT</version>
29     <packaging>pom</packaging>
30     <name>sdc</name>
31     <properties>
32         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
33
34         <tosca.datatype.version>1.3.2-SNAPSHOT</tosca.datatype.version>
35
36         <!-- 3rd parties versions -->
37         <bean-matcher.version>0.11</bean-matcher.version>
38         <lang3.version>3.3.2</lang3.version>
39         <lang3.version>3.3.2</lang3.version>
40         <guava.version>18.0</guava.version>
41         <janusgraph.version>0.3.1</janusgraph.version>
42         <spring.version>4.3.18.RELEASE</spring.version>
43         <spring.security.version>3.2.3.RELEASE</spring.security.version>
44         <spring.ldap.version>2.0.1.RELEASE</spring.ldap.version>
45         <jersey-bom.version>2.27</jersey-bom.version>
46         <servlet-api.version>3.1.0</servlet-api.version>
47         <wire-mock.version>2.18.0</wire-mock.version>
48         <ecomp.version>2.4.0</ecomp.version>
49         <cassandra.unit.version>3.5.0.1</cassandra.unit.version>
50         <lombok.version>1.18.2</lombok.version>
51
52         <commons.collections.version>4.1</commons.collections.version>
53
54         <!-- Elastic Search mapper (reference the elastic search version actually). -->
55         <elastic-search.version>2.4.0</elastic-search.version>
56         <catalog-artifacts.version>1.0.0-SNAPSHOT</catalog-artifacts.version>
57         <catalog-builders.version>1.0.0-SNAPSHOT</catalog-builders.version>
58         <jetty.version>9.4.11.v20180605</jetty.version>
59
60         <!-- JSON and YAML Parsing -->
61         <jackson.version>2.8.10</jackson.version>
62         <jackson-annotations.version>2.8.0</jackson-annotations.version>
63         <jackson.mapper.version>1.9.13</jackson.mapper.version>
64
65         <!-- Yaml for properties -->
66         <snakeyaml.version>1.14</snakeyaml.version>
67         <functionaljava.version>4.7</functionaljava.version>
68         <httpclient.version>4.5.3</httpclient.version>
69         <httpcore.version>4.4.1</httpcore.version>
70         <json-simple.version>1.1</json-simple.version>
71
72         <!-- Logging start -->
73         <!-- logback -->
74         <logback.version>1.2.3</logback.version>
75         <slf4j-api.version>1.7.25</slf4j-api.version>
76         <commons-codec>1.10</commons-codec>
77         <commons-logging>1.2</commons-logging>
78         <janino.version>3.0.6</janino.version>
79
80         <!-- aspects -->
81         <jcabi.version>0.20.1</jcabi.version>
82         <aspectjrt.version>1.8.4</aspectjrt.version>
83         <aspectj.version>1.7.4</aspectj.version>
84         <jcabi.maven.plugin.version>0.13.2</jcabi.maven.plugin.version>
85
86         <!-- Logging end -->
87         <!-- System Metrics -->
88         <sigar.version>1.6.4</sigar.version>
89
90         <regex.version>3.0.3</regex.version>
91
92         <!--GSON-->
93         <gson.version>2.3.1</gson.version>
94
95         <!--listen to file changes-->
96         <commons-jci-core.version>1.1</commons-jci-core.version>
97
98         <!--TESTING-->
99         <mockito.version>2.18.3</mockito.version>
100         <jmockit.version>1.33</jmockit.version>
101         <junit.version>4.12</junit.version>
102         <assertj.version>3.10.0</assertj.version>
103         <testng.version>6.9.10</testng.version>
104         <extentreports.version>3.0.3</extentreports.version>
105         <cucumber.version>2.4.0</cucumber.version>
106         <bean-matchers.version>0.11</bean-matchers.version>
107         <hamcrest-all.version>1.3</hamcrest-all.version>
108         <junit-jupiter.version>5.4.0</junit-jupiter.version>
109         <junit-vintage.version>5.4.0</junit-vintage.version>
110         <junit-platform.version>1.1.0</junit-platform.version>
111         <maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>
112
113         <!-- parser-->
114         <sdc-tosca-parser.version>1.3.5</sdc-tosca-parser.version>
115
116         <!-- sonar -->
117         <sonar.language>java</sonar.language>
118         <sonar.sourceEncoding>${project.build.sourceEncoding}</sonar.sourceEncoding>
119         <sonar.projectBaseDir>${project.basedir}</sonar.projectBaseDir>
120         <sonar.branch>${project.version}</sonar.branch>
121
122         <!--cassandra -->
123         <cassandra.driver.version>3.0.0</cassandra.driver.version>
124         <!-- maven central (Nexus) -->
125         <nexus.id.release>nexus</nexus.id.release>
126         <nexus.id.snapshot>nexus</nexus.id.snapshot>
127
128         <!--nexus-->
129         <npm.registry>https://registry.npmjs.org/</npm.registry>
130         <!-- https://nexus.onap.org/content/repositories/npm/ -->
131         <nexus.proxy>https://nexus.onap.org</nexus.proxy>
132         <sitePath>/content/sites/site/org/openecomp/sdc/${project.version}</sitePath>
133         <staging.profile.id>176c31dfe190a</staging.profile.id>
134         <!--maven-->
135         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
136         <!--docker tags-->
137         <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
138
139         <joda.time.version>2.9.9</joda.time.version>
140
141         <!--jacoco-->
142         <jacoco.version>0.8.1</jacoco.version>
143
144     </properties>
145
146
147     <dependencyManagement>
148         <dependencies>
149             <dependency>
150                 <groupId>org.glassfish.jersey.ext</groupId>
151                 <artifactId>jersey-bean-validation</artifactId>
152                 <version>${jersey-bom.version}</version>
153             </dependency>
154
155             <dependency>
156                 <groupId>org.glassfish.hk2.external</groupId>
157                 <artifactId>asm-all-repackaged</artifactId>
158                 <version>2.4.0</version>
159             </dependency>
160
161             <dependency>
162                 <groupId>org.assertj</groupId>
163                 <artifactId>assertj-core</artifactId>
164                 <version>${assertj.version}</version>
165             </dependency>
166
167             <dependency>
168                 <groupId>org.mockito</groupId>
169                 <artifactId>mockito-core</artifactId>
170                 <version>${mockito.version}</version>
171             </dependency>
172             
173                         <dependency>
174                         <groupId>org.jmockit</groupId>
175                                 <artifactId>jmockit</artifactId>
176                                 <version>${jmockit.version}</version>
177                         </dependency>
178                         
179
180             <dependency>
181                 <groupId>com.github.tomakehurst</groupId>
182                 <artifactId>wiremock-standalone</artifactId>
183                 <version>${wire-mock.version}</version>
184             </dependency>
185
186             <dependency>
187                 <groupId>io.cucumber</groupId>
188                 <artifactId>cucumber-java</artifactId>
189                 <version>${cucumber.version}</version>
190             </dependency>
191
192             <dependency>
193                 <groupId>io.cucumber</groupId>
194                 <artifactId>cucumber-junit</artifactId>
195                 <version>${cucumber.version}</version>
196             </dependency>
197
198             <dependency>
199                 <groupId>org.apache.commons</groupId>
200                 <artifactId>commons-lang3</artifactId>
201                 <version>${lang3.version}</version>
202             </dependency>
203             <dependency>
204                 <groupId>org.codehaus.groovy</groupId>
205                 <artifactId>groovy</artifactId>
206                 <version>2.4.13</version>
207             </dependency>
208             <dependency>
209                 <groupId>io.netty</groupId>
210                 <artifactId>netty-all</artifactId>
211                 <version>4.0.45.Final</version>
212             </dependency>
213             <dependency>
214                 <groupId>io.netty</groupId>
215                 <artifactId>netty-handler</artifactId>
216                 <version>4.0.45.Final</version>
217             </dependency>
218             <dependency>
219                 <groupId>org.junit.platform</groupId>
220                 <artifactId>junit-platform-launcher</artifactId>
221                 <version>${junit-platform.version}</version>
222             </dependency>
223             <dependency>
224                 <groupId>org.junit.jupiter</groupId>
225                 <artifactId>junit-jupiter-engine</artifactId>
226                 <version>${junit-jupiter.version}</version>
227             </dependency>
228             <dependency>
229                 <groupId>org.junit.vintage</groupId>
230                 <artifactId>junit-vintage-engine</artifactId>
231                 <version>${junit-vintage.version}</version>
232             </dependency>
233         </dependencies>
234     </dependencyManagement>
235
236     <dependencies>
237         <dependency>
238             <!-- must be on the classpath -->
239             <groupId>org.jacoco</groupId>
240             <artifactId>org.jacoco.agent</artifactId>
241             <classifier>runtime</classifier>
242             <version>${jacoco.version}</version>
243             <scope>test</scope>
244         </dependency>
245     </dependencies>
246
247     <reporting>
248         <plugins>
249             <plugin>
250                 <groupId>org.apache.maven.plugins</groupId>
251                 <artifactId>maven-javadoc-plugin</artifactId>
252                 <version>3.0.1</version>
253                 <configuration>
254                     <failOnError>false</failOnError>
255                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
256                     <docletArtifact>
257                         <groupId>org.umlgraph</groupId>
258                         <artifactId>umlgraph</artifactId>
259                         <version>5.6</version>
260                     </docletArtifact>
261                     <useStandardDocletOptions>true</useStandardDocletOptions>
262                 </configuration>
263             </plugin>
264         </plugins>
265     </reporting>
266
267     <build>
268         <pluginManagement>
269             <plugins>
270                 <plugin>
271                     <groupId>org.jacoco</groupId>
272                     <artifactId>jacoco-maven-plugin</artifactId>
273                     <version>0.8.1</version>
274                 </plugin>
275                 <plugin>
276                     <groupId>org.apache.maven.plugins</groupId>
277                     <artifactId>maven-assembly-plugin</artifactId>
278                     <version>3.1.0</version>
279                 </plugin>
280
281                 <plugin>
282                     <groupId>org.codehaus.mojo</groupId>
283                     <artifactId>exec-maven-plugin</artifactId>
284                     <version>1.6.0</version>
285                 </plugin>
286                 <plugin>
287                     <groupId>org.sonarsource.scanner.maven</groupId>
288                     <artifactId>sonar-maven-plugin</artifactId>
289                     <version>3.4.1.1168</version>
290                 </plugin>
291                 <plugin>
292                     <groupId>org.apache.maven.plugins</groupId>
293                     <artifactId>maven-clean-plugin</artifactId>
294                     <version>3.1.0</version>
295                 </plugin>
296                 <plugin>
297                     <groupId>ru.yaal.maven</groupId>
298                     <artifactId>write-text-files-maven-plugin</artifactId>
299                     <version>1.1</version>
300                 </plugin>
301                 <plugin>
302                     <groupId>org.codehaus.gmaven</groupId>
303                     <artifactId>gmaven-plugin</artifactId>
304                     <version>1.5</version>
305                 </plugin>
306                 <plugin>
307                     <groupId>org.codehaus.mojo</groupId>
308                     <artifactId>build-helper-maven-plugin</artifactId>
309                     <version>3.0.0</version>
310                 </plugin>
311                 <plugin>
312                     <groupId>org.apache.maven.plugins</groupId>
313                     <artifactId>maven-deploy-plugin</artifactId>
314                     <version>2.8.2</version>
315                 </plugin>
316                 <plugin>
317                     <groupId>org.apache.maven.plugins</groupId>
318                     <artifactId>maven-shade-plugin</artifactId>
319                     <version>3.1.1</version>
320                 </plugin>
321                 <plugin>
322                     <groupId>org.apache.maven.plugins</groupId>
323                     <artifactId>maven-resources-plugin</artifactId>
324                     <version>3.1.0</version>
325                 </plugin>
326                 <plugin>
327                     <groupId>io.fabric8</groupId>
328                     <artifactId>docker-maven-plugin</artifactId>
329                     <version>0.26.0</version>
330                 </plugin>
331                 <plugin>
332                     <groupId>org.apache.maven.plugins</groupId>
333                     <artifactId>maven-war-plugin</artifactId>
334                     <version>3.2.2</version>
335                 </plugin>
336                 <plugin>
337                     <groupId>com.github.eirslett</groupId>
338                     <artifactId>frontend-maven-plugin</artifactId>
339                     <version>1.6</version>
340                 </plugin>
341                 <plugin>
342                     <groupId>org.apache.maven.plugins</groupId>
343                     <artifactId>maven-surefire-plugin</artifactId>
344                     <version>${maven-surefire-plugin.version}</version>
345                 </plugin>
346                 <plugin>
347                     <groupId>org.apache.maven.plugins</groupId>
348                     <artifactId>maven-compiler-plugin</artifactId>
349                     <version>3.8.0</version>
350                 </plugin>
351                 <plugin>
352                     <groupId>org.sonatype.plugins</groupId>
353                     <artifactId>nexus-staging-maven-plugin</artifactId>
354                     <version>1.6.8</version>
355                 </plugin>
356                 <plugin>
357                     <groupId>com.github.sylvainlaurent.maven</groupId>
358                     <artifactId>yaml-json-validator-maven-plugin</artifactId>
359                     <version>1.0.1</version>
360                 </plugin>
361                 <plugin>
362                     <groupId>pl.project13.maven</groupId>
363                     <artifactId>git-commit-id-plugin</artifactId>
364                     <version>2.2.6</version>
365                 </plugin>
366             </plugins>
367         </pluginManagement>
368
369         <plugins>
370
371             <!-- Staging Plugin -->
372             <plugin>
373                 <groupId>org.sonatype.plugins</groupId>
374                 <artifactId>nexus-staging-maven-plugin</artifactId>
375                 <extensions>true</extensions>
376                 <configuration>
377                     <nexusUrl>${nexus.proxy}</nexusUrl>
378                     <stagingProfileId>${staging.profile.id}</stagingProfileId>
379                     <serverId>ecomp-staging</serverId>
380                 </configuration>
381             </plugin>
382
383             <!-- plugin for parsing the project version -->
384             <plugin>
385                 <groupId>org.codehaus.mojo</groupId>
386                 <artifactId>build-helper-maven-plugin</artifactId>
387                 <executions>
388                     <execution>
389                         <id>parse-version</id>
390                         <phase>pre-clean</phase>
391                         <goals>
392                             <goal>parse-version</goal>
393                         </goals>
394                     </execution>
395                 </executions>
396             </plugin>
397
398             <!-- Java Code Coverage -->
399             <plugin>
400                 <groupId>org.jacoco</groupId>
401                 <artifactId>jacoco-maven-plugin</artifactId>
402                 <executions>
403                     <execution>
404                         <id>default-instrument</id>
405                         <goals>
406                             <goal>instrument</goal>
407                         </goals>
408                     </execution>
409                     <execution>
410                         <id>default-restore-instrumented-classes</id>
411                         <goals>
412                             <goal>restore-instrumented-classes</goal>
413                         </goals>
414                     </execution>
415                     <execution>
416                         <id>default-report</id>
417                         <goals>
418                             <goal>report</goal>
419                         </goals>
420                         <configuration>
421                             <dataFile>${project.build.directory}/jacoco.exec</dataFile>
422                         </configuration>
423                     </execution>
424                 </executions>
425             </plugin>
426
427             <plugin>
428                 <groupId>org.apache.maven.plugins</groupId>
429                 <artifactId>maven-site-plugin</artifactId>
430                 <version>3.7.1</version>
431                 <dependencies>
432                     <dependency>
433                         <groupId>org.apache.maven.wagon</groupId>
434                         <artifactId>wagon-webdav-jackrabbit</artifactId>
435                         <version>3.0.0</version>
436                     </dependency>
437                 </dependencies>
438             </plugin>
439
440             <!-- Set the deployment repositories properties. -->
441             <plugin>
442                 <groupId>org.codehaus.gmaven</groupId>
443                 <artifactId>gmaven-plugin</artifactId>
444                 <executions>
445                     <execution>
446                         <inherited>false</inherited>
447                         <phase>integration-test</phase>
448                         <goals>
449                             <goal>execute</goal>
450                         </goals>
451                         <configuration>
452                             <source>
453                                 pom.properties['deploy.url'] =
454                                 pom.version.contains('-SNAPSHOT') ?
455                                 project.distributionManagement.snapshotRepository.url :
456                                 project.distributionManagement.repository.url;
457                                 pom.properties['repo.id'] = pom.version.contains('-SNAPSHOT') ?
458                                 project.distributionManagement.snapshotRepository.id :
459                                 project.distributionManagement.repository.id;
460                             </source>
461                         </configuration>
462                     </execution>
463                 </executions>
464             </plugin>
465             <plugin>
466                 <groupId>org.apache.maven.plugins</groupId>
467                 <artifactId>maven-compiler-plugin</artifactId>
468                 <configuration>
469                     <source>1.8</source>
470                     <target>1.8</target>
471                 </configuration>
472             </plugin>
473             <plugin>
474                 <groupId>org.apache.maven.plugins</groupId>
475                 <artifactId>maven-surefire-plugin</artifactId>
476                 <configuration>
477                     <printSummary>false</printSummary>
478                     <systemPropertyVariables>
479                         <jacoco-agent.destfile>${project.build.directory}/jacoco.exec</jacoco-agent.destfile>
480                     </systemPropertyVariables>
481                 </configuration>
482             </plugin>
483             <plugin>
484                <groupId>pl.project13.maven</groupId>
485                <artifactId>git-commit-id-plugin</artifactId>
486                <executions>
487                   <execution>
488                      <goals>
489                         <goal>revision</goal>
490                      </goals>
491                   </execution>
492                </executions>
493                <configuration>
494                   <generateGitPropertiesFile>true</generateGitPropertiesFile>
495                   <generateGitPropertiesFilename>${project.build.outputDirectory}/META-INF/git.properties</generateGitPropertiesFilename>
496                   <failOnNoGitDirectory>true</failOnNoGitDirectory>
497                   <verbose>false</verbose>
498                   <includeOnlyProperties>
499                      <includeOnlyProperty>git.build.version</includeOnlyProperty>
500                      <includeOnlyProperty>git.build.time</includeOnlyProperty>
501                      <includeOnlyProperty>git.commit.id</includeOnlyProperty>
502                      <includeOnlyProperty>git.commit.time</includeOnlyProperty>
503                      <includeOnlyProperty>git.commit.user.name</includeOnlyProperty>
504                      <includeOnlyProperty>git.commit.user.email</includeOnlyProperty>
505                      <includeOnlyProperty>git.commit.message.short</includeOnlyProperty>
506                      <includeOnlyProperty>git.commit.message.full</includeOnlyProperty>
507                   </includeOnlyProperties>
508                   <gitDescribe>
509                      <skip>true</skip>
510                   </gitDescribe>
511                   <useNativeGit>false</useNativeGit>
512                </configuration>
513             </plugin>
514         </plugins>
515     </build>
516
517     <profiles>
518         <profile>
519             <id>all</id>
520             <activation>
521                 <activeByDefault>true</activeByDefault>
522             </activation>
523             <modules>
524                 <module>onboarding</module>
525                 <module>security-utils</module>
526                 <module>common-app-api</module>
527                 <module>common-be</module>
528                 <module>catalog-dao</module>
529                 <module>catalog-model</module>
530                 <module>catalog-be</module>
531                 <module>asdctool</module>
532                 <module>catalog-ui</module>
533                 <module>catalog-fe</module>
534                 <module>test-apis-ci</module>
535                 <module>ui-ci</module>
536                 <module>sdc-os-chef</module>
537                 <module>utils/webseal-simulator</module>
538             </modules>
539
540         </profile>
541
542         <profile>
543             <id>catalog</id>
544             <activation>
545                 <activeByDefault>false</activeByDefault>
546             </activation>
547             <modules>
548                 <module>security-utils</module>
549                 <module>common-app-api</module>
550                 <module>common-be</module>
551                 <module>catalog-dao</module>
552                 <module>catalog-model</module>
553                 <module>catalog-be</module>
554                 <module>asdctool</module>
555                 <module>catalog-ui</module>
556                 <module>catalog-fe</module>
557                 <module>test-apis-ci</module>
558                 <module>ui-ci</module>
559             </modules>
560
561             <properties>
562                 <sdc-tosca-parser.version>1.1.32</sdc-tosca-parser.version>
563             </properties>
564         </profile>
565
566         <profile>
567             <id>onboarding</id>
568             <activation>
569                 <activeByDefault>false</activeByDefault>
570             </activation>
571             <modules>
572                 <module>onboarding</module>
573             </modules>
574         </profile>
575
576     </profiles>
577
578     <repositories>
579         <!-- LF repositories -->
580         <repository>
581             <id>ecomp-releases</id>
582             <name>Release Repository</name>
583             <url>${nexus.proxy}/content/repositories/releases/</url>
584         </repository>
585         <repository>
586             <id>ecomp-snapshots</id>
587             <name>Snapshots Repository</name>
588             <url>${nexus.proxy}/content/repositories/snapshots/</url>
589         </repository>
590         <repository>
591             <id>ecomp-public</id>
592             <name>Public Repository</name>
593             <url>${nexus.proxy}/content/repositories/public/</url>
594         </repository>
595         <!-- LF repositories END-->
596     </repositories>
597
598     <distributionManagement>
599         <repository>
600             <id>ecomp-releases</id>
601             <name>Release Repository</name>
602             <url>${nexus.proxy}/content/repositories/releases/</url>
603         </repository>
604         <snapshotRepository>
605             <id>ecomp-snapshots</id>
606             <name>Snapshot Repository</name>
607             <url>${nexus.proxy}/content/repositories/snapshots/</url>
608         </snapshotRepository>
609         <site>
610             <id>ecomp-site</id>
611             <url>dav:${nexus.proxy}${sitePath}</url>
612         </site>
613     </distributionManagement>
614 </project>