blob: 95ff284fe073045ff357fbe8b75e37d284081ecc [file] [log] [blame]
<!--
============LICENSE_START=======================================================
ONAP Policy Engine
================================================================================
Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
============LICENSE_END=========================================================
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.onap.policy.engine</groupId>
<artifactId>PolicyEngineSuite</artifactId>
<version>1.3.0-SNAPSHOT</version>
</parent>
<artifactId>ONAP-SDK-APP</artifactId>
<packaging>war</packaging>
<properties>
<encoding>UTF-8</encoding>
<epsdk.version>2.4.0</epsdk.version>
<springframework.version>4.2.0.RELEASE</springframework.version>
<hibernate.version>4.3.11.Final</hibernate.version>
<!-- Skip assembling the zip; assemble via mvn -Dskipassembly=false .. -->
<skipassembly>true</skipassembly>
<!-- Tests usually require some setup that maven cannot do, so skip. -->
<sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**,src/main/webapp/**/*</sonar.exclusions>
<!-- Version number gets stored only here -->
<tomcat.download.path>http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.37/bin</tomcat.download.path>
<tomcat.download.name>apache-tomcat-8.0.37</tomcat.download.name>
</properties>
<profiles>
<!-- disable doclint, a new feature in Java 8, when generating javadoc -->
<profile>
<id>doclint-java8-disable</id>
<activation>
<jdk>[1.8,)</jdk>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<additionalparam>-Xdoclint:none</additionalparam>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>${skiptests}</skipTests>
<includes>
<include>**/Test*.java</include>
<include>**/*Test.java</include>
<include>**/*TestCase.java</include>
</includes>
<additionalClasspathElements>
<additionalClasspathElement>${basedir}/war</additionalClasspathElement>
</additionalClasspathElements>
<systemPropertyVariables>
<container.classpath>classpath:</container.classpath>
</systemPropertyVariables>
</configuration>
</plugin>
<!-- add version number to manifest -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<attachClasses>true</attachClasses>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Build-Number>${project.version}</Build-Number>
<Build-Time>${maven.build.timestamp}</Build-Time>
</manifestEntries>
</archive>
<overlays>
<overlay>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-app-overlay</artifactId>
<excludes>
<exclude>static/fusion/raptor/uigrid/vfs_fonts.js</exclude>
</excludes>
</overlay>
<overlay>
<groupId>org.onap.policy.engine</groupId>
<artifactId>POLICY-SDK-APP</artifactId>
</overlay>
</overlays>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<skipAssembly>${skipassembly}</skipAssembly>
<descriptors>
<descriptor>${basedir}/distribution.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<!-- parent specifies the<version>2.8</version> -->
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.22.0</version>
<configuration>
<verbose>true</verbose>
<images>
<image>
<name>onap/portal-sdk:${project.version}</name>
<build>
<from>frolvlad/alpine-oraclejdk8:slim</from>
<assembly>
<descriptorRef>artifact</descriptorRef>
</assembly>
<runCmds>
<!-- must be all on one line; use CDATA to turn off the Eclipse
formatter -->
<run><![CDATA[wget -q ${tomcat.download.path}/${tomcat.download.name}.tar.gz]]></run>
<run>tar -xzf
${tomcat.download.name}.tar.gz</run>
<run>rm -f
${tomcat.download.name}.tar.gz</run>
<run>rm -fr
${tomcat.download.name}/webapps/[a-z]*</run>
<run>mkdir -p /opt</run>
<run>mv ${tomcat.download.name} /opt</run>
<run><![CDATA[mv /maven/*.war /opt/${tomcat.download.name}/webapps/ONAPPORTALSDK.war]]></run>
</runCmds>
<cmd>
<shell>/opt/${tomcat.download.name}/bin/catalina.sh
run</shell>
</cmd>
</build>
</image>
</images>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- Policy overlay war -->
<dependency>
<groupId>org.onap.policy.engine</groupId>
<artifactId>POLICY-SDK-APP</artifactId>
<version>${project.version}</version>
<type>war</type>
<exclusions>
<exclusion>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.onap.policy.engine</groupId>
<artifactId>POLICY-SDK-APP</artifactId>
<version>${project.version}</version>
<type>jar</type>
<classifier>classes</classifier>
<exclusions>
<exclusion>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.onap.policy.engine</groupId>
<artifactId>PolicyEngineUtils</artifactId>
<version>${project.version}</version>
<exclusions>
<exclusion>
<groupId>com.att.aft</groupId>
<artifactId>dme2</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- SDK overlay war -->
<dependency>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-app-overlay</artifactId>
<version>${epsdk.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-app-common</artifactId>
<version>${epsdk.version}</version>
<type>jar</type>
<exclusions>
<!-- Added exclusions to fix issue with duplicate jars of different versions -->
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- SDK components -->
<!--
CLM security fix - force use of commons-collections 3.2.2.
Remove this if a new version of epsdk-core is upgraded
to not use esapi (and then subsequently commons-collections v3.2
-->
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
</dependency>
<dependency>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-core</artifactId>
<version>${epsdk.version}</version>
<exclusions>
<exclusion>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</exclusion>
<exclusion>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</exclusion>
<exclusion>
<groupId>com.thoughtworks.xstream</groupId>
<artifactId>xstream</artifactId>
</exclusion>
<!-- Added exclusions to fix issue with duplicate jars of different versions -->
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-analytics</artifactId>
<version>${epsdk.version}</version>
<exclusions>
<exclusion>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
</exclusion>
<!-- Added exclusions to fix issue with duplicate jars of different versions -->
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.onap.portal.sdk</groupId>
<artifactId>epsdk-workflow</artifactId>
<version>${epsdk.version}</version>
<exclusions>
<!-- Added exclusions to fix issue with duplicate jars of different versions -->
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Spring -->
<!-- Added dependencies to fix issue with duplicate jars of different versions -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springframework.version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springframework.version}</version>
</dependency>
<!-- bridge to implement commons-logging using slf4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.12</version>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
<!-- Maria DB -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<!-- Quartz -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
<exclusions>
<!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
<exclusion>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
</dependencies>
</project>