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