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>
41 ${project.reporting.outputDirectory}/jacoco-aggregate
42 </jacoco.reportDirectory.aggregate>
43 <sonar.coverage.jacoco.xmlReportPaths>
44 ../ves-nf-oam-adopter-event-notifier/target/site/jacoco-ut/jacoco.xml,
45 ../ves-nf-oam-adopter-event-notifier/target/site/jacoco-aggregate/jacoco.xml,
46 ../ves-nf-oam-adopter-snmp-manager/target/site/jacoco-ut/jacoco.xml,
47 ../ves-nf-oam-adopter-snmp-manager/target/site/jacoco-aggregate/jacoco.xml,
48 ../ves-nf-oam-adopter-pm-manager/target/site/jacoco-ut/jacoco.xml,
49 ../ves-nf-oam-adopter-pm-manager/target/site/jacoco-aggregate/jacoco.xml,
50 ../ves-nf-oam-adopter-pm-sb-rest-client/target/site/jacoco-ut/jacoco.xml,
51 ../ves-nf-oam-adopter-pm-sb-rest-client/target/site/jacoco-aggregate/jacoco.xml,
52 ../ves-nf-oam-adopter-app/target/site/jacoco-ut/jacoco.xml,
53 ../ves-nf-oam-adopter-app/target/site/jacoco-aggregate/jacoco.xml
54 </sonar.coverage.jacoco.xmlReportPaths>
55 <sonar.scanner.version>4.4.0.2170</sonar.scanner.version>
65 <!--Dependency Versions-->
66 <commons-configuration2.version>2.7</commons-configuration2.version>
67 <commons-io.version>2.6</commons-io.version>
68 <commons-beanutils.version>1.9.4</commons-beanutils.version>
69 <gson.version>2.8.6</gson.version>
70 <guava.version>30.1-jre</guava.version>
71 <httpclient5.version>5.0.3</httpclient5.version>
72 <jdt.annotation.version>2.2.600</jdt.annotation.version>
73 <lombok.version>1.18.20</lombok.version>
74 <rxjava.version>3.0.12</rxjava.version>
75 <snmp4j.version>3.4.4</snmp4j.version>
76 <spotbugs.version>4.2.3</spotbugs.version>
77 <spring.boot.version>2.4.5</spring.boot.version>
78 <swagger-annotations.version>2.1.9</swagger-annotations.version>
79 <!--Plugins Versions-->
80 <com.puppycrawl.tools.version>8.41</com.puppycrawl.tools.version>
81 <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version>
82 <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
83 <maven-enforcer-plugin.version>3.0.0-M3</maven-enforcer-plugin.version>
84 <maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
85 <spotbugs-maven-plugin.version>4.2.3</spotbugs-maven-plugin.version>
86 <swagger-codegen-maven-plugin.version>3.0.25</swagger-codegen-maven-plugin.version>
87 <!--Image properties-->
88 <base.image>openjdk:11-jre-slim</base.image>
89 <base.config>${project.basedir}/configuration/</base.config>
90 <image.workdir>/o-ran-ves-adapter/</image.workdir>
91 <nexus.repository.mirror>nexus3.o-ran-sc.org:10001/</nexus.repository.mirror>
92 <nexus.repository>nexus3.o-ran-sc.org:10004/o-ran-sc/</nexus.repository>
95 <dependencyManagement>
98 <groupId>${project.groupId}</groupId>
99 <artifactId>ves-nf-oam-adopter-artifacts</artifactId>
100 <version>${project.version}</version>
102 <scope>import</scope>
105 <groupId>com.google.code.gson</groupId>
106 <artifactId>gson</artifactId>
107 <version>${gson.version}</version>
110 <groupId>org.eclipse.jdt</groupId>
111 <artifactId>org.eclipse.jdt.annotation</artifactId>
112 <version>${jdt.annotation.version}</version>
115 <groupId>io.reactivex.rxjava3</groupId>
116 <artifactId>rxjava</artifactId>
117 <version>${rxjava.version}</version>
120 <groupId>org.apache.httpcomponents.client5</groupId>
121 <artifactId>httpclient5</artifactId>
122 <version>${httpclient5.version}</version>
125 <groupId>org.projectlombok</groupId>
126 <artifactId>lombok</artifactId>
127 <version>${lombok.version}</version>
130 <groupId>org.snmp4j</groupId>
131 <artifactId>snmp4j</artifactId>
132 <version>${snmp4j.version}</version>
135 <groupId>org.apache.commons</groupId>
136 <artifactId>commons-configuration2</artifactId>
137 <version>${commons-configuration2.version}</version>
140 <groupId>commons-io</groupId>
141 <artifactId>commons-io</artifactId>
142 <version>${commons-io.version}</version>
145 <groupId>commons-beanutils</groupId>
146 <artifactId>commons-beanutils</artifactId>
147 <version>${commons-beanutils.version}</version>
150 <groupId>com.google.guava</groupId>
151 <artifactId>guava</artifactId>
152 <version>${guava.version}</version>
155 <groupId>com.github.spotbugs</groupId>
156 <artifactId>spotbugs-annotations</artifactId>
157 <version>${spotbugs.version}</version>
160 <groupId>io.swagger.core.v3</groupId>
161 <artifactId>swagger-annotations</artifactId>
162 <version>${swagger-annotations.version}</version>
165 <groupId>org.springframework.boot</groupId>
166 <artifactId>spring-boot-starter</artifactId>
167 <version>${spring.boot.version}</version>
170 <groupId>org.springframework.boot</groupId>
171 <artifactId>spring-boot-starter-logging</artifactId>
174 <groupId>junit</groupId>
175 <artifactId>junit</artifactId>
180 <groupId>org.springframework.boot</groupId>
181 <artifactId>spring-boot-dependencies</artifactId>
182 <version>${spring.boot.version}</version>
184 <scope>import</scope>
187 <groupId>org.springframework.boot</groupId>
188 <artifactId>spring-boot-starter-logging</artifactId>
191 <groupId>junit</groupId>
192 <artifactId>junit</artifactId>
197 </dependencyManagement>
203 <groupId>org.sonarsource.scanner.maven</groupId>
204 <artifactId>sonar-maven-plugin</artifactId>
205 <version>${sonar.scanner.version}</version>
208 <groupId>org.apache.maven.plugins</groupId>
209 <artifactId>maven-compiler-plugin</artifactId>
210 <version>${maven-compiler-plugin.version}</version>
212 <release>${java.version}</release>
213 <forceJavacCompilerUse>true</forceJavacCompilerUse>
217 <groupId>org.apache.maven.plugins</groupId>
218 <artifactId>maven-checkstyle-plugin</artifactId>
219 <version>${maven-checkstyle-plugin.version}</version>
222 <id>ves-nf-oam-adopter-java-style</id>
226 <phase>process-sources</phase>
228 <configLocation>ves-nf-oam-adopter-java-style.xml</configLocation>
230 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
232 <includeResources>true</includeResources>
233 <includeTestSourceDirectory>true</includeTestSourceDirectory>
234 <includeTestResources>true</includeTestResources>
235 <consoleOutput>true</consoleOutput>
236 <violationSeverity>warning</violationSeverity>
237 <failOnViolation>true</failOnViolation>
243 <groupId>com.puppycrawl.tools</groupId>
244 <artifactId>checkstyle</artifactId>
245 <version>${com.puppycrawl.tools.version}</version>
248 <groupId>${project.groupId}</groupId>
249 <artifactId>ves-nf-oam-adopter-checkstyle</artifactId>
250 <version>${project.version}</version>
255 <groupId>com.github.spotbugs</groupId>
256 <artifactId>spotbugs-maven-plugin</artifactId>
257 <version>${spotbugs-maven-plugin.version}</version>
260 <groupId>com.github.spotbugs</groupId>
261 <artifactId>spotbugs</artifactId>
262 <version>${spotbugs-maven-plugin.version}</version>
265 <groupId>${project.groupId}</groupId>
266 <artifactId>ves-nf-oam-adopter-spotbugs</artifactId>
267 <version>${project.version}</version>
273 <groupId>jp.skypencil.findbugs.slf4j</groupId>
274 <artifactId>bug-pattern</artifactId>
275 <version>1.5.0</version>
279 Enables analysis which takes more memory but finds more bugs.
280 If you run out of memory, changes the value of the effort element
284 <!-- Reports all bugs (other values are medium and max) -->
285 <threshold>Low</threshold>
286 <!-- Build fail if problems are found -->
287 <failOnError>true</failOnError>
288 <!-- References the excluded rules -->
289 <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
290 <!-- Produces XML report -->
291 <xmlOutput>true</xmlOutput>
292 <!-- Configures the directory in which the XML report is created -->
293 <xmlOutputDirectory>${project.build.directory}/spotbugs</xmlOutputDirectory>
297 Ensures that SpotBugs inspects source code when project is compiled.
300 <id>analyze-compile</id>
301 <phase>compile</phase>
309 <groupId>org.apache.maven.plugins</groupId>
310 <artifactId>maven-surefire-plugin</artifactId>
311 <version>3.0.0-M4</version>
313 <!--suppress UnresolvedMavenProperty -->
314 <argLine>${surefireArgLine}</argLine>
315 <useFile>false</useFile>
317 <include>**/*Test.java</include>
320 <exclude>**/IT*.java</exclude>
325 <groupId>org.jacoco</groupId>
326 <artifactId>jacoco-maven-plugin</artifactId>
327 <version>0.8.6</version>
330 <exclude>**/api/*</exclude>
331 <exclude>**/model/*</exclude>
332 <exclude>**/pojos/*</exclude>
333 <exclude>**/configurations/*</exclude>
334 <exclude>**/properties/*</exclude>
335 <exclude>**/config/*</exclude>
336 <exclude>**/dto/*</exclude>
337 <exclude>**/AdapterApplication.class</exclude>
342 <id>pre-unit-test</id>
344 <goal>prepare-agent</goal>
347 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
348 <propertyName>surefireArgLine</propertyName>
352 <id>post-unit-test</id>
358 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
359 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
363 <id>default-prepare-agent</id>
365 <goal>prepare-agent</goal>
369 <id>default-report</id>
370 <phase>prepare-package</phase>
376 <id>default-check</id>
381 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
384 <element>BUNDLE</element>
387 <counter>INSTRUCTION</counter>
388 <value>COVEREDRATIO</value>
389 <minimum>${minimum.coverage}</minimum>
399 <goal>report-aggregate</goal>
401 <phase>verify</phase>
404 <fileInclude>**/code-coverage/jacoco-ut.exec</fileInclude>
411 <groupId>org.apache.maven.plugins</groupId>
412 <artifactId>maven-enforcer-plugin</artifactId>
413 <version>${maven-enforcer-plugin.version}</version>
416 <id>enforce-maven</id>
422 <requireMavenVersion>
423 <version>3.6.0</version>
424 </requireMavenVersion>
431 <groupId>org.apache.maven.plugins</groupId>
432 <artifactId>maven-javadoc-plugin</artifactId>
433 <version>${maven-javadoc-plugin.version}</version>
434 <configuration combine.children="append">
435 <!-- Keep things quiet except for warnings/errors -->
440 <id>attach-javadocs</id>
448 <groupId>org.springframework.boot</groupId>
449 <artifactId>spring-boot-maven-plugin</artifactId>
450 <version>${spring.boot.version}</version>
454 <goal>repackage</goal>
460 <groupId>io.swagger.codegen.v3</groupId>
461 <artifactId>swagger-codegen-maven-plugin</artifactId>
462 <version>${swagger-codegen-maven-plugin.version}</version>
468 <groupId>org.apache.maven.plugins</groupId>
469 <artifactId>maven-compiler-plugin</artifactId>
472 <groupId>org.apache.maven.plugins</groupId>
473 <artifactId>maven-checkstyle-plugin</artifactId>
476 <groupId>com.github.spotbugs</groupId>
477 <artifactId>spotbugs-maven-plugin</artifactId>
480 <groupId>org.jacoco</groupId>
481 <artifactId>jacoco-maven-plugin</artifactId>
484 <groupId>org.sonarsource.scanner.maven</groupId>
485 <artifactId>sonar-maven-plugin</artifactId>
488 <groupId>org.apache.maven.plugins</groupId>
489 <artifactId>maven-enforcer-plugin</artifactId>
492 <groupId>org.apache.maven.plugins</groupId>
493 <artifactId>maven-javadoc-plugin</artifactId>
496 <groupId>org.apache.maven.plugins</groupId>
497 <artifactId>maven-surefire-plugin</artifactId>