Merge "Defining glassfish dependency version"
[ccsdk/parent.git] / odlparent / client-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
5
6
7         <modelVersion>4.0.0</modelVersion>
8         <packaging>pom</packaging>
9         <groupId>org.onap.ccsdk.parent</groupId>
10         <artifactId>client-parent</artifactId>
11         <version>1.1.0-SNAPSHOT</version>
12
13         <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
14         <url>http://wiki.onap.org</url>
15         <description>Root POM to be used for yang2swagger generation in CCSDK based projects</description>
16
17
18         <issueManagement>
19                 <system>JIRA</system>
20                 <url>https://jira.onap.org/</url>
21         </issueManagement>
22
23         <properties>
24
25                 <!-- properties from oparent -->
26                 <maven.compiler.source>1.8</maven.compiler.source>
27                 <maven.compiler.target>1.8</maven.compiler.target>
28                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
29                 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
30                 <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
31                 <!-- sitePath may be overridden in the inheriting POM if desired -->
32                 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
33
34                 <!-- ONAP repositories -->
35                 <onap.nexus.host>nexus.onap.org</onap.nexus.host>
36                 <onap.nexus.port>443</onap.nexus.port>
37                 <onap.nexus.protocol>https</onap.nexus.protocol>
38                 <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
39                 <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
40                 <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
41                 <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
42                 <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
43                 <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
44
45
46                 <!-- OpenDaylight repositories -->
47                 <opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
48                 <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
49
50
51                 <java.version.source>1.8</java.version.source>
52                 <java.version.target>1.8</java.version.target>
53                 <maven.compiler.version>3.6.1</maven.compiler.version>
54
55                 <checkstyle.skip>true</checkstyle.skip>
56
57                 <org.json.version>20170516</org.json.version>
58                 <jackson.version>2.8.5</jackson.version>
59                 <!-- Need to stick to JUnit 4.11 until https://github.com/jayway/powermock/issues/560 
60                         is fixed (either in PowerMock or with a new JUnit release) -->
61                 <!-- Used everywhere -->
62                 <junit.version>4.11</junit.version>
63                 <mockito.version>2.8.9</mockito.version>
64                 <lombok.version>1.18.0</lombok.version>
65                 <openpojo.version>0.8.10</openpojo.version>
66                 <spring.version>4.3.7.RELEASE</spring.version>
67                 <javax.validation.version>2.0.0.Final</javax.validation.version>
68                 <swagger.version>1.5.16</swagger.version>
69
70                 <!-- ONAP repositories -->
71                 <onap.nexus.host>nexus.onap.org</onap.nexus.host>
72                 <onap.nexus.port>443</onap.nexus.port>
73                 <onap.nexus.protocol>https</onap.nexus.protocol>
74                 <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
75                 <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
76                 <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
77                 <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
78                 <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
79                 <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
80
81         </properties>
82
83         <dependencies>
84                 <dependency>
85                         <groupId>org.mockito</groupId>
86                         <artifactId>mockito-core</artifactId>
87                         <version>${mockito.version}</version>
88                         <scope>test</scope>
89                 </dependency>
90                 <dependency>
91                         <groupId>org.projectlombok</groupId>
92                         <artifactId>lombok</artifactId>
93                         <version>${lombok.version}</version>
94                         <scope>provided</scope>
95                 </dependency>
96                 <dependency>
97                         <groupId>com.openpojo</groupId>
98                         <artifactId>openpojo</artifactId>
99                         <version>${openpojo.version}</version>
100                         <scope>test</scope>
101                 </dependency>
102                 <dependency>
103                         <groupId>junit</groupId>
104                         <artifactId>junit</artifactId>
105                         <version>${junit.version}</version>
106                         <scope>test</scope>
107                 </dependency>
108                 <dependency>
109                         <groupId>org.json</groupId>
110                         <artifactId>json</artifactId>
111                         <version>${org.json.version}</version>
112                 </dependency>
113                 <dependency>
114                         <groupId>com.fasterxml.jackson.jaxrs</groupId>
115                         <artifactId>jackson-jaxrs-base</artifactId>
116                         <version>${jackson.version}</version>
117                 </dependency>
118                 <dependency>
119                         <groupId>com.fasterxml.jackson.jaxrs</groupId>
120                         <artifactId>jackson-jaxrs-json-provider</artifactId>
121                         <version>${jackson.version}</version>
122                 </dependency>
123                 <dependency>
124                         <groupId>com.fasterxml.jackson.datatype</groupId>
125                         <artifactId>jackson-datatype-jsr310</artifactId>
126                         <version>${jackson.version}</version>
127                 </dependency>
128                 <dependency>
129                         <groupId>com.fasterxml.jackson.dataformat</groupId>
130                         <artifactId>jackson-dataformat-xml</artifactId>
131                         <version>${jackson.version}</version>
132                 </dependency>
133                 <dependency>
134                         <groupId>com.fasterxml.jackson.core</groupId>
135                         <artifactId>jackson-core</artifactId>
136                         <version>${jackson.version}</version>
137                 </dependency>
138                 <dependency>
139                         <groupId>com.fasterxml.jackson.core</groupId>
140                         <artifactId>jackson-databind</artifactId>
141                         <version>${jackson.version}</version>
142                 </dependency>
143                 <dependency>
144                         <groupId>com.fasterxml.jackson.core</groupId>
145                         <artifactId>jackson-annotations</artifactId>
146                         <version>${jackson.version}</version>
147                 </dependency>
148                 <dependency>
149                         <groupId>com.fasterxml.jackson.module</groupId>
150                         <artifactId>jackson-module-jaxb-annotations</artifactId>
151                         <version>${jackson.version}</version>
152                 </dependency>
153                 <dependency>
154                         <groupId>org.springframework</groupId>
155                         <artifactId>spring-web</artifactId>
156                         <version>${spring.version}</version>
157                 </dependency>
158                 <dependency>
159                         <groupId>io.swagger</groupId>
160                         <artifactId>swagger-annotations</artifactId>
161                         <version>${swagger.version}</version>
162                 </dependency>
163                 <dependency>
164                         <groupId>javax.validation</groupId>
165                         <artifactId>validation-api</artifactId>
166                         <version>${javax.validation.version}</version>
167                 </dependency>
168                 <dependency>
169                         <groupId>io.swagger</groupId>
170                         <artifactId>swagger-jaxrs</artifactId>
171                         <version>${swagger.version}</version>
172                 </dependency>
173                 <dependency>
174                         <groupId>io.swagger</groupId>
175                         <artifactId>swagger-models</artifactId>
176                         <version>${swagger.version}</version>
177                 </dependency>
178         </dependencies>
179
180         <pluginRepositories>
181                 <pluginRepository>
182                         <id>onap-public</id>
183                         <url>${onap.nexus.public-url}</url>
184                         <releases>
185                                 <enabled>true</enabled>
186                         </releases>
187                         <snapshots>
188                                 <enabled>true</enabled>
189                         </snapshots>
190                 </pluginRepository>
191                 <pluginRepository>
192                         <id>onap-staging</id>
193                         <url>${onap.nexus.staging-url}</url>
194                         <releases>
195                                 <enabled>true</enabled>
196                         </releases>
197                         <snapshots>
198                                 <enabled>true</enabled>
199                         </snapshots>
200                 </pluginRepository>
201                 <pluginRepository>
202                         <id>onap-snapshot</id>
203                         <url>${onap.nexus.snapshot-url}</url>
204                         <releases>
205                                 <enabled>false</enabled>
206                         </releases>
207                         <snapshots>
208                                 <enabled>true</enabled>
209                         </snapshots>
210                 </pluginRepository>
211                 <pluginRepository>
212                         <id>opendaylight-mirror</id>
213                         <name>opendaylight-mirror</name>
214                         <url>${opendaylight.nexus.public-url}</url>
215                         <releases>
216                                 <enabled>true</enabled>
217                                 <updatePolicy>never</updatePolicy>
218                         </releases>
219                         <snapshots>
220                                 <enabled>false</enabled>
221                         </snapshots>
222                 </pluginRepository>
223                 <pluginRepository>
224                         <id>opendaylight-snapshot</id>
225                         <name>opendaylight-snapshot</name>
226                         <url>${opendaylight.nexus.snapshot-url}</url>
227                         <releases>
228                                 <enabled>false</enabled>
229                         </releases>
230                         <snapshots>
231                                 <enabled>true</enabled>
232                         </snapshots>
233                 </pluginRepository>
234                 <!-- Black Duck plugin dependencies -->
235                 <pluginRepository>
236                         <id>JCenter</id>
237                         <name>JCenter Repository</name>
238                         <url>http://jcenter.bintray.com</url>
239                 </pluginRepository>
240
241                 <pluginRepository>
242                         <id>Restlet</id>
243                         <name>Restlet Repository</name>
244                         <url>http://maven.restlet.com</url>
245                 </pluginRepository>
246
247                 <pluginRepository>
248                         <id>onap-bintray</id>
249                         <name>onap-bintray</name>
250                         <url>https://nexus.onap.org/content/repositories/bintray/</url>
251                 </pluginRepository>
252         </pluginRepositories>
253
254
255         <repositories>
256                 <repository>
257                         <id>onap-public</id>
258                         <url>https://nexus.onap.org/content/groups/public</url>
259                         <releases>
260                                 <enabled>true</enabled>
261                                 <updatePolicy>never</updatePolicy>
262                         </releases>
263                         <snapshots>
264                                 <enabled>true</enabled>
265                                 <updatePolicy>always</updatePolicy>
266                         </snapshots>
267                 </repository>
268                 <repository>
269                         <id>onap-staging</id>
270                         <url>https://nexus.onap.org/content/groups/staging</url>
271                         <releases>
272                                 <enabled>true</enabled>
273                                 <updatePolicy>never</updatePolicy>
274                         </releases>
275                         <snapshots>
276                                 <enabled>true</enabled>
277                                 <updatePolicy>always</updatePolicy>
278                         </snapshots>
279                 </repository>
280                 <repository>
281                         <id>ecomp-release</id>
282                         <name>onap-repository-releases</name>
283                         <url>https://nexus.onap.org/content/repositories/releases</url>
284                         <releases>
285                                 <enabled>true</enabled>
286                                 <updatePolicy>never</updatePolicy>
287                         </releases>
288                         <snapshots>
289                                 <enabled>false</enabled>
290                         </snapshots>
291                 </repository>
292                 <repository>
293                         <id>ecomp-snapshot</id>
294                         <name>onap-repository-snapshots</name>
295                         <url>https://nexus.onap.org/content/repositories/snapshots</url>
296                         <releases>
297                                 <enabled>false</enabled>
298                         </releases>
299                         <snapshots>
300                                 <enabled>true</enabled>
301                         </snapshots>
302                 </repository>
303                 <repository>
304                         <id>opendaylight-mirror</id>
305                         <name>opendaylight-mirror</name>
306                         <url>https://nexus.opendaylight.org/content/repositories/public/</url>
307                         <releases>
308                                 <enabled>true</enabled>
309                                 <updatePolicy>never</updatePolicy>
310                         </releases>
311                         <snapshots>
312                                 <enabled>false</enabled>
313                         </snapshots>
314                 </repository>
315                 <repository>
316                         <id>opendaylight-snapshot</id>
317                         <name>opendaylight-snapshot</name>
318                         <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
319                         <releases>
320                                 <enabled>false</enabled>
321                         </releases>
322                         <snapshots>
323                                 <enabled>true</enabled>
324                         </snapshots>
325                 </repository>
326                 <repository>
327                         <snapshots>
328                                 <enabled>false</enabled>
329                         </snapshots>
330                         <id>onap-bintray</id>
331                         <name>onap-bintray</name>
332                         <url>https://nexus.onap.org/content/repositories/bintray/</url>
333                 </repository>
334         </repositories>
335
336         <distributionManagement>
337                 <repository>
338                         <id>ecomp-releases</id>
339                         <url>http://nexus.onap.org/content/repositories/releases</url>
340                 </repository>
341                 <snapshotRepository>
342                         <id>ecomp-snapshots</id>
343                         <url>http://nexus.onap.org/content/repositories/snapshots</url>
344                 </snapshotRepository>
345         </distributionManagement>
346
347         <build>
348                 <pluginManagement>
349                         <plugins>
350                                 <plugin>
351                                         <groupId>org.apache.maven.plugins</groupId>
352                                         <artifactId>maven-compiler-plugin</artifactId>
353                                         <version>${maven.compiler.version}</version>
354                                         <configuration>
355                                                 <source>${java.version.source}</source>
356                                                 <target>${java.version.target}</target>
357                                         </configuration>
358                                 </plugin>
359                                 <plugin>
360                                         <groupId>org.apache.maven.plugins</groupId>
361                                         <artifactId>maven-source-plugin</artifactId>
362                                         <version>3.0.1</version>
363                                         <executions>
364                                                 <execution>
365                                                         <id>install-sources</id>
366                                                         <goals>
367                                                                 <goal>jar</goal>
368                                                         </goals>
369                                                 </execution>
370                                                 <execution>
371                                                         <id>deploy-sources</id>
372                                                         <phase>deploy</phase>
373                                                         <goals>
374                                                                 <goal>jar</goal>
375                                                         </goals>
376                                                 </execution>
377                                         </executions>
378                                 </plugin>
379                                 <plugin>
380                                         <groupId>org.apache.maven.plugins</groupId>
381                                         <artifactId>maven-dependency-plugin</artifactId>
382                                         <version>2.10</version>
383                                         <configuration>
384                                                 <outputDirectory>${project.build.directory}/dependency</outputDirectory>
385                                                 <includes>**\/*.yang</includes>
386                                         </configuration>
387                                         <executions>
388                                                 <execution>
389                                                         <id>unpack-shared-resources</id>
390                                                         <goals>
391                                                                 <goal>unpack-dependencies</goal>
392                                                         </goals>
393                                                         <phase>initialize</phase>
394                                                 </execution>
395                                         </executions>
396                                 </plugin>
397                                 <plugin>
398                                         <artifactId>maven-antrun-plugin</artifactId>
399                                         <version>1.8</version>
400                                         <executions>
401                                                 <execution>
402                                                         <phase>initialize</phase>
403                                                         <goals>
404                                                                 <goal>run</goal>
405                                                         </goals>
406                                                 </execution>
407                                         </executions>
408                                         <configuration>
409                                                 <tasks>
410                                                         <!-- flatten out structure -->
411                                                         <move todir="${project.build.directory}/dependency"
412                                                                 failonerror="false">
413                                                                 <fileset dir="${project.build.directory}/dependency" />
414                                                                 <mapper type="flatten" />
415                                                         </move>
416                                                         <!-- move to yang folder -->
417                                                         <copy todir="${project.build.directory}/yang"
418                                                                 failonerror="false">
419                                                                 <fileset dir="${project.build.directory}/dependency"
420                                                                         includes="**/*.yang" />
421                                                                 <mapper type="flatten" />
422                                                         </copy>
423                                                         <!-- add in hard coded items from src/main/yang -->
424                                                         <copy todir="${project.build.directory}/yang"
425                                                                 failonerror="false">
426                                                                 <fileset dir="${project.basedir}/src/main/yang"
427                                                                         includes="**/*.yang" />
428                                                                 <mapper type="flatten" />
429                                                         </copy>
430                                                 </tasks>
431                                         </configuration>
432                                 </plugin>
433                                 <plugin>
434                                         <groupId>org.opendaylight.yangtools</groupId>
435                                         <artifactId>yang-maven-plugin</artifactId>
436                                         <version>1.2.3</version>
437                                         <dependencies>
438                                                 <dependency>
439                                                         <groupId>com.mrv.yangtools</groupId>
440                                                         <artifactId>swagger-maven-plugin</artifactId>
441                                                         <version>1.1.9</version>
442                                                 </dependency>
443                                                 <dependency>
444                                                         <groupId>com.github.romix</groupId>
445                                                         <artifactId>java-concurrent-hash-trie-map</artifactId>
446                                                         <version>0.2.23</version>
447                                                 </dependency>
448                                         </dependencies>
449                                         <executions>
450                                                 <execution>
451                                                         <goals>
452                                                                 <goal>generate-sources</goal>
453                                                         </goals>
454                                                         <configuration>
455                                                                 <codeGenerators>
456                                                                         <generator>
457                                                                                 <codeGeneratorClass>com.mrv.yangtools.maven.gen.swagger.MavenSwaggerGenerator</codeGeneratorClass>
458                                                                                 <outputBaseDir>${project.build.directory}/generated-sources/swagger-maven-api-gen</outputBaseDir>
459                                                                                 <resourceBaseDir>${project.build.directory}/yang</resourceBaseDir>
460                                                                                 <additionalConfiguration>
461                                                                                         <api-version>${project.version}</api-version>
462                                                                                         <base-module>client</base-module>
463                                                                                         <swagger-format>yaml</swagger-format>
464                                                                                 </additionalConfiguration>
465                                                                         </generator>
466                                                                 </codeGenerators>
467                                                                 <inspectDependencies>false</inspectDependencies>
468                                                                 <yangFilesRootDir>${project.build.directory}/yang</yangFilesRootDir>
469                                                         </configuration>
470                                                 </execution>
471                                         </executions>
472                                 </plugin>
473                                 <plugin>
474                                         <groupId>io.swagger</groupId>
475                                         <artifactId>swagger-codegen-maven-plugin</artifactId>
476                                         <version>2.2.3</version>
477                                         <dependencies>
478                                                 <dependency>
479                                                         <groupId>com.fasterxml.jackson.core</groupId>
480                                                         <artifactId>jackson-core</artifactId>
481                                                         <version>${jackson.version}</version>
482                                                 </dependency>
483                                                 <dependency>
484                                                         <groupId>com.fasterxml.jackson.core</groupId>
485                                                         <artifactId>jackson-databind</artifactId>
486                                                         <version>${jackson.version}</version>
487                                                 </dependency>
488                                                 <dependency>
489                                                         <groupId>com.fasterxml.jackson.core</groupId>
490                                                         <artifactId>jackson-annotations</artifactId>
491                                                         <version>${jackson.version}</version>
492                                                 </dependency>
493                                                 <dependency>
494                                                         <groupId>com.fasterxml.jackson.module</groupId>
495                                                         <artifactId>jackson-module-jaxb-annotations</artifactId>
496                                                         <version>${jackson.version}</version>
497                                                 </dependency>
498                                                 <dependency>
499                                                         <groupId>com.fasterxml.jackson.jaxrs</groupId>
500                                                         <artifactId>jackson-jaxrs-base</artifactId>
501                                                         <version>${jackson.version}</version>
502                                                 </dependency>
503                                                 <dependency>
504                                                         <groupId>com.fasterxml.jackson.jaxrs</groupId>
505                                                         <artifactId>jackson-jaxrs-json-provider</artifactId>
506                                                         <version>${jackson.version}</version>
507                                                 </dependency>
508                                         </dependencies>
509                                         <executions>
510                                                 <execution>
511                                                         <goals>
512                                                                 <goal>generate</goal>
513                                                         </goals>
514                                                         <configuration>
515                                                                 <inputSpec>${project.build.directory}/generated-sources/swagger-maven-api-gen/client.yaml</inputSpec>
516                                                                 <language>spring</language>
517                                                         </configuration>
518                                                 </execution>
519                                         </executions>
520                                 </plugin>
521
522
523                         </plugins>
524
525                 </pluginManagement>
526                 <plugins>
527                         <plugin>
528                                 <groupId>org.sonatype.plugins</groupId>
529                                 <artifactId>nexus-staging-maven-plugin</artifactId>
530                                 <version>1.6.7</version>
531                                 <extensions>true</extensions>
532                                 <configuration>
533                                         <nexusUrl>${onap.nexus.url}</nexusUrl>
534                                         <stagingProfileId>176c31dfe190a</stagingProfileId>
535                                         <serverId>ecomp-staging</serverId>
536                                 </configuration>
537                         </plugin>
538                         <plugin>
539                                 <groupId>org.codehaus.mojo</groupId>
540                                 <artifactId>versions-maven-plugin</artifactId>
541                                 <version>2.5</version>
542                                 <configuration>
543                                         <processAllModules>true</processAllModules>
544                                 </configuration>
545                         </plugin>
546                         <plugin>
547                                 <artifactId>maven-scm-plugin</artifactId>
548                                 <version>1.8.1</version>
549                                 <configuration>
550                                         <tag>${project.artifactId}-${project.version}</tag>
551                                 </configuration>
552                         </plugin>
553                 </plugins>
554         </build>
555         <organization>
556                 <name>ONAP</name>
557         </organization>
558 </project>