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