1 <?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"
3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4 <modelVersion>4.0.0</modelVersion>
7 <groupId>org.onap.oparent</groupId>
8 <artifactId>oparent</artifactId>
9 <version>2.0.0</version>
12 <groupId>org.onap.aai</groupId>
13 <artifactId>sparky-be</artifactId>
14 <version>1.6.1-SNAPSHOT</version>
15 <packaging>pom</packaging>
16 <name>aai-sparky-be</name>
19 <module>sparkybe-onap-service/pom.xml</module>
20 <module>sparkybe-onap-application/pom.xml</module>
24 <sitePath>/content/sites/site/org/onap/aai/sparky-be/${project.artifactId}/${project.version}</sitePath>
25 <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
26 <portal.sdk.version>2.6.0</portal.sdk.version>
27 <spring.boot.version>2.1.12.RELEASE</spring.boot.version>
29 <sonar.jacoco.reportPath />
30 <sonar.jacoco.itReportPath />
31 <sonar.jacoco.reportMissing.force.zero />
33 <jacoco.line.coverage.limit>0.90</jacoco.line.coverage.limit>
34 <jacoco.version>0.8.5</jacoco.version>
35 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
36 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
37 <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
38 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
40 <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
44 <dependencyManagement>
47 <groupId>org.onap.portal.sdk</groupId>
48 <artifactId>epsdk-fw</artifactId>
49 <version>${portal.sdk.version}</version>
52 <groupId>org.springframework.boot</groupId>
53 <artifactId>spring-boot-starter-parent</artifactId>
54 <version>${spring.boot.version}</version>
59 </dependencyManagement>
61 <!-- we don't need to deploy the top level pom project -->
66 <groupId>org.apache.maven.plugins</groupId>
67 <artifactId>maven-deploy-plugin</artifactId>
72 <!-- once we connect aai-parent or oparent 3.0+ we can take out this
76 <groupId>org.jacoco</groupId>
77 <artifactId>jacoco-maven-plugin</artifactId>
78 <version>${jacoco.version}</version>
80 <!-- Note: This exclusion list should match <sonar.exclusions> property
83 <exclude>**/gen/**</exclude>
84 <exclude>**/generated-sources/**</exclude>
85 <exclude>**/yang-gen/**</exclude>
86 <exclude>**/pax/**</exclude>
87 <exclude>org/onap/aai/babel/xml/generator/xsd/*</exclude>
91 <!-- Prepares the property pointing to the JaCoCo runtime agent which
92 is passed as VM argument when Maven the Surefire plugin is executed. -->
94 <id>pre-unit-test</id>
96 <goal>prepare-agent</goal>
99 <!-- Sets the path to the file which contains the execution data
101 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
102 <!-- Sets the name of the property containing the settings for JaCoCo
104 <propertyName>surefireArgLine</propertyName>
107 <!-- Ensures that the code coverage report for unit tests is created
108 after unit tests have been run. -->
110 <id>post-unit-test</id>
116 <!-- Sets the path to the file which contains the execution data
118 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
119 <!-- Sets the output directory for the code coverage report. -->
120 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
124 <id>pre-integration-test</id>
125 <phase>pre-integration-test</phase>
127 <goal>prepare-agent</goal>
130 <!-- Sets the path to the file which contains the execution data
132 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
133 <!-- Sets the name of the property containing the settings for JaCoCo
135 <propertyName>failsafeArgLine</propertyName>
138 <!-- Ensures that the code coverage report for integration tests after
139 integration tests have been run. -->
141 <id>post-integration-test</id>
142 <phase>post-integration-test</phase>
147 <!-- Sets the path to the file which contains the execution data
149 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
150 <!-- Sets the output directory for the code coverage report. -->
151 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
155 <id>default-check</id>
160 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
162 <rule implementation="org.jacoco.maven.RuleConfiguration">
163 <element>BUNDLE</element>
165 <limit implementation="org.jacoco.report.check.Limit">
166 <counter>LINE</counter>
167 <value>COVEREDRATIO</value>
168 <minimum>${jacoco.line.coverage.limit}</minimum>
178 <groupId>org.apache.maven.plugins</groupId>
179 <artifactId>maven-surefire-plugin</artifactId>
180 <version>3.0.0-M4</version>
182 <!-- Sets the VM argument line used when unit tests are run. -->
183 <argLine>${surefireArgLine}</argLine>
184 <!-- Excludes integration tests when unit tests are run. -->
186 <exclude>**/IT*.java</exclude>
191 <groupId>org.apache.maven.plugins</groupId>
192 <artifactId>maven-failsafe-plugin</artifactId>
193 <version>3.0.0-M4</version>
195 <!-- Ensures that both integration-test and verify goals of the Failsafe
196 Maven plugin are executed. -->
198 <id>integration-tests</id>
200 <goal>integration-test</goal>
204 <!-- Sets the VM argument line used when integration tests are run. -->
205 <argLine>${failsafeArgLine}</argLine>
211 <groupId>org.sonarsource.scanner.maven</groupId>
212 <artifactId>sonar-maven-plugin</artifactId>
213 <version>${sonar.scanner.version}</version>
215 <!-- end removable sonar config, note the additional exclusion for babel above
222 <distributionManagement>
224 <id>ecomp-releases</id>
225 <name>ECOMP Release Repository</name>
226 <url>${onap.nexus.url}/content/repositories/releases/</url>
229 <id>ecomp-snapshots</id>
230 <name>ECOMP Snapshot Repository</name>
231 <url>${onap.nexus.url}/content/repositories/snapshots/</url>
232 </snapshotRepository>
235 <url>dav:${onap.nexus.url}${sitePath}</url>
237 </distributionManagement>
242 <name>Maven 2 repository 2</name>
243 <url>http://repo2.maven.org/maven2/</url>
246 <id>ecomp-releases</id>
247 <name>ECOMP Release Repository</name>
248 <url>${onap.nexus.url}/content/repositories/releases/</url>
251 <id>ecomp-staging</id>
252 <name>ECOMP Staging Repository</name>
253 <url>${onap.nexus.url}/content/repositories/staging/</url>
256 <id>ecomp-snapshots</id>
257 <name>ECOMP Snapshot Repository</name>
258 <url>${onap.nexus.url}/content/repositories/snapshots/</url>