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.7.1</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>
28 <sonar.jacoco.reportPath />
29 <sonar.jacoco.itReportPath />
30 <sonar.jacoco.reportMissing.force.zero />
32 <jacoco.line.coverage.limit>0.90</jacoco.line.coverage.limit>
33 <jacoco.version>0.8.5</jacoco.version>
34 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
35 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
36 <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
37 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
39 <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
43 <dependencyManagement>
46 <groupId>org.onap.portal.sdk</groupId>
47 <artifactId>epsdk-fw</artifactId>
48 <version>${portal.sdk.version}</version>
51 </dependencyManagement>
53 <!-- we don't need to deploy the top level pom project -->
58 <groupId>org.apache.maven.plugins</groupId>
59 <artifactId>maven-deploy-plugin</artifactId>
64 <!-- once we connect aai-parent or oparent 3.0+ we can take out this
68 <groupId>org.jacoco</groupId>
69 <artifactId>jacoco-maven-plugin</artifactId>
70 <version>${jacoco.version}</version>
72 <!-- Note: This exclusion list should match <sonar.exclusions> property
75 <exclude>**/gen/**</exclude>
76 <exclude>**/generated-sources/**</exclude>
77 <exclude>**/yang-gen/**</exclude>
78 <exclude>**/pax/**</exclude>
79 <exclude>org/onap/aai/babel/xml/generator/xsd/*</exclude>
83 <!-- Prepares the property pointing to the JaCoCo runtime agent which
84 is passed as VM argument when Maven the Surefire plugin is executed. -->
86 <id>pre-unit-test</id>
88 <goal>prepare-agent</goal>
91 <!-- Sets the path to the file which contains the execution data
93 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
94 <!-- Sets the name of the property containing the settings for JaCoCo
96 <propertyName>surefireArgLine</propertyName>
99 <!-- Ensures that the code coverage report for unit tests is created
100 after unit tests have been run. -->
102 <id>post-unit-test</id>
108 <!-- Sets the path to the file which contains the execution data
110 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
111 <!-- Sets the output directory for the code coverage report. -->
112 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
116 <id>pre-integration-test</id>
117 <phase>pre-integration-test</phase>
119 <goal>prepare-agent</goal>
122 <!-- Sets the path to the file which contains the execution data
124 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
125 <!-- Sets the name of the property containing the settings for JaCoCo
127 <propertyName>failsafeArgLine</propertyName>
130 <!-- Ensures that the code coverage report for integration tests after
131 integration tests have been run. -->
133 <id>post-integration-test</id>
134 <phase>post-integration-test</phase>
139 <!-- Sets the path to the file which contains the execution data
141 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
142 <!-- Sets the output directory for the code coverage report. -->
143 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
147 <id>default-check</id>
152 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
154 <rule implementation="org.jacoco.maven.RuleConfiguration">
155 <element>BUNDLE</element>
157 <limit implementation="org.jacoco.report.check.Limit">
158 <counter>LINE</counter>
159 <value>COVEREDRATIO</value>
160 <minimum>${jacoco.line.coverage.limit}</minimum>
170 <groupId>org.apache.maven.plugins</groupId>
171 <artifactId>maven-surefire-plugin</artifactId>
172 <version>3.0.0-M4</version>
174 <!-- Sets the VM argument line used when unit tests are run. -->
175 <argLine>${surefireArgLine}</argLine>
176 <!-- Excludes integration tests when unit tests are run. -->
178 <exclude>**/IT*.java</exclude>
183 <groupId>org.apache.maven.plugins</groupId>
184 <artifactId>maven-failsafe-plugin</artifactId>
185 <version>3.0.0-M4</version>
187 <!-- Ensures that both integration-test and verify goals of the Failsafe
188 Maven plugin are executed. -->
190 <id>integration-tests</id>
192 <goal>integration-test</goal>
196 <!-- Sets the VM argument line used when integration tests are run. -->
197 <argLine>${failsafeArgLine}</argLine>
203 <groupId>org.sonarsource.scanner.maven</groupId>
204 <artifactId>sonar-maven-plugin</artifactId>
205 <version>${sonar.scanner.version}</version>
207 <!-- end removable sonar config, note the additional exclusion for babel above
214 <distributionManagement>
216 <id>ecomp-releases</id>
217 <name>ECOMP Release Repository</name>
218 <url>${onap.nexus.url}/content/repositories/releases/</url>
221 <id>ecomp-snapshots</id>
222 <name>ECOMP Snapshot Repository</name>
223 <url>${onap.nexus.url}/content/repositories/snapshots/</url>
224 </snapshotRepository>
227 <url>dav:${onap.nexus.url}${sitePath}</url>
229 </distributionManagement>
234 <name>Maven 2 repository 2</name>
235 <url>http://repo2.maven.org/maven2/</url>
238 <id>ecomp-releases</id>
239 <name>ECOMP Release Repository</name>
240 <url>${onap.nexus.url}/content/repositories/releases/</url>
243 <id>ecomp-staging</id>
244 <name>ECOMP Staging Repository</name>
245 <url>${onap.nexus.url}/content/repositories/staging/</url>
248 <id>ecomp-snapshots</id>
249 <name>ECOMP Snapshot Repository</name>
250 <url>${onap.nexus.url}/content/repositories/snapshots/</url>