blob: a4b6baa4e216fadb992d78a7b3735e21e0bb7051 [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)739cd722022-11-07 13:10:00 -050017 <version>2.5.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>
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>
JohnKeeneyb43680f2022-11-01 18:38:33 +0000133 <log4j.version>2.17.2</log4j.version>
134 <log4j2.version>2.17.2</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)739cd722022-11-07 13:10:00 -0500153 <version>2.5.1-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>
JohnKeeneyb43680f2022-11-01 18:38:33 +0000160 <version>2.14.0-rc1</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>
JohnKeeney38654972022-04-29 17:59:14 +0100290
JohnKeeney38654972022-04-29 17:59:14 +0100291 </pluginRepositories>
292
293 <build>
294 <pluginManagement>
295 <plugins>
296 <!-- Plugins from ONAP oparent -->
297 <plugin>
298 <groupId>org.apache.maven.plugins</groupId>
299 <artifactId>maven-deploy-plugin</artifactId>
300 <!-- This version supports the "deployAtEnd" parameter -->
301 <version>2.8</version>
302 <configuration>
303 <skip/>
304 <deployAtEnd>true</deployAtEnd>
305 </configuration>
306 </plugin>
307 <plugin>
308 <groupId>org.apache.maven.plugins</groupId>
309 <artifactId>maven-site-plugin</artifactId>
310 <version>3.6</version>
311 <dependencies>
312 <dependency>
313 <groupId>org.apache.maven.wagon</groupId>
314 <artifactId>wagon-webdav-jackrabbit</artifactId>
315 <version>2.10</version>
316 </dependency>
317 <dependency>
318 <groupId>org.apache.maven.doxia</groupId>
319 <artifactId>doxia-core</artifactId>
320 <version>1.7</version>
321 </dependency>
322 <dependency>
323 <groupId>org.apache.maven.doxia</groupId>
324 <artifactId>doxia-sink-api</artifactId>
325 <version>1.7</version>
326 </dependency>
327 <dependency>
328 <groupId>org.apache.maven.doxia</groupId>
329 <artifactId>doxia-logging-api</artifactId>
330 <version>1.7</version>
331 </dependency>
332 </dependencies>
333 <executions>
334 <execution>
335 <id>attach-descriptor</id>
336 <goals>
337 <goal>attach-descriptor</goal>
338 </goals>
339 </execution>
340 </executions>
341 </plugin>
342 <plugin>
343 <groupId>org.apache.maven.plugins</groupId>
344 <artifactId>maven-checkstyle-plugin</artifactId>
345 <version>2.17</version>
346 <dependencies>
347 <dependency>
348 <groupId>org.onap.oparent</groupId>
349 <artifactId>checkstyle</artifactId>
350 <version>1.1.1</version>
351 </dependency>
352 </dependencies>
353 <executions>
354 <execution>
355 <id>check-license</id>
356 <goals>
357 <goal>check</goal>
358 </goals>
359 <phase>process-sources</phase>
360 <configuration>
361 <configLocation>onap-checkstyle/check-license.xml</configLocation>
362 <headerLocation>onap-checkstyle/apache-license-2.regexp.txt</headerLocation>
363 <includeResources>false</includeResources>
364 <includeTestSourceDirectory>true</includeTestSourceDirectory>
365 <includeTestResources>false</includeTestResources>
366 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
367 <excludes>
368 </excludes>
369 <failsOnError>false</failsOnError>
370 <consoleOutput>true</consoleOutput>
371 </configuration>
372 </execution>
373 <execution>
374 <id>check-style</id>
375 <goals>
376 <goal>check</goal>
377 </goals>
378 <phase>process-sources</phase>
379 <configuration>
380 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
381 with minor changes -->
382 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
383 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
384 <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
385 <includeResources>true</includeResources>
386 <includeTestSourceDirectory>true</includeTestSourceDirectory>
387 <includeTestResources>true</includeTestResources>
388 <excludes>
389 </excludes>
390 <failsOnError>false</failsOnError>
391 <consoleOutput>true</consoleOutput>
392 </configuration>
393 </execution>
394 </executions>
395 </plugin>
396
397 <plugin>
398 <groupId>org.apache.maven.plugins</groupId>
399 <artifactId>maven-surefire-plugin</artifactId>
400 <version>2.19.1</version>
401 <configuration>
402 <!-- Sets the VM argument line used when unit tests are run. -->
403 <argLine>${surefireArgLine}</argLine>
404 <!-- Excludes integration tests when unit tests are run. -->
405 <excludes>
406 <exclude>**/IT*.java</exclude>
407 </excludes>
408 </configuration>
409 </plugin>
410 <plugin>
411 <groupId>org.apache.maven.plugins</groupId>
412 <artifactId>maven-failsafe-plugin</artifactId>
413 <version>2.19.1</version>
414 <executions>
415 <!-- Ensures that both integration-test and verify goals of the Failsafe Maven plugin are executed. -->
416 <execution>
417 <id>integration-tests</id>
418 <goals>
419 <goal>integration-test</goal>
420 <goal>verify</goal>
421 </goals>
422 <configuration>
423 <!-- Sets the VM argument line used when integration tests are run. -->
424 <argLine>${failsafeArgLine}</argLine>
425 </configuration>
426 </execution>
427 </executions>
428 </plugin>
429 <plugin>
430 <groupId>org.apache.maven.plugins</groupId>
431 <artifactId>maven-compiler-plugin</artifactId>
Singal, Kapil (ks220y)76ea3c62022-05-02 14:13:19 -0400432 <version>${maven.compile.plugin.version}</version>
JohnKeeney38654972022-04-29 17:59:14 +0100433 <configuration>
434 <release>${java.version}</release>
435 <!--explicitly remove source and target-->
436 <source combine.self="override"/>
437 <target combine.self="override"/>
438 </configuration>
439 </plugin>
440 <plugin>
441 <groupId>org.sonarsource.scanner.maven</groupId>
442 <artifactId>sonar-maven-plugin</artifactId>
443 <version>3.6.0.1398</version>
444 </plugin>
445
446 <!-- End of plugins from ONAP oparent -->
447
448 <plugin>
449 <groupId>org.apache.maven.plugins</groupId>
450 <artifactId>maven-javadoc-plugin</artifactId>
451 <version>3.2.0</version>
452 <configuration>
453 <additionalDependencies>
454 <additionalDependency>
455 <groupId>org.slf4j</groupId>
456 <artifactId>slf4j-api</artifactId>
457 <version>${slf4j.version}</version>
458 </additionalDependency>
459 <additionalDependency>
460 <groupId>org.antlr</groupId>
461 <artifactId>antlr4</artifactId>
462 <version>${antlr.version}</version>
463 </additionalDependency>
464 <additionalDependency>
465 <groupId>org.antlr</groupId>
466 <artifactId>antlr4-runtime</artifactId>
467 <version>${antlr.version}</version>
468 </additionalDependency>
469 <additionalDependency>
470 <groupId>com.sun.jersey</groupId>
471 <artifactId>jersey-client</artifactId>
472 <version>${jersey.client.version}</version>
473 </additionalDependency>
474 <additionalDependency>
475 <groupId>com.sun.jersey</groupId>
476 <artifactId>jersey-core</artifactId>
477 <version>${jersey.version}</version>
478 </additionalDependency>
479 <additionalDependency>
480 <groupId>org.apache.httpcomponents</groupId>
481 <artifactId>httpcore-osgi</artifactId>
482 <version>${apache.httpcomponents.core.version}</version>
483 </additionalDependency>
484 <additionalDependency>
485 <groupId>org.apache.httpcomponents</groupId>
486 <artifactId>httpclient-osgi</artifactId>
487 <version>${apache.httpcomponents.client.version}</version>
488 </additionalDependency>
489 <additionalDependency>
490 <groupId>commons-lang</groupId>
491 <artifactId>commons-lang</artifactId>
492 <version>${commons.lang.version}</version>
493 </additionalDependency>
494 </additionalDependencies>
495 <failOnError>false</failOnError>
496 </configuration>
497 <executions>
498 <execution>
499 <id>aggregate</id>
500 <goals>
501 <goal>aggregate</goal>
502 </goals>
503 <phase>site</phase>
504 </execution>
505 </executions>
506 </plugin>
507 <plugin>
508 <groupId>com.github.ferstl</groupId>
509 <artifactId>depgraph-maven-plugin</artifactId>
510 <version>3.3.0</version>
511 <configuration>
512 <graphFormat>text</graphFormat>
513 <outputFileName>${dependency-list.file}</outputFileName>
514 <outputDirectory>${project.basedir}</outputDirectory>
515 <transitiveExcludes>*</transitiveExcludes>
516 <showVersions>true</showVersions>
517 <showGroupIds>true</showGroupIds>
518 </configuration>
519 </plugin>
520 </plugins>
521 </pluginManagement>
522 <plugins>
523 <!-- Plugins from ONAP oparent -->
524 <!-- Jacoco / Sonar -->
525 <plugin>
526 <groupId>org.jacoco</groupId>
527 <artifactId>jacoco-maven-plugin</artifactId>
528 <version>${jacoco.version}</version>
529 <executions>
530 <execution>
531 <id>pre-unit-test</id>
532 <goals>
533 <goal>prepare-agent</goal>
534 </goals>
535 <configuration>
536 <!-- Sets the path to the file which contains the execution data. -->
537 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
538 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
539 <propertyName>surefireArgLine</propertyName>
540 </configuration>
541 </execution>
542 <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
543 <execution>
544 <id>post-unit-test</id>
545 <phase>test</phase>
546 <goals>
547 <goal>report</goal>
548 </goals>
549 <configuration>
550 <!-- Sets the path to the file which contains the execution data. -->
551 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
552 <!-- Sets the output directory for the code coverage report. -->
553 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
554 </configuration>
555 </execution>
556 <execution>
557 <id>pre-integration-test</id>
558 <phase>pre-integration-test</phase>
559 <goals>
560 <goal>prepare-agent</goal>
561 </goals>
562 <configuration>
563 <!-- Sets the path to the file which contains the execution data. -->
564 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
565 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
566 <propertyName>failsafeArgLine</propertyName>
567 </configuration>
568 </execution>
569 <!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
570 <execution>
571 <id>post-integration-test</id>
572 <phase>post-integration-test</phase>
573 <goals>
574 <goal>report</goal>
575 </goals>
576 <configuration>
577 <!-- Sets the path to the file which contains the execution data. -->
578 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
579 <!-- Sets the output directory for the code coverage report. -->
580 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
581 </configuration>
582 </execution>
583 <execution>
584 <id>default-prepare-agent</id>
585 <goals>
586 <goal>prepare-agent</goal>
587 </goals>
588 </execution>
589 <execution>
590 <id>default-report</id>
591 <phase>prepare-package</phase>
592 <goals>
593 <goal>report</goal>
594 </goals>
595 </execution>
596 <execution>
597 <id>default-check</id>
598 <goals>
599 <goal>check</goal>
600 </goals>
601 <configuration>
602 <rules>
603 <rule>
604 <element>PACKAGE</element>
605 <limits>
606 <limit>
607 <counter>COMPLEXITY</counter>
608 <value>COVEREDRATIO</value>
609 <minimum>0.0</minimum>
610 </limit>
611 </limits>
612 </rule>
613 </rules>
614 </configuration>
615 </execution>
616 </executions>
617 </plugin>
618 <plugin>
619 <groupId>org.apache.maven.plugins</groupId>
620 <artifactId>maven-deploy-plugin</artifactId>
621 </plugin>
622 <plugin>
623 <groupId>org.apache.maven.plugins</groupId>
624 <artifactId>maven-checkstyle-plugin</artifactId>
625 </plugin>
626 <plugin>
627 <groupId>org.codehaus.mojo</groupId>
628 <artifactId>build-helper-maven-plugin</artifactId>
629 <version>1.12</version>
630 </plugin>
631 <!-- Jacoco / Sonar -->
632 <plugin>
633 <groupId>org.apache.maven.plugins</groupId>
634 <artifactId>maven-surefire-plugin</artifactId>
635 </plugin>
636 <plugin>
637 <groupId>org.apache.maven.plugins</groupId>
638 <artifactId>maven-failsafe-plugin</artifactId>
639 </plugin>
640
641 <!-- End of plugins from ONAP oparent -->
642 <plugin>
643 <groupId>org.codehaus.mojo</groupId>
644 <artifactId>properties-maven-plugin</artifactId>
645 <version>1.0.0</version>
646 <executions>
647 <execution>
648 <goals>
649 <goal>set-system-properties</goal>
650 </goals>
651 <configuration>
652 <properties>
653 <property>
654 <name>maven.wagon.http.ssl.allowall</name>
655 <value>${ssl.allowall}</value>
656 </property>
657 <property>
658 <name>maven.wagon.http.ssl.insecure</name>
659 <value>${ssl.insecure}</value>
660 </property>
661 </properties>
662 </configuration>
663 </execution>
664 </executions>
665 </plugin>
666 <plugin>
667 <groupId>org.codehaus.mojo</groupId>
668 <artifactId>versions-maven-plugin</artifactId>
669 <version>2.5</version>
670 <configuration>
671 <processAllModules>true</processAllModules>
672 </configuration>
673 </plugin>
674 <plugin>
675 <artifactId>maven-scm-plugin</artifactId>
676 <version>1.8.1</version>
677 <configuration>
678 <tag>${project.artifactId}-${project.version}</tag>
679 </configuration>
680 </plugin>
681 <plugin>
682 <groupId>pl.project13.maven</groupId>
683 <artifactId>git-commit-id-plugin</artifactId>
684 <version>4.0.0</version>
685 <configuration>
686 <commitIdGenerationMode>full</commitIdGenerationMode>
687 <includeOnlyProperties>
688 <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
689 <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
690 </includeOnlyProperties>
691 </configuration>
692 </plugin>
693 </plugins>
694 </build>
695
696 <reporting>
697 <plugins>
698 <plugin>
699 <artifactId>maven-javadoc-plugin</artifactId>
700 <version>2.10.4</version>
701 <configuration>
702 <failOnError>false</failOnError>
703 <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
704 <docletArtifact>
705 <groupId>org.umlgraph</groupId>
706 <artifactId>umlgraph</artifactId>
707 <version>5.6</version>
708 </docletArtifact>
709 <additionalparam>-views</additionalparam>
710 <useStandardDocletOptions>true</useStandardDocletOptions>
711 <excludePackageNames>org.opendaylight.*</excludePackageNames>
712 </configuration>
713 <reportSets>
714 <reportSet>
715 <reports>
716 <report>javadoc-no-fork</report>
717 <report>test-javadoc-no-fork</report>
718 </reports>
719 </reportSet>
720 <reportSet>
721 <id>aggregate</id>
722 <reports>
723 <report>aggregate</report>
724 <report>test-aggregate</report>
725 </reports>
726 </reportSet>
727 </reportSets>
728 </plugin>
729 <plugin>
730 <groupId>org.apache.maven.plugins</groupId>
731 <artifactId>maven-jxr-plugin</artifactId>
732 <version>2.3</version>
733 <reportSets>
734 <reportSet>
735 <id>aggregate</id>
736 <reports>
737 <report>aggregate</report>
738 <report>test-aggregate</report>
739 </reports>
740 </reportSet>
741 </reportSets>
742 </plugin>
743 <plugin>
744 <artifactId>maven-surefire-plugin</artifactId>
745 <version>2.17</version>
746 </plugin>
747 <plugin>
748 <groupId>org.apache.maven.plugins</groupId>
749 <artifactId>maven-changelog-plugin</artifactId>
750 <version>2.3</version>
751 <reportSets>
752 <reportSet>
753 <id>dual-report</id>
754 <configuration>
755 <type>range</type>
756 <range>30</range>
757 </configuration>
758 <reports>
759 <report>changelog</report>
760 <report>file-activity</report>
761 </reports>
762 </reportSet>
763 </reportSets>
764 </plugin>
765 <plugin>
766 <groupId>org.codehaus.mojo</groupId>
767 <artifactId>taglist-maven-plugin</artifactId>
768 <version>2.4</version>
769 </plugin>
770 </plugins>
771 </reporting>
772
773 <profiles>
774 <!-- Profiles from ONAP oparent -->
775 <profile>
776 <id>generate-json</id>
777 <activation>
778 <file>
779 <exists>${swagger-properties}</exists>
780 </file>
781 <property>
782 <name>swagger-sdk.generate-json</name>
783 </property>
784 </activation>
785 <build>
786 <plugins>
787 <plugin>
788 <groupId>org.codehaus.mojo</groupId>
789 <artifactId>properties-maven-plugin</artifactId>
790 <version>1.0.0</version>
791 <executions>
792 <execution>
793 <phase>initialize</phase>
794 <goals>
795 <goal>read-project-properties</goal>
796 </goals>
797 <configuration>
798 <files>
799 <file>${basedir}/src/main/resources/swagger.properties</file>
800 </files>
801 </configuration>
802 </execution>
803 </executions>
804 </plugin>
805 <plugin>
806 <groupId>com.github.kongchen</groupId>
807 <artifactId>swagger-maven-plugin</artifactId>
808 <version>3.1.4</version>
809 <configuration>
810 <apiSources>
811 <apiSource>
812 <locations>${api-rest-package}</locations>
813 <schemes>http,https</schemes>
814 <host>${api-host-ip}:${api-host-port}</host>
815 <basePath>${api-base-path}</basePath>
816 <info>
817 <title>${api-title}</title>
818 <version>${api-version}</version>
819 <description>${api-description}</description>
820 <license>
821 <name>${api-license}</name>
822 </license>
823 </info>
824 <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
825 </apiSource>
826 </apiSources>
827 </configuration>
828 <executions>
829 <execution>
830 <phase>compile</phase>
831 <goals>
832 <goal>generate</goal>
833 </goals>
834 </execution>
835 </executions>
836 </plugin>
837 <plugin>
838 <groupId>org.apache.maven.plugins</groupId>
839 <artifactId>maven-install-plugin</artifactId>
840 <version>2.3.1</version>
841 <executions>
842 <execution>
843 <id>install-file-id</id>
844 <phase>install</phase>
845 <goals>
846 <goal>install-file</goal>
847 </goals>
848 <configuration>
849 <file>${basedir}/src/main/resources/swagger.json</file>
850 <groupId>${project.groupId}</groupId>
851 <artifactId>${project.artifactId}-swagger-schema</artifactId>
852 <version>${project.version}</version>
853 <packaging>json</packaging>
854 </configuration>
855 </execution>
856 </executions>
857 </plugin>
858 </plugins>
859 </build>
860 </profile>
861 <profile>
862 <id>generate-sdk</id>
863 <activation>
864 <file>
865 <exists>${swagger-json}</exists>
866 </file>
867 <property>
868 <name>swagger-sdk.generate-java-sdk</name>
869 </property>
870 </activation>
871 <build>
872 <plugins>
873 <plugin>
874 <groupId>org.apache.maven.plugins</groupId>
875 <artifactId>maven-antrun-plugin</artifactId>
Timoney, Dan (dt5972)f48dfab2022-09-29 10:19:17 -0400876 <version>${maven-antrun-plugin.version}</version>
JohnKeeney38654972022-04-29 17:59:14 +0100877 <executions>
878 <execution>
879 <phase>initialize</phase>
880 <id>ant-create-script</id>
881 <configuration>
882 <exportAntProperties>true</exportAntProperties>
883 <tasks>
884 <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
885 <condition property="is_windows" value="true">
886 <os family="windows"/>
887 </condition>
888 <condition property="isLinux" value="true">
889 <os family="unix"/>
890 </condition>
891 <if>
892 <equals arg1="${is_windows}" arg2="true"/>
893 <then>
894 <property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
895 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
896 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
897 </then>
898 <else>
899 <property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
900 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
901 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
902 <chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
903 </else>
904 </if>
905 </tasks>
906 </configuration>
907 <goals>
908 <goal>run</goal>
909 </goals>
910 </execution>
911 </executions>
912 <dependencies>
913 <dependency>
914 <groupId>ant-contrib</groupId>
915 <artifactId>ant-contrib</artifactId>
916 <version>1.0b3</version>
917 <exclusions>
918 <exclusion>
919 <groupId>ant</groupId>
920 <artifactId>ant</artifactId>
921 </exclusion>
922 </exclusions>
923 </dependency>
924 </dependencies>
925 </plugin>
926 <plugin>
927 <groupId>io.swagger</groupId>
928 <artifactId>swagger-codegen-maven-plugin</artifactId>
929 <version>2.2.1</version>
930 <executions>
931 <execution>
932 <goals>
933 <goal>generate</goal>
934 </goals>
935 <configuration>
936 <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
937 <output>${project.build.directory}/generated-sources</output>
938 <language>java</language>
939 <configOptions>
940 <dateLibrary>joda</dateLibrary>
941 </configOptions>
942 <library>jersey2</library>
943 <groupId>${project.groupId}</groupId>
944 <artifactId>${project.artifactId}-java-sdk</artifactId>
945 <artifactVersion>${project.version}</artifactVersion>
946 <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
947 <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
948 <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
949 </configuration>
950 </execution>
951 </executions>
952 </plugin>
953 <plugin>
954 <groupId>org.codehaus.mojo</groupId>
955 <artifactId>exec-maven-plugin</artifactId>
956 <version>1.5.0</version>
957 <executions>
958 <execution>
959 <id>swagger-generate-sources</id>
960 <phase>generate-sources</phase>
961 <goals>
962 <goal>exec</goal>
963 </goals>
964 <configuration>
965 <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
966 </configuration>
967 </execution>
968 </executions>
969 </plugin>
970 <plugin>
971 <groupId>org.apache.maven.plugins</groupId>
972 <artifactId>maven-clean-plugin</artifactId>
973 <version>3.0.0</version>
974 <executions>
975 <execution>
976 <id>clean-generated-files</id>
977 <phase>generate-sources</phase>
978 <goals>
979 <goal>clean</goal>
980 </goals>
981 <configuration>
982 <filesets>
983 <fileset>
984 <directory>${project.build.directory}/generated-sources</directory>
985 </fileset>
986 </filesets>
987 </configuration>
988 </execution>
989 </executions>
990 </plugin>
991 </plugins>
992 </build>
993 <dependencies>
994 <dependency>
995 <groupId>org.onap.msb.swagger-sdk</groupId>
996 <artifactId>swagger-sdk</artifactId>
997 <version>1.0.0</version>
998 </dependency>
999 </dependencies>
1000 </profile>
1001 <profile>
1002 <!-- http://blog2.vorburger.ch/2016/06/improve-maven-build-speed-with-q.html
1003 q = http://memory-alpha.wikia.com/wiki/Q ;)
1004
1005 The Quick profile is used during incremental local development, when you want to "just get that JAR built",
1006 which is very handy e.g. for fast hot reloading cycles in Karaf with bundle watch. It (intentionally!) skips
1007 tests, quality checks etc. which are great and useful to run before finally submitting changes to Gerrit, and
1008 which all must run on Gerrit, but which are overhead during ongoing fast iterative local development.
1009
1010 Note that the idea here is that your IDE will already have run quality checks such as e.g. Checkstyle
1011 while you typed the code anyway. Similarly, if you wrote a test, you'll probably already have compiled and run it
1012 from your IDE, so when you want the OSGi bundle JAR for Karaf, ASAP, you typically don't want all that to run again.
1013 -->
1014 <id>q</id>
1015 <properties>
1016 <skipTests>true</skipTests>
1017 <skipPush>true</skipPush>
1018 <docker.skip.push>true</docker.skip.push>
1019 <!-- But NOT <maven.test.skip>true, as that's for compiling, not running, tests;
1020 and that's usually quick. Skipping test compilation with -Pq with maven.test.skip would be
1021 particularly confusing when used in a project with maven-jar-plugin <goal>test-jar, so don't.) -->
1022 <skipIT>true</skipIT>
1023 <skipITs>true</skipITs>
1024 <skip.karaf.featureTest>true</skip.karaf.featureTest>
1025 <jacoco.skip>true</jacoco.skip>
1026 <maven.javadoc.skip>true</maven.javadoc.skip>
1027 <maven.source.skip>true</maven.source.skip>
1028 <checkstyle.skip>true</checkstyle.skip>
1029 <findbugs.skip>true</findbugs.skip>
1030 <spotbugs.skip>true</spotbugs.skip>
1031 <pmd.skip>true</pmd.skip>
1032 <cpd.skip>true</cpd.skip>
1033 <maven.site.skip>true</maven.site.skip>
1034 <invoker.skip>true</invoker.skip>
1035 <enforcer.skip>true</enforcer.skip>
1036 <duplicate-finder.skip>true</duplicate-finder.skip>
1037 <mdsal.skip.verbose>true</mdsal.skip.verbose> <!-- Bug 6236 -->
1038 <maven.gitcommitid.skip>true</maven.gitcommitid.skip>
1039 <modernizer.skip>true</modernizer.skip>
1040 <format.skipExecute>true</format.skipExecute>
1041 <format.skipValidate>true</format.skipValidate>
1042 </properties>
1043 </profile>
1044 <profile>
1045 <id>sonar-jacoco-aggregate</id>
1046 <activation>
1047 <property>
1048 <name>onap.jacoco.aggregateFile</name>
1049 </property>
1050 </activation>
1051 <build>
1052 <plugins>
1053 <plugin>
1054 <groupId>org.jacoco</groupId>
1055 <artifactId>jacoco-maven-plugin</artifactId>
1056 <executions>
1057 <execution>
1058 <id>merge</id>
1059 <goals>
1060 <goal>merge</goal>
1061 </goals>
1062 <phase>generate-resources</phase>
1063 <configuration>
1064 <destFile>${onap.jacoco.aggregateFile}</destFile>
1065 <fileSets>
1066 <fileSet>
1067 <directory>${project.basedir}</directory>
1068 <includes>
1069 <include>**/target/code-coverage/*.exec</include>
1070 </includes>
1071 </fileSet>
1072 </fileSets>
1073 </configuration>
1074 </execution>
1075 </executions>
1076 </plugin>
1077 </plugins>
1078 </build>
1079 </profile>
1080 <!-- End of profiles from ONAP oparent -->
1081 </profiles>
1082</project>