update link to upper-constraints.txt
[aai/sparky-be.git] / pom.xml
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>
5         
6     <parent>
7         <groupId>org.onap.oparent</groupId>
8         <artifactId>oparent</artifactId>
9         <version>2.0.0</version>
10     </parent>
11     
12     <groupId>org.onap.aai</groupId>
13     <artifactId>sparky-be</artifactId>
14     <version>1.8.0-SNAPSHOT</version>
15     <packaging>pom</packaging>
16     <name>aai-sparky-be</name>
17
18         <modules>
19                 <module>sparkybe-onap-service/pom.xml</module>
20                 <module>sparkybe-onap-application/pom.xml</module>
21         </modules>
22
23     <properties>
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
28         <sonar.jacoco.reportPath />
29         <sonar.jacoco.itReportPath />
30         <sonar.jacoco.reportMissing.force.zero />
31
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>
38
39         <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
40
41     </properties>
42
43         <dependencyManagement>
44         <dependencies>
45             <dependency>
46                 <groupId>org.onap.portal.sdk</groupId>
47                 <artifactId>epsdk-fw</artifactId>
48                 <version>${portal.sdk.version}</version>
49             </dependency>
50         </dependencies>
51     </dependencyManagement>
52
53     <!-- we don't need to deploy the top level pom project -->
54         <build>
55           <pluginManagement>
56             <plugins>
57                 <plugin>
58                     <groupId>org.apache.maven.plugins</groupId>
59                     <artifactId>maven-deploy-plugin</artifactId>
60                 </plugin>
61                 </plugins>
62               </pluginManagement>
63
64               <!-- once we connect aai-parent or oparent 3.0+ we can take out this
65                    whole section -->
66               <plugins>
67               <plugin>
68                 <groupId>org.jacoco</groupId>
69                 <artifactId>jacoco-maven-plugin</artifactId>
70                 <version>${jacoco.version}</version>
71                 <configuration>
72                   <!-- Note: This exclusion list should match <sonar.exclusions> property
73                        above -->
74                   <excludes>
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>
80                   </excludes>
81                 </configuration>
82                 <executions>
83                   <!-- Prepares the property pointing to the JaCoCo runtime agent which
84                        is passed as VM argument when Maven the Surefire plugin is executed. -->
85                   <execution>
86                     <id>pre-unit-test</id>
87                     <goals>
88                       <goal>prepare-agent</goal>
89                     </goals>
90                     <configuration>
91                       <!-- Sets the path to the file which contains the execution data
92                            . -->
93                       <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
94                       <!-- Sets the name of the property containing the settings for JaCoCo
95                            runtime agent. -->
96                       <propertyName>surefireArgLine</propertyName>
97                     </configuration>
98                   </execution>
99                   <!-- Ensures that the code coverage report for unit tests is created
100                        after unit tests have been run. -->
101                   <execution>
102                     <id>post-unit-test</id>
103                     <phase>test</phase>
104                     <goals>
105                       <goal>report</goal>
106                     </goals>
107                     <configuration>
108                       <!-- Sets the path to the file which contains the execution data
109                            . -->
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>
113                     </configuration>
114                   </execution>
115                   <execution>
116                     <id>pre-integration-test</id>
117                     <phase>pre-integration-test</phase>
118                     <goals>
119                       <goal>prepare-agent</goal>
120                     </goals>
121                     <configuration>
122                       <!-- Sets the path to the file which contains the execution data
123                            . -->
124                       <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
125                       <!-- Sets the name of the property containing the settings for JaCoCo
126                            runtime agent. -->
127                       <propertyName>failsafeArgLine</propertyName>
128                     </configuration>
129                   </execution>
130                   <!-- Ensures that the code coverage report for integration tests after
131                        integration tests have been run. -->
132                   <execution>
133                     <id>post-integration-test</id>
134                     <phase>post-integration-test</phase>
135                     <goals>
136                       <goal>report</goal>
137                     </goals>
138                     <configuration>
139                       <!-- Sets the path to the file which contains the execution data
140                            . -->
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>
144                     </configuration>
145                   </execution>
146                   <execution>
147                     <id>default-check</id>
148                     <goals>
149                       <goal>check</goal>
150                     </goals>
151                     <configuration>
152                       <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
153                       <rules>
154                         <rule implementation="org.jacoco.maven.RuleConfiguration">
155                           <element>BUNDLE</element>
156                           <limits>
157                             <limit implementation="org.jacoco.report.check.Limit">
158                               <counter>LINE</counter>
159                               <value>COVEREDRATIO</value>
160                               <minimum>${jacoco.line.coverage.limit}</minimum>
161                             </limit>
162                           </limits>
163                         </rule>
164                       </rules>
165                     </configuration>
166                   </execution>
167                 </executions>
168               </plugin>
169               <plugin>
170                 <groupId>org.apache.maven.plugins</groupId>
171                 <artifactId>maven-surefire-plugin</artifactId>
172                 <version>3.0.0-M4</version>
173                 <configuration>
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. -->
177                   <excludes>
178                     <exclude>**/IT*.java</exclude>
179                   </excludes>
180                 </configuration>
181               </plugin>
182               <plugin>
183                 <groupId>org.apache.maven.plugins</groupId>
184                 <artifactId>maven-failsafe-plugin</artifactId>
185                 <version>3.0.0-M4</version>
186                 <executions>
187                   <!-- Ensures that both integration-test and verify goals of the Failsafe
188                        Maven plugin are executed. -->
189                   <execution>
190                     <id>integration-tests</id>
191                     <goals>
192                       <goal>integration-test</goal>
193                       <goal>verify</goal>
194                     </goals>
195                     <configuration>
196                       <!-- Sets the VM argument line used when integration tests are run. -->
197                       <argLine>${failsafeArgLine}</argLine>
198                     </configuration>
199                   </execution>
200                 </executions>
201               </plugin>
202               <plugin>
203                 <groupId>org.sonarsource.scanner.maven</groupId>
204                 <artifactId>sonar-maven-plugin</artifactId>
205                 <version>${sonar.scanner.version}</version>
206               </plugin>
207               <!-- end removable sonar config, note the additional exclusion for babel above
208               -->
209             </plugins>
210
211
212         </build>
213         
214     <distributionManagement>
215        <repository>
216           <id>ecomp-releases</id>
217           <name>ECOMP Release Repository</name>
218           <url>${onap.nexus.url}/content/repositories/releases/</url>
219        </repository>
220        <snapshotRepository>
221           <id>ecomp-snapshots</id>
222           <name>ECOMP Snapshot Repository</name>
223           <url>${onap.nexus.url}/content/repositories/snapshots/</url>
224       </snapshotRepository>
225       <site>
226         <id>ecomp-site</id>
227         <url>dav:${onap.nexus.url}${sitePath}</url>
228       </site>
229    </distributionManagement>
230
231     <repositories>
232         <repository>
233             <id>central</id>
234             <name>Maven 2 repository 2</name>
235             <url>http://repo2.maven.org/maven2/</url>
236         </repository>
237         <repository>
238             <id>ecomp-releases</id>
239             <name>ECOMP Release Repository</name>
240             <url>${onap.nexus.url}/content/repositories/releases/</url>
241         </repository>
242         <repository>
243             <id>ecomp-staging</id>
244             <name>ECOMP Staging Repository</name>
245             <url>${onap.nexus.url}/content/repositories/staging/</url>
246         </repository>
247         <repository>
248             <id>ecomp-snapshots</id>
249             <name>ECOMP Snapshot Repository</name>
250             <url>${onap.nexus.url}/content/repositories/snapshots/</url>
251         </repository>
252     </repositories>
253         
254 </project>