Merge "AAF integration in Policy SDK"
[policy/engine.git] / pom.xml
1 <!--
2   ============LICENSE_START=======================================================
3   ONAP Policy Engine
4   ================================================================================
5   Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
6   ================================================================================
7   Licensed under the Apache License, Version 2.0 (the "License");
8   you may not use this file except in compliance with the License.
9   You may obtain a copy of the License at
10   
11        http://www.apache.org/licenses/LICENSE-2.0
12   
13   Unless required by applicable law or agreed to in writing, software
14   distributed under the License is distributed on an "AS IS" BASIS,
15   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   See the License for the specific language governing permissions and
17   limitations under the License.
18   ============LICENSE_END=========================================================
19   -->
20 <project xmlns="http://maven.apache.org/POM/4.0.0"
21     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
22     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
23     <modelVersion>4.0.0</modelVersion>
24     <parent>
25         <groupId>org.onap.policy.parent</groupId>
26         <artifactId>integration</artifactId>
27         <version>2.0.0-SNAPSHOT</version>
28         <relativePath />
29     </parent>
30     <groupId>org.onap.policy.engine</groupId>
31     <artifactId>PolicyEngineSuite</artifactId>
32     <version>1.3.0-SNAPSHOT</version>
33     <packaging>pom</packaging>
34     <name>policy-engine</name>
35     <description>The ONAP Policy Engine main pom</description>
36     <properties>
37         <!-- Project common build settings -->
38         <project.source.version>1.8</project.source.version>
39         <project.target.version>1.8</project.target.version>
40         <project.encoding>UTF-8</project.encoding>
41         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
42         <!-- Project path properties -->
43         <nexusproxy>https://nexus.onap.org</nexusproxy>
44         <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
45         <releases.path>content/repositories/releases/</releases.path>
46         <snapshots.path>content/repositories/snapshots/</snapshots.path>
47         <staging.path>content/repositories/staging/</staging.path>
48
49         <!-- sonar/jacoco overrides -->
50         <!-- Overriding oparent default sonar/jacoco settings Combine all our reports 
51             into one file shared across sub-modules -->
52         <sonar.jacoco.reportPath>${project.basedir}/../target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
53         <sonar.jacoco.itReportPath>${project.basedir}/../target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
54         <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
55
56         <!-- Shared between policy/* project repositories - same version -->
57         <h2.version>1.4.186</h2.version>
58
59         <!-- Shared between policy/* project repositories - different version -->
60
61         <!-- Project common dependency versions -->
62         <springframework.version>4.3.18.RELEASE</springframework.version>
63         <jetty.plugin.version>9.2.3.v20140905</jetty.plugin.version>
64         <httpclient.version>4.5.5</httpclient.version>
65         <jackson.version>2.9.4</jackson.version>
66         <commons.fileupload.version>1.3.3</commons.fileupload.version>
67         <commons.compress.version>1.18</commons.compress.version>
68         <elasticsearch.version>6.3.0</elasticsearch.version>
69     </properties>
70     <modules>
71         <module>PolicyEngineUtils</module>
72         <module>ONAP-XACML</module>
73         <module>ONAP-REST</module>
74         <module>PolicyEngineAPI</module>
75         <module>ONAP-PDP</module>
76         <module>ONAP-PDP-REST</module>
77         <module>ONAP-PAP-REST</module>
78         <module>LogParser</module>
79         <module>PolicyEngineClient</module>
80         <module>BRMSGateway</module>
81         <module>POLICY-SDK-APP</module>
82         <module>ONAP-SDK-APP</module>
83         <module>packages</module>
84     </modules>
85     <distributionManagement>
86         <repository>
87             <id>ecomp-releases</id>
88             <name>ONAP Release Repository</name>
89             <url>${nexusproxy}/${releases.path}</url>
90         </repository>
91         <snapshotRepository>
92             <id>ecomp-snapshots</id>
93             <name>ONAP Snapshot Repository</name>
94             <url>${nexusproxy}/${snapshots.path}</url>
95         </snapshotRepository>
96         <site>
97             <id>ecomp-site</id>
98             <url>dav:${nexusproxy}${sitePath}</url>
99         </site>
100     </distributionManagement>
101     <reporting>
102         <plugins>
103             <plugin>
104                 <groupId>org.apache.maven.plugins</groupId>
105                 <artifactId>maven-javadoc-plugin</artifactId>
106                 <version>2.10.4</version>
107                 <configuration>
108                     <failOnError>false</failOnError>
109                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
110                     <docletArtifact>
111                         <groupId>org.umlgraph</groupId>
112                         <artifactId>umlgraph</artifactId>
113                         <version>5.6</version>
114                     </docletArtifact>
115                     <additionalparam>-views</additionalparam>
116                     <useStandardDocletOptions>true</useStandardDocletOptions>
117                 </configuration>
118             </plugin>
119         </plugins>
120     </reporting>
121     <dependencyManagement>
122         <dependencies>
123             <dependency>
124                 <groupId>com.h2database</groupId>
125                 <artifactId>h2</artifactId>
126                 <version>${h2.version}</version>
127                 <scope>test</scope>
128             </dependency>
129         </dependencies>
130     </dependencyManagement>
131     <dependencies>
132         <dependency>
133             <groupId>javax.servlet</groupId>
134             <artifactId>javax.servlet-api</artifactId>
135         </dependency>
136         <dependency>
137             <!-- org.w3c.dom dependencies -->
138             <groupId>xml-apis</groupId>
139             <artifactId>xml-apis</artifactId>
140             <version>1.3.03</version>
141         </dependency>
142         <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
143         <dependency>
144             <groupId>com.fasterxml.jackson.core</groupId>
145             <artifactId>jackson-databind</artifactId>
146             <version>${jackson.version}</version>
147         </dependency>
148         <dependency>
149             <groupId>junit</groupId>
150             <artifactId>junit</artifactId>
151             <scope>test</scope>
152         </dependency>
153         <dependency>
154             <groupId>org.springframework</groupId>
155             <artifactId>spring-mock</artifactId>
156             <version>2.0.8</version>
157             <scope>test</scope>
158         </dependency>
159         <dependency>
160             <groupId>com.mockrunner</groupId>
161             <artifactId>mockrunner</artifactId>
162             <version>0.3.1</version>
163             <scope>test</scope>
164         </dependency>
165         <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
166         <dependency>
167             <groupId>org.powermock</groupId>
168             <artifactId>powermock-api-mockito</artifactId>
169             <version>1.7.3</version>
170             <scope>test</scope>
171         </dependency>
172         <dependency>
173             <groupId>org.powermock</groupId>
174             <artifactId>powermock-module-junit4</artifactId>
175             <version>1.7.3</version>
176             <scope>test</scope>
177         </dependency>
178         <!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
179         <dependency>
180             <groupId>org.mockito</groupId>
181             <artifactId>mockito-all</artifactId>
182             <scope>test</scope>
183         </dependency>
184         <dependency>
185             <groupId>org.easymock</groupId>
186             <artifactId>easymock</artifactId>
187             <version>3.1</version>
188             <scope>test</scope>
189         </dependency>
190     </dependencies>
191     <build>
192         <plugins>
193             <plugin>
194                 <groupId>org.jacoco</groupId>
195                 <artifactId>jacoco-maven-plugin</artifactId>
196                 <executions>
197                     <execution>
198                         <id>pre-unit-test</id>
199                         <goals>
200                             <goal>prepare-agent</goal>
201                         </goals>
202                         <configuration>
203                             <destFile>${sonar.jacoco.reportPath}</destFile>
204                             <append>true</append>
205                         </configuration>
206                     </execution>
207                     <execution>
208                         <id>post-unit-test</id>
209                         <phase>test</phase>
210                         <goals>
211                             <goal>report</goal>
212                         </goals>
213                         <configuration>
214                             <dataFile>${sonar.jacoco.reportPath}</dataFile>
215                         </configuration>
216                     </execution>
217                 </executions>
218             </plugin>
219             <plugin>
220                 <groupId>org.sonatype.plugins</groupId>
221                 <artifactId>nexus-staging-maven-plugin</artifactId>
222                 <extensions>true</extensions>
223                 <configuration>
224                     <nexusUrl>${nexusproxy}</nexusUrl>
225                     <stagingProfileId>176c31dfe190a</stagingProfileId>
226                     <serverId>ecomp-staging</serverId>
227                 </configuration>
228             </plugin>
229             <plugin>
230                 <groupId>org.apache.maven.plugins</groupId>
231                 <artifactId>maven-deploy-plugin</artifactId>
232                 <configuration>
233                     <skip />
234                 </configuration>
235             </plugin>
236             <plugin>
237                 <groupId>org.apache.maven.plugins</groupId>
238                 <artifactId>maven-surefire-plugin</artifactId>
239             </plugin>
240             <plugin>
241                 <groupId>org.apache.maven.plugins</groupId>
242                 <artifactId>maven-clean-plugin</artifactId>
243                 <version>2.4.1</version>
244             </plugin>
245             <plugin>
246                 <groupId>org.apache.maven.plugins</groupId>
247                 <artifactId>maven-compiler-plugin</artifactId>
248                 <configuration>
249                     <encoding>${project.encoding}</encoding>
250                     <source>${project.source.version}</source>
251                     <target>${project.target.version}</target>
252                 </configuration>
253             </plugin>
254             <plugin>
255                 <groupId>org.apache.maven.plugins</groupId>
256                 <artifactId>maven-resources-plugin</artifactId>
257                 <configuration>
258                     <encoding>${project.encoding}</encoding>
259                 </configuration>
260             </plugin>
261             <plugin>
262                 <groupId>org.apache.maven.plugins</groupId>
263                 <artifactId>maven-war-plugin</artifactId>
264                 <configuration>
265                     <failOnMissingWebXml>false</failOnMissingWebXml>
266                 </configuration>
267             </plugin>
268             <!-- The Jetty plugin allows us to easily test the development build by
269                 running jetty:run on the command line. -->
270             <plugin>
271                 <groupId>org.eclipse.jetty</groupId>
272                 <artifactId>jetty-maven-plugin</artifactId>
273                 <version>${jetty.plugin.version}</version>
274                 <configuration>
275                     <scanIntervalSeconds>2</scanIntervalSeconds>
276                 </configuration>
277             </plugin>
278             <plugin>
279                 <groupId>com.fortify.ps.maven.plugin</groupId>
280                 <artifactId>sca-maven-plugin</artifactId>
281                 <version>4.20</version>
282             </plugin>
283             <plugin>
284                 <groupId>org.apache.maven.plugins</groupId>
285                 <artifactId>maven-site-plugin</artifactId>
286                 <dependencies>
287                     <dependency>
288                         <groupId>org.apache.maven.wagon</groupId>
289                         <artifactId>wagon-webdav-jackrabbit</artifactId>
290                         <version>2.10</version>
291                     </dependency>
292                 </dependencies>
293             </plugin>
294         </plugins>
295         <pluginManagement>
296             <plugins>
297                 <plugin>
298                     <groupId>org.jacoco</groupId>
299                     <artifactId>jacoco-maven-plugin</artifactId>
300                     <version>${jacoco.version}</version>
301                     <configuration>
302                          <!-- Note: This exclusion list should match <sonar.exclusions> property 
303                              above -->
304                         <excludes>
305                             <exclude>**/gen/**</exclude>
306                             <exclude>**/generated-sources/**</exclude>
307                             <exclude>**/yang-gen/**</exclude>
308                             <exclude>**/pax/**</exclude>
309                         </excludes>
310                     </configuration>
311                     <executions>
312                         <!-- Prepares the property pointing to the JaCoCo runtime agent which 
313                              is passed as VM argument when Maven the Surefire plugin is executed. -->
314                         <execution>
315                             <id>pre-unit-test</id>
316                             <goals>
317                                 <goal>prepare-agent</goal>
318                             </goals>
319                             <configuration>
320                                 <destFile>${sonar.jacoco.reportPath}</destFile>
321                             </configuration>
322                         </execution>
323                         <!-- Ensures that the code coverage report for unit tests is created 
324                             after unit tests have been run. -->
325                         <execution>
326                             <id>post-unit-test</id>
327                             <phase>test</phase>
328                             <goals>
329                                 <goal>report</goal>
330                             </goals>
331                             <configuration>
332                                 <dataFile>${sonar.jacoco.reportPath}</dataFile>
333                             </configuration>
334                         </execution>
335                     </executions>
336                 </plugin>
337                 <plugin>
338                     <groupId>org.eclipse.m2e</groupId>
339                     <artifactId>lifecycle-mapping</artifactId>
340                     <version>1.0.0</version>
341                     <configuration>
342                         <lifecycleMappingMetadata>
343                             <pluginExecutions>
344                                 <pluginExecution>
345                                     <pluginExecutionFilter>
346                                         <groupId>org.apache.maven.plugins</groupId>
347                                         <artifactId>maven-checkstyle-plugin</artifactId>
348                                         <versionRange>2.17,)</versionRange>
349                                         <goals>
350                                             <goal>check</goal>
351                                         </goals>
352                                     </pluginExecutionFilter>
353                                     <action>
354                                         <ignore />
355                                     </action>
356                                 </pluginExecution>
357                             </pluginExecutions>
358                         </lifecycleMappingMetadata>
359                     </configuration>
360                 </plugin>
361             </plugins>
362         </pluginManagement>
363     </build>
364 </project>