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