1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5 <modelVersion>4.0.0</modelVersion>
7 <groupId>org.onap.oparent</groupId>
8 <artifactId>oparent</artifactId>
9 <version>3.2.0</version>
13 <groupId>org.onap.cps</groupId>
14 <artifactId>cps-tbdmt-parent</artifactId>
15 <version>0.0.1-SNAPSHOT</version>
16 <packaging>pom</packaging>
19 <cps.version>1.0.0</cps.version>
20 <java.version>11</java.version>
21 <minimum-coverage>0.9</minimum-coverage>
22 <nexusproxy>https://nexus.onap.org</nexusproxy>
23 <oparent.version>3.2.0</oparent.version>
24 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
25 <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
26 <spotbugs-maven-plugin.version>4.1.3</spotbugs-maven-plugin.version>
27 <spring-boot-maven-plugin.version>2.3.3.RELEASE</spring-boot-maven-plugin.version>
28 <spotbugs.slf4j.version>1.8.0-beta4</spotbugs.slf4j.version>
29 <spotbugs.bug-pattern.version>1.5.0</spotbugs.bug-pattern.version>
30 <spotbugs.version>4.2.0</spotbugs.version>
31 <swagger-codegen-maven-plugin.version>3.0.18</swagger-codegen-maven-plugin.version>
32 <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
34 <jacoco.reportDirectory.aggregate>${project.reporting.outputDirectory}/jacoco-aggregate</jacoco.reportDirectory.aggregate>
35 <sonar.coverage.jacoco.xmlReportPaths>
36 ../cps-tbdmt-service/target/site/jacoco-ut/jacoco.xml,
37 ../cps-tbdmt-rest/target/site/jacoco-ut/jacoco.xml,
38 ../cps-tbdmt-application/target/site/jacoco-ut/jacoco.xml,
39 </sonar.coverage.jacoco.xmlReportPaths>
42 <distributionManagement>
44 <id>ecomp-releases</id>
45 <name>ECOMP Release Repository</name>
46 <url>${nexusproxy}${releaseNexusPath}</url>
49 <id>ecomp-snapshots</id>
50 <name>ECOMP Snapshot Repository</name>
51 <url>${nexusproxy}${snapshotNexusPath}</url>
53 </distributionManagement>
55 <dependencyManagement>
58 <groupId>org.onap.cps</groupId>
59 <artifactId>cps-tbdmt-dependencies</artifactId>
60 <version>${project.version}</version>
65 <groupId>org.onap.cps</groupId>
66 <artifactId>cps-tbdmt-bom</artifactId>
67 <version>${project.version}</version>
72 </dependencyManagement>
78 <directory>src/main/resources</directory>
79 <filtering>true</filtering>
82 <directory>target/generated-sources/license</directory>
84 <include>third-party-licenses.txt</include>
88 <directory>target/generated-resources/licenses</directory>
90 <include>*.*</include>
92 <targetPath>third-party-licenses</targetPath>
98 <groupId>org.springframework.boot</groupId>
99 <artifactId>spring-boot-maven-plugin</artifactId>
100 <version>${spring-boot-maven-plugin.version}</version>
104 <goal>build-info</goal>
105 <goal>repackage</goal>
110 <!-- Swagger code generation. -->
112 <groupId>io.swagger.codegen.v3</groupId>
113 <artifactId>swagger-codegen-maven-plugin</artifactId>
114 <version>${swagger-codegen-maven-plugin.version}</version>
117 <groupId>com.github.spotbugs</groupId>
118 <artifactId>spotbugs-maven-plugin</artifactId>
119 <version>${spotbugs-maven-plugin.version}</version>
122 <groupId>com.github.spotbugs</groupId>
123 <artifactId>spotbugs</artifactId>
124 <version>${spotbugs.version}</version>
127 <groupId>${project.groupId}</groupId>
128 <artifactId>spotbugs</artifactId>
129 <version>${cps.version}</version>
132 <!-- The SpotBugs Maven plugin uses SLF4J 1.8 beta 2 -->
133 <groupId>org.slf4j</groupId>
134 <artifactId>slf4j-simple</artifactId>
135 <version>${spotbugs.slf4j.version}</version>
141 <groupId>jp.skypencil.findbugs.slf4j</groupId>
142 <artifactId>bug-pattern</artifactId>
143 <version>1.5.0</version>
147 Enables analysis which takes more memory but finds more bugs.
148 If you run out of memory, changes the value of the effort element
152 <!-- Reports all bugs (other values are medium and max) -->
153 <threshold>Low</threshold>
154 <!-- Build doesn't fail if problems are found -->
155 <failOnError>true</failOnError>
156 <!-- References the excluded rules -->
157 <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
158 <!-- Produces XML report -->
159 <xmlOutput>true</xmlOutput>
160 <!-- Configures the directory in which the XML report is created -->
161 <xmlOutputDirectory>${project.build.directory}/spotbugs</xmlOutputDirectory>
165 Ensures that SpotBugs inspects source code when project is compiled.
168 <id>analyze-compile</id>
169 <phase>compile</phase>
180 <groupId>org.apache.maven.plugins</groupId>
181 <artifactId>maven-compiler-plugin</artifactId>
183 <source>${java.version}</source>
184 <target>${java.version}</target>
188 <groupId>org.apache.maven.plugins</groupId>
189 <artifactId>maven-checkstyle-plugin</artifactId>
192 <id>onap-license</id>
196 <phase>process-sources</phase>
198 <configLocation>onap-checkstyle/check-license.xml</configLocation>
199 <includeResources>false</includeResources>
200 <includeTestSourceDirectory>true</includeTestSourceDirectory>
201 <includeTestResources>false</includeTestResources>
203 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
205 <consoleOutput>false</consoleOutput>
206 <violationSeverity>warning</violationSeverity>
207 <failOnViolation>true</failOnViolation>
211 <id>onap-java-style</id>
215 <phase>process-sources</phase>
217 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
219 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
221 <includeResources>true</includeResources>
222 <includeTestSourceDirectory>true</includeTestSourceDirectory>
223 <includeTestResources>true</includeTestResources>
224 <consoleOutput>false</consoleOutput>
225 <violationSeverity>warning</violationSeverity>
226 <failOnViolation>true</failOnViolation>
230 <id>cps-java-style</id>
234 <phase>process-sources</phase>
236 <configLocation>cps-java-style.xml</configLocation>
238 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
240 <includeResources>true</includeResources>
241 <includeTestSourceDirectory>true</includeTestSourceDirectory>
242 <includeTestResources>true</includeTestResources>
243 <consoleOutput>true</consoleOutput>
244 <violationSeverity>warning</violationSeverity>
245 <failOnViolation>true</failOnViolation>
251 <groupId>org.onap.oparent</groupId>
252 <artifactId>checkstyle</artifactId>
253 <version>${oparent.version}</version>
256 <groupId>org.onap.cps</groupId>
257 <artifactId>checkstyle</artifactId>
258 <version>${cps.version}</version>
262 <!-- Required because names of spec classes don't match default
263 Surefire patterns (`*Test` etc.) -->
265 <groupId>org.apache.maven.plugins</groupId>
266 <artifactId>maven-surefire-plugin</artifactId>
268 <!--suppress UnresolvedMavenProperty -->
269 <argLine>${surefireArgLine}</argLine>
270 <useFile>false</useFile>
272 <include>**/*Spec.java</include>
273 <include>**/*Test.java</include>
276 <exclude>**/IT*.java</exclude>
278 <environmentVariables>
280 disable privileged container usage to cleanup the test containers;
281 these will be removed automatically on jvm termination;
282 see https://www.testcontainers.org/features/configuration/#disabling-ryuk
284 <TESTCONTAINERS_RYUK_DISABLED>true</TESTCONTAINERS_RYUK_DISABLED>
285 </environmentVariables>
289 <groupId>org.jacoco</groupId>
290 <artifactId>jacoco-maven-plugin</artifactId>
293 <id>default-prepare-agent</id>
295 <goal>prepare-agent</goal>
299 <id>coverage-check</id>
304 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
307 <element>BUNDLE</element>
310 <counter>INSTRUCTION</counter>
311 <value>COVEREDRATIO</value>
312 <minimum>${minimum-coverage}</minimum>
322 <goal>report-aggregate</goal>
324 <phase>verify</phase>
327 <fileInclude>**/code-coverage/jacoco-ut.exec</fileInclude>
334 <groupId>com.github.spotbugs</groupId>
335 <artifactId>spotbugs-maven-plugin</artifactId>
338 <groupId>org.sonarsource.scanner.maven</groupId>
339 <artifactId>sonar-maven-plugin</artifactId>