1 <?xml version="1.0" encoding="UTF-8"?>
3 * ============LICENSE_START=======================================================
5 * ================================================================================
6 * Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END============================================
22 <project xmlns="http://maven.apache.org/POM/4.0.0"
23 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
25 <modelVersion>4.0.0</modelVersion>
28 <groupId>org.o-ran-sc.oam</groupId>
29 <artifactId>ves-nf-oam-adopter-parent-lite</artifactId>
30 <version>1.0.0-SNAPSHOT</version>
31 <relativePath>../ves-nf-oam-adopter-parent-lite/pom.xml</relativePath>
34 <artifactId>ves-nf-oam-adopter-parent</artifactId>
35 <packaging>pom</packaging>
38 <!-- Code coverate & Sonar -->
39 <minimum.coverage>0.9</minimum.coverage>
40 <jacoco.reportDirectory.aggregate>${project.reporting.outputDirectory}/jacoco-aggregate</jacoco.reportDirectory.aggregate>
41 <sonar.coverage.jacoco.xmlReportPaths>
42 </sonar.coverage.jacoco.xmlReportPaths>
43 <!--Plugins Versions-->
44 <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version>
45 <com.puppycrawl.tools.version>8.41</com.puppycrawl.tools.version>
46 <sonar.scanner.version>3.8.0.2131</sonar.scanner.version>
47 <spotbugs-maven-plugin.version>4.2.3</spotbugs-maven-plugin.version>
48 <spring.boot.version>2.4.5</spring.boot.version>
49 <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
50 <maven-enforcer-plugin.version>3.0.0-M3</maven-enforcer-plugin.version>
51 <maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
54 <dependencyManagement>
57 <groupId>${project.groupId}</groupId>
58 <artifactId>ves-nf-oam-adopter-artifacts</artifactId>
59 <version>${project.version}</version>
64 <groupId>org.springframework.boot</groupId>
65 <artifactId>spring-boot-starter</artifactId>
66 <version>${spring.boot.version}</version>
69 <groupId>org.springframework.boot</groupId>
70 <artifactId>spring-boot-starter-logging</artifactId>
73 <groupId>junit</groupId>
74 <artifactId>junit</artifactId>
79 <groupId>org.springframework.boot</groupId>
80 <artifactId>spring-boot-dependencies</artifactId>
81 <version>${spring.boot.version}</version>
86 <groupId>org.springframework.boot</groupId>
87 <artifactId>spring-boot-starter-logging</artifactId>
90 <groupId>junit</groupId>
91 <artifactId>junit</artifactId>
96 <groupId>org.springframework.boot</groupId>
97 <artifactId>spring-boot-starter-test</artifactId>
98 <version>${spring.boot.version}</version>
101 <groupId>org.springframework.boot</groupId>
102 <artifactId>spring-boot-starter-logging</artifactId>
105 <groupId>junit</groupId>
106 <artifactId>junit</artifactId>
111 <groupId>org.junit.jupiter</groupId>
112 <artifactId>junit-jupiter-api</artifactId>
113 <version>${junit.jupiter.version}</version>
116 <groupId>org.junit.jupiter</groupId>
117 <artifactId>junit-jupiter-engine</artifactId>
118 <version>${junit.jupiter.version}</version>
121 </dependencyManagement>
127 <groupId>org.sonarsource.scanner.maven</groupId>
128 <artifactId>sonar-maven-plugin</artifactId>
129 <version>${sonar.scanner.version}</version>
132 <groupId>org.apache.maven.plugins</groupId>
133 <artifactId>maven-compiler-plugin</artifactId>
134 <version>${maven-compiler-plugin.version}</version>
136 <release>${java.version}</release>
137 <forceJavacCompilerUse>true</forceJavacCompilerUse>
141 <groupId>org.apache.maven.plugins</groupId>
142 <artifactId>maven-checkstyle-plugin</artifactId>
143 <version>${maven-checkstyle-plugin.version}</version>
146 <id>ves-nf-oam-adopter-java-style</id>
150 <phase>process-sources</phase>
152 <configLocation>ves-nf-oam-adopter-java-style.xml</configLocation>
154 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
156 <includeResources>true</includeResources>
157 <includeTestSourceDirectory>true</includeTestSourceDirectory>
158 <includeTestResources>true</includeTestResources>
159 <consoleOutput>true</consoleOutput>
160 <violationSeverity>warning</violationSeverity>
161 <failOnViolation>true</failOnViolation>
167 <groupId>com.puppycrawl.tools</groupId>
168 <artifactId>checkstyle</artifactId>
169 <version>${com.puppycrawl.tools.version}</version>
172 <groupId>${project.groupId}</groupId>
173 <artifactId>ves-nf-oam-adopter-checkstyle</artifactId>
174 <version>${project.version}</version>
179 <groupId>com.github.spotbugs</groupId>
180 <artifactId>spotbugs-maven-plugin</artifactId>
181 <version>${spotbugs-maven-plugin.version}</version>
184 <groupId>com.github.spotbugs</groupId>
185 <artifactId>spotbugs</artifactId>
186 <version>${spotbugs-maven-plugin.version}</version>
189 <groupId>${project.groupId}</groupId>
190 <artifactId>ves-nf-oam-adopter-spotbugs</artifactId>
191 <version>${project.version}</version>
197 <groupId>jp.skypencil.findbugs.slf4j</groupId>
198 <artifactId>bug-pattern</artifactId>
199 <version>1.5.0</version>
203 Enables analysis which takes more memory but finds more bugs.
204 If you run out of memory, changes the value of the effort element
208 <!-- Reports all bugs (other values are medium and max) -->
209 <threshold>Low</threshold>
210 <!-- Build fail if problems are found -->
211 <failOnError>true</failOnError>
212 <!-- References the excluded rules -->
213 <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
214 <!-- Produces XML report -->
215 <xmlOutput>true</xmlOutput>
216 <!-- Configures the directory in which the XML report is created -->
217 <xmlOutputDirectory>${project.build.directory}/spotbugs</xmlOutputDirectory>
221 Ensures that SpotBugs inspects source code when project is compiled.
224 <id>analyze-compile</id>
225 <phase>compile</phase>
233 <groupId>org.apache.maven.plugins</groupId>
234 <artifactId>maven-surefire-plugin</artifactId>
235 <version>3.0.0-M4</version>
237 <!--suppress UnresolvedMavenProperty -->
238 <argLine>${surefireArgLine}</argLine>
239 <useFile>false</useFile>
241 <include>**/*Test.java</include>
244 <exclude>**/IT*.java</exclude>
249 <groupId>org.jacoco</groupId>
250 <artifactId>jacoco-maven-plugin</artifactId>
251 <version>0.8.6</version>
254 <exclude>**/api/*</exclude>
255 <exclude>**/model/*</exclude>
256 <exclude>**/pojos/*</exclude>
257 <exclude>**/configurations/*</exclude>
258 <exclude>**/properties/*</exclude>
259 <exclude>**/config/*</exclude>
260 <exclude>**/dto/*</exclude>
261 <exclude>**/AdapterApplication.class</exclude>
266 <id>pre-unit-test</id>
268 <goal>prepare-agent</goal>
271 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
272 <propertyName>surefireArgLine</propertyName>
276 <id>post-unit-test</id>
282 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
283 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
287 <id>default-prepare-agent</id>
289 <goal>prepare-agent</goal>
293 <id>default-report</id>
294 <phase>prepare-package</phase>
300 <id>default-check</id>
305 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
308 <element>BUNDLE</element>
311 <counter>INSTRUCTION</counter>
312 <value>COVEREDRATIO</value>
313 <minimum>${minimum.coverage}</minimum>
323 <goal>report-aggregate</goal>
325 <phase>verify</phase>
328 <fileInclude>**/code-coverage/jacoco-ut.exec</fileInclude>
335 <groupId>org.apache.maven.plugins</groupId>
336 <artifactId>maven-enforcer-plugin</artifactId>
337 <version>${maven-enforcer-plugin.version}</version>
340 <id>enforce-maven</id>
346 <requireMavenVersion>
347 <version>3.6.0</version>
348 </requireMavenVersion>
355 <groupId>org.apache.maven.plugins</groupId>
356 <artifactId>maven-javadoc-plugin</artifactId>
357 <version>${maven-javadoc-plugin.version}</version>
358 <configuration combine.children="append">
359 <!-- Keep things quiet except for warnings/errors -->
364 <id>attach-javadocs</id>
375 <groupId>org.apache.maven.plugins</groupId>
376 <artifactId>maven-compiler-plugin</artifactId>
379 <groupId>org.apache.maven.plugins</groupId>
380 <artifactId>maven-checkstyle-plugin</artifactId>
383 <groupId>com.github.spotbugs</groupId>
384 <artifactId>spotbugs-maven-plugin</artifactId>
387 <groupId>org.jacoco</groupId>
388 <artifactId>jacoco-maven-plugin</artifactId>
391 <groupId>org.sonarsource.scanner.maven</groupId>
392 <artifactId>sonar-maven-plugin</artifactId>
395 <groupId>org.apache.maven.plugins</groupId>
396 <artifactId>maven-enforcer-plugin</artifactId>
399 <groupId>org.apache.maven.plugins</groupId>
400 <artifactId>maven-javadoc-plugin</artifactId>
403 <groupId>org.apache.maven.plugins</groupId>
404 <artifactId>maven-surefire-plugin</artifactId>