json/yaml validation for models
[sdc.git] / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4
5     <groupId>org.openecomp.sdc</groupId>
6     <artifactId>sdc-main</artifactId>
7     <version>1.3.0-SNAPSHOT</version>
8     <packaging>pom</packaging>
9     <name>sdc</name>
10     <properties>
11         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
12
13         <!-- 3rd parties versions -->
14         <lang3.version>3.3.2</lang3.version>
15         <guava.version>18.0</guava.version>
16         <titan.version>1.0.0</titan.version>
17         <sdc.titan.version>1.2.0</sdc.titan.version>
18         <spring.version>4.3.17.RELEASE</spring.version>
19         <spring.security.version>3.2.3.RELEASE</spring.security.version>
20         <spring.ldap.version>2.0.1.RELEASE</spring.ldap.version>
21         <jersey-bom.version>2.27</jersey-bom.version>
22         <servlet-api.version>3.1.0</servlet-api.version>
23         <wire-mock.version>2.18.0</wire-mock.version>
24         <ecomp.version>1.1.0</ecomp.version>
25
26         <!-- Elastic Search mapper (reference the elastic search version actually). -->
27         <elastic-search.version>2.4.0</elastic-search.version>
28         <catalog-artifacts.version>1.0.0-SNAPSHOT</catalog-artifacts.version>
29         <catalog-builders.version>1.0.0-SNAPSHOT</catalog-builders.version>
30         <jetty.version>9.3.20.v20170531</jetty.version>
31
32         <!-- JSON and YAML Parsing -->
33         <jackson.version>2.8.10</jackson.version>
34         <jackson-annotations.version>2.8.0</jackson-annotations.version>
35
36         <!-- Yaml for properties -->
37         <snakeyaml.version>1.14</snakeyaml.version>
38         <functionaljava.version>4.7</functionaljava.version>
39         <httpclient.version>4.5.3</httpclient.version>
40         <httpcore.version>4.4.1</httpcore.version>
41         <json-simple.version>1.1</json-simple.version>
42
43         <!-- Logging start -->
44         <!-- logback -->
45         <logback.version>1.2.3</logback.version>
46         <slf4j-api.version>1.7.25</slf4j-api.version>
47         <commons-codec>1.10</commons-codec>
48         <commons-logging>1.2</commons-logging>
49         <groovy.version>2.4.13</groovy.version>
50         <janino.version>3.0.6</janino.version>
51
52         <!-- aspects -->
53         <jcabi.version>0.20.1</jcabi.version>
54         <aspectjrt.version>1.8.4</aspectjrt.version>
55         <aspectj.version>1.7.4</aspectj.version>
56         <jcabi.maven.plugin.version>0.13.2</jcabi.maven.plugin.version>
57
58         <!-- Logging end -->
59         <!-- System Metrics -->
60         <sigar.version>1.6.4</sigar.version>
61
62         <regex.version>3.0.3</regex.version>
63
64         <!--GSON-->
65         <gson.version>2.3.1</gson.version>
66
67         <!--listen to file changes-->
68         <commons-jci-core.version>1.1</commons-jci-core.version>
69
70         <!--TESTING-->
71         <mockito.version>2.18.3</mockito.version>
72         <jmockit.version>1.33</jmockit.version>
73         <junit.version>4.12</junit.version>
74         <assertj.version>3.10.0</assertj.version>
75         <testng.version>6.9.10</testng.version>
76         <extentreports.version>3.0.3</extentreports.version>
77         <cucumber.version>2.4.0</cucumber.version>
78         <bean-matchers.version>0.11</bean-matchers.version>
79
80         <!-- parser-->
81         <sdc-tosca-parser.version>1.3.5</sdc-tosca-parser.version>
82
83         <!-- sonar -->
84         <sonar.language>java</sonar.language>
85         <sonar.sourceEncoding>${project.build.sourceEncoding}</sonar.sourceEncoding>
86         <sonar.projectBaseDir>${project.basedir}</sonar.projectBaseDir>
87         <sonar.branch>${project.version}</sonar.branch>
88
89         <!--cassandra -->
90         <cassandra.driver.version>3.0.0</cassandra.driver.version>
91         <!-- maven central (Nexus) -->
92         <nexus.id.release>nexus</nexus.id.release>
93         <nexus.id.snapshot>nexus</nexus.id.snapshot>
94
95         <!--nexus-->
96         <npm.registry>https://registry.npmjs.org/</npm.registry>
97         <!-- https://nexus.onap.org/content/repositories/npm/ -->
98         <nexus.proxy>https://nexus.onap.org</nexus.proxy>
99         <sitePath>/content/sites/site/org/openecomp/sdc/${project.version}</sitePath>
100         <staging.profile.id>176c31dfe190a</staging.profile.id>
101         <!--maven-->
102         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
103         <!--docker tags-->
104         <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
105
106
107     </properties>
108
109     <dependencyManagement>
110         <dependencies>
111             <dependency>
112                 <groupId>org.glassfish.jersey.ext</groupId>
113                 <artifactId>jersey-bean-validation</artifactId>
114                 <version>${jersey-bom.version}</version>
115             </dependency>
116
117             <dependency>
118                 <groupId>org.glassfish.hk2.external</groupId>
119                 <artifactId>asm-all-repackaged</artifactId>
120                 <version>2.4.0</version>
121             </dependency>
122
123             <dependency>
124                 <groupId>org.assertj</groupId>
125                 <artifactId>assertj-core</artifactId>
126                 <version>${assertj.version}</version>
127             </dependency>
128
129             <dependency>
130                 <groupId>org.mockito</groupId>
131                 <artifactId>mockito-core</artifactId>
132                 <version>${mockito.version}</version>
133             </dependency>
134             
135                         <dependency>
136                         <groupId>org.jmockit</groupId>
137                                 <artifactId>jmockit</artifactId>
138                                 <version>${jmockit.version}</version>
139                         </dependency>
140                         
141
142             <dependency>
143                 <groupId>com.github.tomakehurst</groupId>
144                 <artifactId>wiremock-standalone</artifactId>
145                 <version>${wire-mock.version}</version>
146             </dependency>
147
148             <dependency>
149                 <groupId>io.cucumber</groupId>
150                 <artifactId>cucumber-java</artifactId>
151                 <version>${cucumber.version}</version>
152             </dependency>
153
154             <dependency>
155                 <groupId>io.cucumber</groupId>
156                 <artifactId>cucumber-junit</artifactId>
157                 <version>${cucumber.version}</version>
158             </dependency>
159
160             <dependency>
161                 <groupId>org.apache.commons</groupId>
162                 <artifactId>commons-lang3</artifactId>
163                 <version>${lang3.version}</version>
164             </dependency>
165         </dependencies>
166     </dependencyManagement>
167
168     <reporting>
169         <plugins>
170             <plugin>
171                 <groupId>org.apache.maven.plugins</groupId>
172                 <artifactId>maven-javadoc-plugin</artifactId>
173                 <version>3.0.1</version>
174                 <configuration>
175                     <failOnError>false</failOnError>
176                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
177                     <docletArtifact>
178                         <groupId>org.umlgraph</groupId>
179                         <artifactId>umlgraph</artifactId>
180                         <version>5.6</version>
181                     </docletArtifact>
182                     <additionalparam>-views</additionalparam>
183                     <useStandardDocletOptions>true</useStandardDocletOptions>
184                 </configuration>
185             </plugin>
186         </plugins>
187     </reporting>
188
189     <build>
190         <pluginManagement>
191             <plugins>
192                 <plugin>
193                     <groupId>org.jacoco</groupId>
194                     <artifactId>jacoco-maven-plugin</artifactId>
195                     <version>0.8.1</version>
196                 </plugin>
197                 <plugin>
198                     <groupId>org.apache.maven.plugins</groupId>
199                     <artifactId>maven-assembly-plugin</artifactId>
200                     <version>3.1.0</version>
201                 </plugin>
202
203                 <plugin>
204                     <groupId>org.codehaus.mojo</groupId>
205                     <artifactId>exec-maven-plugin</artifactId>
206                     <version>1.6.0</version>
207                 </plugin>
208                 <plugin>
209                     <groupId>org.sonarsource.scanner.maven</groupId>
210                     <artifactId>sonar-maven-plugin</artifactId>
211                     <version>3.4.1.1168</version>
212                 </plugin>
213                 <plugin>
214                     <groupId>org.apache.maven.plugins</groupId>
215                     <artifactId>maven-clean-plugin</artifactId>
216                     <version>3.1.0</version>
217                 </plugin>
218                 <plugin>
219                     <groupId>ru.yaal.maven</groupId>
220                     <artifactId>write-text-files-maven-plugin</artifactId>
221                     <version>1.1</version>
222                 </plugin>
223                 <plugin>
224                     <groupId>org.codehaus.gmaven</groupId>
225                     <artifactId>gmaven-plugin</artifactId>
226                     <version>1.5</version>
227                 </plugin>
228                 <plugin>
229                     <groupId>org.codehaus.mojo</groupId>
230                     <artifactId>build-helper-maven-plugin</artifactId>
231                     <version>3.0.0</version>
232                 </plugin>
233                 <plugin>
234                     <groupId>org.apache.maven.plugins</groupId>
235                     <artifactId>maven-deploy-plugin</artifactId>
236                     <version>2.8.2</version>
237                 </plugin>
238                 <plugin>
239                     <groupId>org.apache.maven.plugins</groupId>
240                     <artifactId>maven-shade-plugin</artifactId>
241                     <version>3.1.1</version>
242                 </plugin>
243                 <plugin>
244                     <groupId>org.apache.maven.plugins</groupId>
245                     <artifactId>maven-resources-plugin</artifactId>
246                     <version>3.1.0</version>
247                 </plugin>
248                 <plugin>
249                     <groupId>io.fabric8</groupId>
250                     <artifactId>docker-maven-plugin</artifactId>
251                     <version>0.26.0</version>
252                 </plugin>
253                 <plugin>
254                     <groupId>org.apache.maven.plugins</groupId>
255                     <artifactId>maven-war-plugin</artifactId>
256                     <version>3.2.2</version>
257                 </plugin>
258                 <plugin>
259                     <groupId>com.github.eirslett</groupId>
260                     <artifactId>frontend-maven-plugin</artifactId>
261                     <version>1.6</version>
262                 </plugin>
263                 <plugin>
264                     <groupId>org.apache.maven.plugins</groupId>
265                     <artifactId>maven-surefire-plugin</artifactId>
266                     <version>2.22.0</version>
267                 </plugin>
268                 <plugin>
269                     <groupId>org.apache.maven.plugins</groupId>
270                     <artifactId>maven-compiler-plugin</artifactId>
271                     <version>3.8.0</version>
272                 </plugin>
273                 <plugin>
274                     <groupId>org.sonatype.plugins</groupId>
275                     <artifactId>nexus-staging-maven-plugin</artifactId>
276                     <version>1.6.8</version>
277                 </plugin>
278                 <plugin>
279                     <groupId>com.github.sylvainlaurent.maven</groupId>
280                     <artifactId>yaml-json-validator-maven-plugin</artifactId>
281                     <version>1.0.1</version>
282                 </plugin>
283             </plugins>
284         </pluginManagement>
285
286         <plugins>
287
288             <!-- Staging Plugin -->
289             <plugin>
290                 <groupId>org.sonatype.plugins</groupId>
291                 <artifactId>nexus-staging-maven-plugin</artifactId>
292                 <extensions>true</extensions>
293                 <configuration>
294                     <nexusUrl>${nexus.proxy}</nexusUrl>
295                     <stagingProfileId>${staging.profile.id}</stagingProfileId>
296                     <serverId>ecomp-staging</serverId>
297                 </configuration>
298             </plugin>
299
300             <!-- plugin for parsing the project version -->
301             <plugin>
302                 <groupId>org.codehaus.mojo</groupId>
303                 <artifactId>build-helper-maven-plugin</artifactId>
304                 <executions>
305                     <execution>
306                         <id>parse-version</id>
307                         <phase>pre-clean</phase>
308                         <goals>
309                             <goal>parse-version</goal>
310                         </goals>
311                     </execution>
312                 </executions>
313             </plugin>
314
315             <!-- Java Code Coverage -->
316             <plugin>
317                 <groupId>org.jacoco</groupId>
318                 <artifactId>jacoco-maven-plugin</artifactId>
319                 <executions>
320                     <execution>
321                         <id>default-prepare-agent</id>
322                         <goals>
323                             <goal>prepare-agent</goal>
324                         </goals>
325                     </execution>
326                     <execution>
327                         <id>default-report</id>
328                         <goals>
329                             <goal>report</goal>
330                         </goals>
331                     </execution>
332                 </executions>
333             </plugin>
334
335             <plugin>
336                 <groupId>org.apache.maven.plugins</groupId>
337                 <artifactId>maven-site-plugin</artifactId>
338                 <version>3.7.1</version>
339                 <dependencies>
340                     <dependency>
341                         <groupId>org.apache.maven.wagon</groupId>
342                         <artifactId>wagon-webdav-jackrabbit</artifactId>
343                         <version>3.0.0</version>
344                     </dependency>
345                 </dependencies>
346             </plugin>
347
348             <!-- Set the deployment repositories properties. -->
349             <plugin>
350                 <groupId>org.codehaus.gmaven</groupId>
351                 <artifactId>gmaven-plugin</artifactId>
352                 <executions>
353                     <execution>
354                         <inherited>false</inherited>
355                         <phase>integration-test</phase>
356                         <goals>
357                             <goal>execute</goal>
358                         </goals>
359                         <configuration>
360                             <source>
361                                 pom.properties['deploy.url'] =
362                                 pom.version.contains('-SNAPSHOT') ?
363                                 project.distributionManagement.snapshotRepository.url :
364                                 project.distributionManagement.repository.url;
365                                 pom.properties['repo.id'] = pom.version.contains('-SNAPSHOT') ?
366                                 project.distributionManagement.snapshotRepository.id :
367                                 project.distributionManagement.repository.id;
368                             </source>
369                         </configuration>
370                     </execution>
371                 </executions>
372             </plugin>
373             <plugin>
374                 <groupId>org.apache.maven.plugins</groupId>
375                 <artifactId>maven-compiler-plugin</artifactId>
376                 <configuration>
377                     <source>1.8</source>
378                     <target>1.8</target>
379                 </configuration>
380             </plugin>
381             <plugin>
382                 <groupId>org.apache.maven.plugins</groupId>
383                 <artifactId>maven-surefire-plugin</artifactId>
384                 <configuration>
385                     <printSummary>false</printSummary>
386                 </configuration>
387             </plugin>
388         </plugins>
389     </build>
390
391     <profiles>
392         <profile>
393             <id>all</id>
394             <activation>
395                 <activeByDefault>true</activeByDefault>
396             </activation>
397             <modules>
398                 <module>onboarding</module>
399                 <module>security-utils</module>
400                 <module>common-app-api</module>
401                 <module>common-be</module>
402                 <module>catalog-dao</module>
403                 <module>catalog-model</module>
404                 <module>catalog-be</module>
405                 <module>asdctool</module>
406                 <module>catalog-ui</module>
407                 <module>catalog-fe</module>
408                 <module>test-apis-ci</module>
409                 <module>ui-ci</module>
410                 <module>sdc-os-chef</module>
411                 <module>utils/webseal-simulator</module>
412             </modules>
413
414         </profile>
415
416         <profile>
417             <id>catalog</id>
418             <activation>
419                 <activeByDefault>false</activeByDefault>
420             </activation>
421             <modules>
422                 <module>security-utils</module>
423                 <module>common-app-api</module>
424                 <module>common-be</module>
425                 <module>catalog-dao</module>
426                 <module>catalog-model</module>
427                 <module>catalog-be</module>
428                 <module>asdctool</module>
429                 <module>catalog-ui</module>
430                 <module>catalog-fe</module>
431                 <module>test-apis-ci</module>
432                 <module>ui-ci</module>
433             </modules>
434
435             <properties>
436                 <ecomp.version>1.2.7</ecomp.version>
437                 <sdc-tosca-parser.version>1.1.32</sdc-tosca-parser.version>
438             </properties>
439         </profile>
440
441         <profile>
442             <id>onboarding</id>
443             <activation>
444                 <activeByDefault>false</activeByDefault>
445             </activation>
446             <modules>
447                 <module>onboarding</module>
448             </modules>
449         </profile>
450
451     </profiles>
452
453     <repositories>
454         <!-- LF repositories -->
455         <repository>
456             <id>ecomp-releases</id>
457             <name>Release Repository</name>
458             <url>${nexus.proxy}/content/repositories/releases/</url>
459         </repository>
460         <repository>
461             <id>ecomp-snapshots</id>
462             <name>Snapshots Repository</name>
463             <url>${nexus.proxy}/content/repositories/snapshots/</url>
464         </repository>
465         <repository>
466             <id>ecomp-public</id>
467             <name>Public Repository</name>
468             <url>${nexus.proxy}/content/repositories/public/</url>
469         </repository>
470         <!-- LF repositories END-->
471     </repositories>
472
473     <distributionManagement>
474         <repository>
475             <id>ecomp-releases</id>
476             <name>Release Repository</name>
477             <url>${nexus.proxy}/content/repositories/releases/</url>
478         </repository>
479         <snapshotRepository>
480             <id>ecomp-snapshots</id>
481             <name>Snapshot Repository</name>
482             <url>${nexus.proxy}/content/repositories/snapshots/</url>
483         </snapshotRepository>
484         <site>
485             <id>ecomp-site</id>
486             <url>dav:${nexus.proxy}${sitePath}</url>
487         </site>
488     </distributionManagement>
489 </project>