6b0ab8bfa78faa349cdec1e4839d48385319f7ba
[ccsdk/parent.git] / springboot / springboot2 / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3
4     <modelVersion>4.0.0</modelVersion>
5     <packaging>pom</packaging>
6     <groupId>org.onap.ccsdk.parent</groupId>
7     <artifactId>spring-boot-starter-parent</artifactId>
8     <version>1.5.0-SNAPSHOT</version>
9
10     <parent>
11         <groupId>org.springframework.boot</groupId>
12         <artifactId>spring-boot-starter-parent</artifactId>
13         <version>2.1.8.RELEASE</version>
14         <relativePath/>
15     </parent>
16
17     <url>http://wiki.onap.org</url>
18     <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
19     <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
20
21     <issueManagement>
22         <system>JIRA</system>
23         <url>https://jira.onap.org/</url>
24     </issueManagement>
25
26     <properties>
27         <!-- properties from oparent -->
28         <maven.compiler.source>1.8</maven.compiler.source>
29         <maven.compiler.target>1.8</maven.compiler.target>
30         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
31         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
32         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
33         <!-- sitePath may be overridden in the inheriting POM if desired -->
34         <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
35         <jacoco.version>0.7.7.201606060606</jacoco.version>
36         <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
37         <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
38         <!-- Default Sonar configuration -->
39         <sonar.jacoco.reportPaths>target/code-coverage/jacoco-ut.exec,target/code-coverage/jacoco-it.exec</sonar.jacoco.reportPaths>
40         <!-- Note: This list should match jacoco-maven-plugin's exclusion list
41             below -->
42         <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
43         <!-- If following file exist, auto-generation of swagger.json will be done -->
44         <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
45         <!-- If following file exist, auto-generation of sdk will be done -->
46         <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
47         <!-- end of properties from oparent -->
48
49         <!-- ONAP repositories -->
50         <onap.nexus.host>nexus.onap.org</onap.nexus.host>
51         <onap.nexus.port>443</onap.nexus.port>
52         <onap.nexus.protocol>https</onap.nexus.protocol>
53         <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
54         <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
55         <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
56         <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
57         <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
58         <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
59
60         <java.version.source>1.8</java.version.source>
61         <java.version.target>1.8</java.version.target>
62         <bundle.plugin.version>2.5.0</bundle.plugin.version>
63         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
64         <features.file>features.xml</features.file>
65         <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
66         <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
67         <checkstyle.skip>true</checkstyle.skip>
68
69         <sonar.language>java</sonar.language>
70         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
71         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
72         <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
73         <sonar.projectVersion>${project.version}</sonar.projectVersion>
74
75         <!-- CCSDK component versions -->
76         <ccsdk.sli.core.version>0.7.0-SNAPSHOT</ccsdk.sli.core.version>
77         <ccsdk.sli.adaptors.version>0.7.0-SNAPSHOT</ccsdk.sli.adaptors.version>
78         <ccsdk.sli.northbound.version>0.7.0-SNAPSHOT</ccsdk.sli.northbound.version>
79         <ccsdk.sli.plugins.version>0.7.0-SNAPSHOT</ccsdk.sli.plugins.version>
80         <ccsdk.distribution.version>0.7.0-SNAPSHOT</ccsdk.distribution.version>
81         <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version>
82         <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version>
83         <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version>
84         <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version>
85         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
86
87         <!-- Spring versions -->
88         <spring.boot.version>2.1.6.RELEASE</spring.boot.version>
89         <spring.version>5.1.8.RELEASE</spring.version>
90
91         <!-- Kotlin versions -->
92         <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
93         <kotlin.version>1.3.50</kotlin.version>
94         <kotlin.maven.version>1.3.50</kotlin.maven.version>
95         <kotlin.couroutines.version>1.3.1</kotlin.couroutines.version>
96         <kotlinpoet.version>1.3.0</kotlinpoet.version>
97         <kroto-plus.version>0.5.0</kroto-plus.version>
98         <mockk.version>1.9.3</mockk.version>
99
100         <apache.httpcomponents.core.version>4.4.4</apache.httpcomponents.core.version>
101         <apache.httpcomponents.client.version>4.5.2</apache.httpcomponents.client.version>
102         <derby.version>10.14.2.0</derby.version>
103         <eelf.version>1.0.0</eelf.version>
104         <grpc.version>1.18.0</grpc.version>
105         <protobuff.java.utils.version>3.6.1</protobuff.java.utils.version>
106         <jackson.bom.version>2.8.11.20181123</jackson.bom.version>
107         <jersey.version>2.25.1</jersey.version>
108         <jettison.version>1.3.8</jettison.version>
109         <junit.version>4.12</junit.version>
110         <logback.version>1.2.3</logback.version>
111         <mariadb.connector.version>2.1.1</mariadb.connector.version>
112         <mariadb4j.version>2.2.3</mariadb4j.version>
113         <slf4j.version>1.7.25</slf4j.version>
114         <testng.version>6.11</testng.version>
115         <tomcat-jdbc.version>8.5.14</tomcat-jdbc.version>
116
117     </properties>
118
119     <profiles>
120         <!-- Profiles from ONAP oparent -->
121         <profile>
122             <id>generate-json</id>
123             <activation>
124                 <file>
125                     <exists>${swagger-properties}</exists>
126                 </file>
127                 <property>
128                     <name>swagger-sdk.generate-json</name>
129                 </property>
130             </activation>
131             <build>
132                 <plugins>
133                     <plugin>
134                         <groupId>org.codehaus.mojo</groupId>
135                         <artifactId>properties-maven-plugin</artifactId>
136                         <version>1.0.0</version>
137                         <executions>
138                             <execution>
139                                 <phase>initialize</phase>
140                                 <goals>
141                                     <goal>read-project-properties</goal>
142                                 </goals>
143                                 <configuration>
144                                     <files>
145                                         <file>${basedir}/src/main/resources/swagger.properties</file>
146                                     </files>
147                                 </configuration>
148                             </execution>
149                         </executions>
150                     </plugin>
151                     <plugin>
152                         <groupId>com.github.kongchen</groupId>
153                         <artifactId>swagger-maven-plugin</artifactId>
154                         <version>3.1.4</version>
155                         <configuration>
156                             <apiSources>
157                                 <apiSource>
158                                     <locations>${api-rest-package}</locations>
159                                     <schemes>http,https</schemes>
160                                     <host>${api-host-ip}:${api-host-port}</host>
161                                     <basePath>${api-base-path}</basePath>
162                                     <info>
163                                         <title>${api-title}</title>
164                                         <version>${api-version}</version>
165                                         <description>${api-description}</description>
166                                         <license>
167                                             <name>${api-license}</name>
168                                         </license>
169                                     </info>
170                                     <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
171                                 </apiSource>
172                             </apiSources>
173                         </configuration>
174                         <executions>
175                             <execution>
176                                 <phase>compile</phase>
177                                 <goals>
178                                     <goal>generate</goal>
179                                 </goals>
180                             </execution>
181                         </executions>
182                     </plugin>
183                     <plugin>
184                         <groupId>org.apache.maven.plugins</groupId>
185                         <artifactId>maven-install-plugin</artifactId>
186                         <version>2.3.1</version>
187                         <executions>
188                             <execution>
189                                 <id>install-file-id</id>
190                                 <phase>install</phase>
191                                 <goals>
192                                     <goal>install-file</goal>
193                                 </goals>
194                                 <configuration>
195                                     <file>${basedir}/src/main/resources/swagger.json</file>
196                                     <groupId>${project.groupId}</groupId>
197                                     <artifactId>${project.artifactId}-swagger-schema</artifactId>
198                                     <version>${project.version}</version>
199                                     <packaging>json</packaging>
200                                 </configuration>
201                             </execution>
202                         </executions>
203                     </plugin>
204                 </plugins>
205             </build>
206         </profile>
207         <profile>
208             <id>generate-sdk</id>
209             <activation>
210                 <file>
211                     <exists>${swagger-json}</exists>
212                 </file>
213                 <property>
214                     <name>swagger-sdk.generate-java-sdk</name>
215                 </property>
216             </activation>
217             <build>
218                 <plugins>
219                     <plugin>
220                         <groupId>org.apache.maven.plugins</groupId>
221                         <artifactId>maven-antrun-plugin</artifactId>
222                         <version>1.8</version>
223                         <executions>
224                             <execution>
225                                 <phase>initialize</phase>
226                                 <id>ant-create-script</id>
227                                 <configuration>
228                                     <exportAntProperties>true</exportAntProperties>
229                                     <tasks>
230
231                                         <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
232                                         <condition property="is_windows" value="true">
233                                             <os family="windows"/>
234                                         </condition>
235                                         <condition property="isLinux" value="true">
236                                             <os family="unix"/>
237                                         </condition>
238                                         <if>
239                                             <equals arg1="${is_windows}" arg2="true"/>
240                                             <then>
241                                                 <property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
242                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
243                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
244                                             </then>
245                                             <else>
246                                                 <property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
247                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
248                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
249                                                 <chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
250                                             </else>
251                                         </if>
252                                     </tasks>
253                                 </configuration>
254                                 <goals>
255                                     <goal>run</goal>
256                                 </goals>
257                             </execution>
258                         </executions>
259                         <dependencies>
260                             <dependency>
261                                 <groupId>ant-contrib</groupId>
262                                 <artifactId>ant-contrib</artifactId>
263                                 <version>1.0b3</version>
264                                 <exclusions>
265                                     <exclusion>
266                                         <artifactId>ant</artifactId>
267                                         <groupId>ant</groupId>
268                                     </exclusion>
269                                 </exclusions>
270                             </dependency>
271                         </dependencies>
272                     </plugin>
273                     <plugin>
274                         <groupId>io.swagger</groupId>
275                         <artifactId>swagger-codegen-maven-plugin</artifactId>
276                         <version>2.2.1</version>
277                         <executions>
278                             <execution>
279                                 <goals>
280                                     <goal>generate</goal>
281                                 </goals>
282                                 <configuration>
283                                     <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
284                                     <output>${project.build.directory}/generated-sources</output>
285                                     <language>java</language>
286                                     <configOptions>
287                                         <dateLibrary>joda</dateLibrary>
288                                     </configOptions>
289                                     <library>jersey2</library>
290                                     <groupId>${project.groupId}</groupId>
291                                     <artifactId>${project.artifactId}-java-sdk</artifactId>
292                                     <artifactVersion>${project.version}</artifactVersion>
293                                     <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
294                                     <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
295                                     <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
296                                 </configuration>
297                             </execution>
298                         </executions>
299                     </plugin>
300                     <plugin>
301                         <artifactId>exec-maven-plugin</artifactId>
302                         <groupId>org.codehaus.mojo</groupId>
303                         <version>1.5.0</version>
304                         <executions>
305                             <execution>
306                                 <id>swagger-generate-sources</id>
307                                 <phase>generate-sources</phase>
308                                 <goals>
309                                     <goal>exec</goal>
310                                 </goals>
311                                 <configuration>
312                                     <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
313                                 </configuration>
314                             </execution>
315                         </executions>
316                     </plugin>
317                     <plugin>
318                         <groupId>org.apache.maven.plugins</groupId>
319                         <artifactId>maven-clean-plugin</artifactId>
320                         <version>3.0.0</version>
321                         <executions>
322                             <execution>
323                                 <id>clean-generated-files</id>
324                                 <phase>generate-sources</phase>
325                                 <goals>
326                                     <goal>clean</goal>
327                                 </goals>
328                                 <configuration>
329                                     <filesets>
330                                         <fileset>
331                                             <directory>${project.build.directory}/generated-sources</directory>
332                                         </fileset>
333                                     </filesets>
334                                 </configuration>
335                             </execution>
336                         </executions>
337                     </plugin>
338                 </plugins>
339             </build>
340             <dependencies>
341                 <dependency>
342                     <groupId>org.onap.msb.swagger-sdk</groupId>
343                     <artifactId>swagger-sdk</artifactId>
344                     <version>1.0.0</version>
345                 </dependency>
346             </dependencies>
347         </profile>
348         <profile>
349             <!-- http://blog2.vorburger.ch/2016/06/improve-maven-build-speed-with-q.html
350                  q = http://memory-alpha.wikia.com/wiki/Q ;)
351
352                  The Quick profile is used during incremental local development, when you want to "just get that JAR built",
353                  which is very handy e.g. for fast hot reloading cycles in Karaf with bundle watch.  It (intentionally!) skips
354                  tests, quality checks etc. which are great and useful to run before finally submitting changes to Gerrit, and
355                  which all must run on Gerrit, but which are overhead during ongoing fast iterative local development.
356
357                  Note that the idea here is that your IDE will already have run quality checks such as e.g. Checkstyle
358                  while you typed the code anyway.  Similarly, if you wrote a test, you'll probably already have compiled and run it
359                  from your IDE, so when you want the OSGi bundle JAR for Karaf, ASAP, you typically don't want all that to run again.
360               -->
361             <id>q</id>
362             <properties>
363                 <skipTests>true</skipTests>
364                 <!-- But NOT <maven.test.skip>true, as that's for compiling, not running, tests;
365                      and that's usually quick.  Skipping test compilation with -Pq with maven.test.skip would be
366                      particularly confusing when used in a project with maven-jar-plugin <goal>test-jar, so don't.)  -->
367                 <skipIT>true</skipIT>
368                 <skipITs>true</skipITs>
369                 <skip.karaf.featureTest>true</skip.karaf.featureTest>
370                 <jacoco.skip>true</jacoco.skip>
371                 <maven.javadoc.skip>true</maven.javadoc.skip>
372                 <maven.source.skip>true</maven.source.skip>
373                 <checkstyle.skip>true</checkstyle.skip>
374                 <findbugs.skip>true</findbugs.skip>
375                 <spotbugs.skip>true</spotbugs.skip>
376                 <pmd.skip>true</pmd.skip>
377                 <cpd.skip>true</cpd.skip>
378                 <maven.site.skip>true</maven.site.skip>
379                 <invoker.skip>true</invoker.skip>
380                 <enforcer.skip>true</enforcer.skip>
381                 <duplicate-finder.skip>true</duplicate-finder.skip>
382                 <mdsal.skip.verbose>true</mdsal.skip.verbose> <!-- Bug 6236 -->
383                 <maven.gitcommitid.skip>true</maven.gitcommitid.skip>
384                 <modernizer.skip>true</modernizer.skip>
385             </properties>
386         </profile>
387         <!-- End of profiles from ONAP oparent -->
388
389     </profiles>
390
391     <dependencyManagement>
392         <dependencies>
393             <dependency>
394                 <groupId>org.onap.ccsdk.parent</groupId>
395                 <artifactId>dependencies-bom</artifactId>
396                 <version>1.5.0-SNAPSHOT</version>
397                 <type>pom</type>
398                 <scope>import</scope>
399             </dependency>
400             <dependency>
401                 <groupId>org.onap.ccsdk.sli.core</groupId>
402                 <artifactId>sli-common</artifactId>
403                 <version>${ccsdk.sli.core.version}</version>
404             </dependency>
405
406             <dependency>
407                 <groupId>org.onap.ccsdk.sli.core</groupId>
408                 <artifactId>sli-provider</artifactId>
409                 <version>${ccsdk.sli.core.version}</version>
410             </dependency>
411             <dependency>
412                 <groupId>org.onap.ccsdk.sli.core</groupId>
413                 <artifactId>ccsdk-sli</artifactId>
414                 <version>${ccsdk.sli.core.version}</version>
415                 <type>xml</type>
416                 <classifier>features</classifier>
417             </dependency>
418             <dependency>
419                 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
420                 <artifactId>aai-service-provider</artifactId>
421                 <version>${sdnctl.aai.service.version}</version>
422             </dependency>
423
424             <dependency>
425                 <groupId>org.onap.ccsdk.sli.core</groupId>
426                 <artifactId>dblib-provider</artifactId>
427                 <version>${sdnctl.dblib.version}</version>
428             </dependency>
429             <dependency>
430                 <groupId>junit</groupId>
431                 <artifactId>junit</artifactId>
432                 <version>${junit.version}</version>
433                 <scope>test</scope>
434             </dependency>
435         </dependencies>
436
437     </dependencyManagement>
438
439     <reporting>
440         <plugins>
441             <plugin>
442                 <artifactId>maven-javadoc-plugin</artifactId>
443                 <version>2.10.4</version>
444                 <configuration>
445                     <failOnError>false</failOnError>
446                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
447                     <docletArtifact>
448                         <groupId>org.umlgraph</groupId>
449                         <artifactId>umlgraph</artifactId>
450                         <version>5.6</version>
451                     </docletArtifact>
452                     <additionalparam>-views</additionalparam>
453                     <useStandardDocletOptions>true</useStandardDocletOptions>
454                     <excludePackageNames>org.opendaylight.*</excludePackageNames>
455                 </configuration>
456                 <reportSets>
457                     <reportSet>
458                         <reports>
459                             <report>javadoc-no-fork</report>
460                             <report>test-javadoc-no-fork</report>
461                         </reports>
462                     </reportSet>
463                     <reportSet>
464                         <id>aggregate</id>
465                         <reports>
466                             <report>aggregate</report>
467                             <report>test-aggregate</report>
468                         </reports>
469                     </reportSet>
470                 </reportSets>
471             </plugin>
472             <plugin>
473                 <groupId>org.apache.maven.plugins</groupId>
474                 <artifactId>maven-jxr-plugin</artifactId>
475                 <version>2.3</version>
476                 <reportSets>
477                     <reportSet>
478                         <id>aggregate</id>
479                         <reports>
480                             <report>aggregate</report>
481                             <report>test-aggregate</report>
482                         </reports>
483                     </reportSet>
484                 </reportSets>
485             </plugin>
486
487             <plugin>
488                 <artifactId>maven-surefire-plugin</artifactId>
489                 <version>2.17</version>
490             </plugin>
491             <plugin>
492                 <groupId>org.apache.maven.plugins</groupId>
493                 <artifactId>maven-changelog-plugin</artifactId>
494                 <version>2.3</version>
495                 <reportSets>
496                     <reportSet>
497                         <id>dual-report</id>
498                         <configuration>
499                             <type>range</type>
500                             <range>30</range>
501                         </configuration>
502                         <reports>
503                             <report>changelog</report>
504                             <report>file-activity</report>
505                         </reports>
506                     </reportSet>
507                 </reportSets>
508             </plugin>
509             <plugin>
510                 <groupId>org.codehaus.mojo</groupId>
511                 <artifactId>taglist-maven-plugin</artifactId>
512                 <version>2.4</version>
513             </plugin>
514         </plugins>
515     </reporting>
516
517     <pluginRepositories>
518         <pluginRepository>
519             <id>onap-public</id>
520             <url>${onap.nexus.public-url}</url>
521             <releases>
522                 <enabled>true</enabled>
523             </releases>
524             <snapshots>
525                 <enabled>true</enabled>
526             </snapshots>
527         </pluginRepository>
528         <pluginRepository>
529             <id>onap-staging</id>
530             <url>${onap.nexus.staging-url}</url>
531             <releases>
532                 <enabled>true</enabled>
533             </releases>
534             <snapshots>
535                 <enabled>true</enabled>
536             </snapshots>
537         </pluginRepository>
538         <pluginRepository>
539             <id>onap-snapshot</id>
540             <url>${onap.nexus.snapshot-url}</url>
541             <releases>
542                 <enabled>false</enabled>
543             </releases>
544             <snapshots>
545                 <enabled>true</enabled>
546             </snapshots>
547         </pluginRepository>
548         <pluginRepository>
549             <id>opendaylight-mirror</id>
550             <name>opendaylight-mirror</name>
551             <url>${opendaylight.nexus.public-url}</url>
552             <releases>
553                 <enabled>true</enabled>
554                 <updatePolicy>never</updatePolicy>
555             </releases>
556             <snapshots>
557                 <enabled>false</enabled>
558             </snapshots>
559         </pluginRepository>
560         <pluginRepository>
561             <id>opendaylight-snapshot</id>
562             <name>opendaylight-snapshot</name>
563             <url>${opendaylight.nexus.snapshot-url}</url>
564             <releases>
565                 <enabled>false</enabled>
566             </releases>
567             <snapshots>
568                 <enabled>true</enabled>
569             </snapshots>
570         </pluginRepository>
571         <!-- Black Duck plugin dependencies -->
572         <pluginRepository>
573             <id>JCenter</id>
574             <name>JCenter Repository</name>
575             <url>http://jcenter.bintray.com</url>
576         </pluginRepository>
577
578         <pluginRepository>
579             <id>Restlet</id>
580             <name>Restlet Repository</name>
581             <url>http://maven.restlet.com</url>
582         </pluginRepository>
583     </pluginRepositories>
584
585     <repositories>
586         <repository>
587             <id>onap-public</id>
588             <url>https://nexus.onap.org/content/groups/public</url>
589             <releases>
590                 <enabled>true</enabled>
591                 <updatePolicy>never</updatePolicy>
592             </releases>
593             <snapshots>
594                 <enabled>true</enabled>
595                 <updatePolicy>always</updatePolicy>
596             </snapshots>
597         </repository>
598         <repository>
599             <id>onap-staging</id>
600             <url>https://nexus.onap.org/content/groups/staging</url>
601             <releases>
602                 <enabled>true</enabled>
603                 <updatePolicy>never</updatePolicy>
604             </releases>
605             <snapshots>
606                 <enabled>true</enabled>
607                 <updatePolicy>always</updatePolicy>
608             </snapshots>
609         </repository>
610         <repository>
611             <id>ecomp-release</id>
612             <name>onap-repository-releases</name>
613             <url>https://nexus.onap.org/content/repositories/releases</url>
614             <releases>
615                 <enabled>true</enabled>
616                 <updatePolicy>never</updatePolicy>
617             </releases>
618             <snapshots>
619                 <enabled>false</enabled>
620             </snapshots>
621         </repository>
622         <repository>
623             <id>ecomp-snapshot</id>
624             <name>onap-repository-snapshots</name>
625             <url>https://nexus.onap.org/content/repositories/snapshots</url>
626             <releases>
627                 <enabled>false</enabled>
628             </releases>
629             <snapshots>
630                 <enabled>true</enabled>
631             </snapshots>
632         </repository>
633         <repository>
634             <id>opendaylight-mirror</id>
635             <name>opendaylight-mirror</name>
636             <url>https://nexus.opendaylight.org/content/repositories/public/</url>
637             <releases>
638                 <enabled>true</enabled>
639                 <updatePolicy>never</updatePolicy>
640             </releases>
641             <snapshots>
642                 <enabled>false</enabled>
643             </snapshots>
644         </repository>
645         <repository>
646             <id>opendaylight-snapshot</id>
647             <name>opendaylight-snapshot</name>
648             <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
649             <releases>
650                 <enabled>false</enabled>
651             </releases>
652             <snapshots>
653                 <enabled>true</enabled>
654             </snapshots>
655         </repository>
656
657     </repositories>
658
659     <distributionManagement>
660         <repository>
661             <id>ecomp-releases</id>
662             <url>https://nexus.onap.org/content/repositories/releases</url>
663         </repository>
664         <snapshotRepository>
665             <id>ecomp-snapshots</id>
666             <url>https://nexus.onap.org/content/repositories/snapshots</url>
667         </snapshotRepository>
668     </distributionManagement>
669
670     <build>
671         <pluginManagement>
672             <plugins>
673
674                 <!-- Plugins from ONAP oparent -->
675                 <plugin>
676                     <groupId>org.apache.maven.plugins</groupId>
677                     <artifactId>maven-deploy-plugin</artifactId>
678                     <!-- This version supports the "deployAtEnd" parameter -->
679                     <version>2.8</version>
680                     <configuration>
681                         <skip/>
682                     </configuration>
683                 </plugin>
684
685                 <plugin>
686                     <groupId>org.apache.maven.plugins</groupId>
687                     <artifactId>maven-site-plugin</artifactId>
688                     <version>3.6</version>
689                     <dependencies>
690                         <dependency>
691                             <groupId>org.apache.maven.wagon</groupId>
692                             <artifactId>wagon-webdav-jackrabbit</artifactId>
693                             <version>2.10</version>
694                         </dependency>
695                         <dependency>
696                             <groupId>org.apache.maven.doxia</groupId>
697                             <artifactId>doxia-core</artifactId>
698                             <version>1.7</version>
699                         </dependency>
700                         <dependency>
701                             <groupId>org.apache.maven.doxia</groupId>
702                             <artifactId>doxia-sink-api</artifactId>
703                             <version>1.7</version>
704                         </dependency>
705                         <dependency>
706                             <groupId>org.apache.maven.doxia</groupId>
707                             <artifactId>doxia-logging-api</artifactId>
708                             <version>1.7</version>
709                         </dependency>
710                     </dependencies>
711                     <executions>
712                         <execution>
713                             <id>attach-descriptor</id>
714                             <goals>
715                                 <goal>attach-descriptor</goal>
716                             </goals>
717                         </execution>
718                     </executions>
719                 </plugin>
720                 <plugin>
721                     <artifactId>maven-checkstyle-plugin</artifactId>
722                     <version>2.17</version>
723                     <dependencies>
724                         <dependency>
725                             <groupId>org.onap.oparent</groupId>
726                             <artifactId>checkstyle</artifactId>
727                             <version>1.1.1</version>
728                         </dependency>
729                     </dependencies>
730                     <executions>
731                         <execution>
732                             <id>check-license</id>
733                             <goals>
734                                 <goal>check</goal>
735                             </goals>
736                             <phase>process-sources</phase>
737                             <configuration>
738                                 <configLocation>onap-checkstyle/check-license.xml</configLocation>
739                                 <headerLocation>onap-checkstyle/apache-license-2.regexp.txt</headerLocation>
740                                 <includeResources>false</includeResources>
741                                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
742                                 <includeTestResources>false</includeTestResources>
743                                 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
744                                 <excludes>
745                                 </excludes>
746                                 <failsOnError>false</failsOnError>
747                                 <consoleOutput>true</consoleOutput>
748                             </configuration>
749                         </execution>
750                         <execution>
751                             <id>check-style</id>
752                             <goals>
753                                 <goal>check</goal>
754                             </goals>
755                             <phase>process-sources</phase>
756                             <configuration>
757                                 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
758                                     with minor changes -->
759                                 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
760                                 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated
761                                     sources directory -->
762                                 <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
763                                 <includeResources>true</includeResources>
764                                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
765                                 <includeTestResources>true</includeTestResources>
766                                 <excludes>
767                                 </excludes>
768                                 <failsOnError>false</failsOnError>
769                                 <consoleOutput>true</consoleOutput>
770                             </configuration>
771                         </execution>
772                     </executions>
773                 </plugin>
774                 <plugin>
775                     <groupId>org.jacoco</groupId>
776                     <artifactId>jacoco-maven-plugin</artifactId>
777                     <version>${jacoco.version}</version>
778                     <configuration>
779                         <!-- Note: This exclusion list should match <sonar.exclusions> property
780                             above -->
781                         <excludes>
782                             <exclude>**/gen/**</exclude>
783                             <exclude>**/generated-sources/**</exclude>
784                             <exclude>**/yang-gen/**</exclude>
785                             <exclude>**/pax/**</exclude>
786                         </excludes>
787                     </configuration>
788                     <executions>
789                         <!-- Prepares the property pointing to the JaCoCo runtime agent which
790                             is passed as VM argument when Maven the Surefire plugin is executed. -->
791                         <execution>
792                             <id>pre-unit-test</id>
793                             <goals>
794                                 <goal>prepare-agent</goal>
795                             </goals>
796                             <configuration>
797                                 <!-- Sets the path to the file which contains the execution data. -->
798                                 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
799                                 <!-- Sets the name of the property containing the settings for JaCoCo
800                                     runtime agent. -->
801                                 <propertyName>surefireArgLine</propertyName>
802                             </configuration>
803                         </execution>
804                         <!-- Ensures that the code coverage report for unit tests is created
805                             after unit tests have been run. -->
806                         <execution>
807                             <id>post-unit-test</id>
808                             <phase>test</phase>
809                             <goals>
810                                 <goal>report</goal>
811                             </goals>
812                             <configuration>
813                                 <!-- Sets the path to the file which contains the execution data. -->
814                                 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
815                                 <!-- Sets the output directory for the code coverage report. -->
816                                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
817                             </configuration>
818                         </execution>
819                         <execution>
820                             <id>pre-integration-test</id>
821                             <phase>pre-integration-test</phase>
822                             <goals>
823                                 <goal>prepare-agent</goal>
824                             </goals>
825                             <configuration>
826                                 <!-- Sets the path to the file which contains the execution data. -->
827                                 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
828                                 <!-- Sets the name of the property containing the settings for JaCoCo
829                                     runtime agent. -->
830                                 <propertyName>failsafeArgLine</propertyName>
831                             </configuration>
832                         </execution>
833                         <!-- Ensures that the code coverage report for integration tests after
834                             integration tests have been run. -->
835                         <execution>
836                             <id>post-integration-test</id>
837                             <phase>post-integration-test</phase>
838                             <goals>
839                                 <goal>report</goal>
840                             </goals>
841                             <configuration>
842                                 <!-- Sets the path to the file which contains the execution data. -->
843                                 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
844                                 <!-- Sets the output directory for the code coverage report. -->
845                                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
846                             </configuration>
847                         </execution>
848                     </executions>
849                 </plugin>
850                 <plugin>
851                     <groupId>org.apache.maven.plugins</groupId>
852                     <artifactId>maven-surefire-plugin</artifactId>
853                     <version>2.19.1</version>
854                     <configuration>
855                         <!-- Sets the VM argument line used when unit tests are run. -->
856                         <argLine>${surefireArgLine}</argLine>
857                         <!-- Excludes integration tests when unit tests are run. -->
858                         <excludes>
859                             <exclude>**/IT*.java</exclude>
860                         </excludes>
861                     </configuration>
862                 </plugin>
863                 <plugin>
864                     <groupId>org.apache.maven.plugins</groupId>
865                     <artifactId>maven-failsafe-plugin</artifactId>
866                     <version>2.19.1</version>
867                     <executions>
868                         <!-- Ensures that both integration-test and verify goals of the Failsafe
869                             Maven plugin are executed. -->
870                         <execution>
871                             <id>integration-tests</id>
872                             <goals>
873                                 <goal>integration-test</goal>
874                                 <goal>verify</goal>
875                             </goals>
876                             <configuration>
877                                 <!-- Sets the VM argument line used when integration tests are run. -->
878                                 <argLine>${failsafeArgLine}</argLine>
879                             </configuration>
880                         </execution>
881                     </executions>
882                 </plugin>
883                 <plugin>
884                     <groupId>org.apache.maven.plugins</groupId>
885                     <artifactId>maven-compiler-plugin</artifactId>
886                     <version>${maven.compile.plugin.version}</version>
887                     <configuration>
888                         <source>${java.version.source}</source>
889                         <target>${java.version.target}</target>
890                     </configuration>
891                 </plugin>
892                 <plugin>
893                     <groupId>org.sonarsource.scanner.maven</groupId>
894                     <artifactId>sonar-maven-plugin</artifactId>
895                     <version>3.3.0.603</version>
896                 </plugin>
897
898                 <!-- End of plugins from ONAP oparent -->
899
900                 <plugin>
901                     <groupId>org.apache.maven.plugins</groupId>
902                     <artifactId>maven-javadoc-plugin</artifactId>
903                     <version>2.10</version>
904                     <configuration>
905                         <additionalDependencies>
906                             <additionalDependency>
907                                 <groupId>org.slf4j</groupId>
908                                 <artifactId>slf4j-api</artifactId>
909                                 <version>${slf4j.version}</version>
910                             </additionalDependency>
911                             <additionalDependency>
912                                 <groupId>org.antlr</groupId>
913                                 <artifactId>antlr4</artifactId>
914                                 <version>${antlr.version}</version>
915                             </additionalDependency>
916                             <additionalDependency>
917                                 <groupId>org.antlr</groupId>
918                                 <artifactId>antlr4-runtime</artifactId>
919                                 <version>${antlr.version}</version>
920                             </additionalDependency>
921
922                             <additionalDependency>
923                                 <groupId>com.sun.jersey</groupId>
924                                 <artifactId>jersey-client</artifactId>
925                                 <version>${jersey.client.version}</version>
926                             </additionalDependency>
927                             <additionalDependency>
928                                 <groupId>com.sun.jersey</groupId>
929                                 <artifactId>jersey-core</artifactId>
930                                 <version>${jersey.version}</version>
931                             </additionalDependency>
932                             <additionalDependency>
933                                 <groupId>org.apache.httpcomponents</groupId>
934                                 <artifactId>httpcore-osgi</artifactId>
935                                 <version>${apache.httpcomponents.core.version}</version>
936                             </additionalDependency>
937                             <additionalDependency>
938                                 <groupId>org.apache.httpcomponents</groupId>
939                                 <artifactId>httpclient-osgi</artifactId>
940                                 <version>${apache.httpcomponents.client.version}</version>
941                             </additionalDependency>
942                             <additionalDependency>
943                                 <groupId>commons-lang</groupId>
944                                 <artifactId>commons-lang</artifactId>
945                                 <version>${commons.lang.version}</version>
946                             </additionalDependency>
947                         </additionalDependencies>
948                     </configuration>
949
950                     <executions>
951                         <execution>
952                             <id>aggregate</id>
953                             <goals>
954                                 <goal>aggregate</goal>
955                             </goals>
956                             <phase>site</phase>
957
958                         </execution>
959                     </executions>
960                 </plugin>
961
962             </plugins>
963
964         </pluginManagement>
965
966         <plugins>
967             <!-- Plugins from ONAP oparent -->
968             <plugin>
969                 <artifactId>maven-checkstyle-plugin</artifactId>
970             </plugin>
971             <plugin>
972                 <groupId>org.codehaus.mojo</groupId>
973                 <artifactId>build-helper-maven-plugin</artifactId>
974                 <version>1.12</version>
975             </plugin>
976             <!-- Jacoco / Sonar -->
977             <plugin>
978                 <groupId>org.jacoco</groupId>
979                 <artifactId>jacoco-maven-plugin</artifactId>
980             </plugin>
981             <plugin>
982                 <groupId>org.apache.maven.plugins</groupId>
983                 <artifactId>maven-surefire-plugin</artifactId>
984             </plugin>
985             <plugin>
986                 <groupId>org.apache.maven.plugins</groupId>
987                 <artifactId>maven-failsafe-plugin</artifactId>
988             </plugin>
989
990             <!-- End of plugins from ONAP oparent -->
991             <plugin>
992                 <groupId>org.codehaus.mojo</groupId>
993                 <artifactId>properties-maven-plugin</artifactId>
994                 <version>1.0.0</version>
995                 <executions>
996                     <execution>
997                         <goals>
998                             <goal>set-system-properties</goal>
999                         </goals>
1000                         <configuration>
1001                             <properties>
1002                                 <property>
1003                                     <name>maven.wagon.http.ssl.allowall</name>
1004                                     <value>${ssl.allowall}</value>
1005                                 </property>
1006                                 <property>
1007                                     <name>maven.wagon.http.ssl.insecure</name>
1008                                     <value>${ssl.insecure}</value>
1009                                 </property>
1010                             </properties>
1011                         </configuration>
1012                     </execution>
1013                 </executions>
1014             </plugin>
1015             <plugin>
1016                 <groupId>org.codehaus.mojo</groupId>
1017                 <artifactId>versions-maven-plugin</artifactId>
1018                 <version>2.5</version>
1019                 <configuration>
1020                     <processAllModules>true</processAllModules>
1021                 </configuration>
1022             </plugin>
1023             <plugin>
1024                 <artifactId>maven-scm-plugin</artifactId>
1025                 <version>1.8.1</version>
1026                 <configuration>
1027                     <tag>${project.artifactId}-${project.version}</tag>
1028                 </configuration>
1029             </plugin>
1030         </plugins>
1031     </build>
1032     <organization>
1033         <name>ONAP</name>
1034     </organization>
1035 </project>