Merge "Update SDC library"
[clamp.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index 21a0c04..0ea91c1 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
   ============LICENSE_START=======================================================
   ONAP CLAMP
   ================================================================================
-  Copyright (C) 2017 AT&T Intellectual Property. All rights
+  Copyright (C) 2017-2018 AT&T Intellectual Property. All rights
                               reserved.
   ================================================================================
   Licensed under the Apache License, Version 2.0 (the "License");
                <parent>
                                <groupId>org.onap.oparent</groupId>
                                <artifactId>oparent</artifactId>
-                               <version>1.0.0-SNAPSHOT</version>
+                               <version>1.1.0</version>
                </parent>
 
                <description>
-           This project build the ONAP CLAMP JAR that contains AJSC + CLAMP code.
+           This project build the ONAP CLAMP JAR that contains CLAMP back-end code and its UI part.
 
            By Default "mvn clean install" command will execute also the unit tests
            and the integration tests. The integration tests require a docker engine running.
 
-           If you want to skip the intergation test you can by doing:
+           If you want to skip the integration test you can by doing:
            "mvn clean install -DskipITs=true"
 
            For Spring it's possible to specify the application.properties location
                                - org.onap.clamp.config.files.cldsPolicyConfig=classpath:/clds/clds-policy-config.properties
                                - org.onap.clamp.config.files.cldsUsers=classpath:/clds/clds-users.json
                                - org.onap.clamp.config.files.globalClds=classpath:/clds/globalClds.properties
-           
-    </description>
+
+               </description>
 
                <properties>
-                               <maven.build.timestamp.format>yyyy.MM.dd'T'hh.mm.ss'Z'</maven.build.timestamp.format>
+                               <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
                                <clamp.project.version>${project.version}</clamp.project.version>
                                <clamp.build.timestamp>${maven.build.timestamp}</clamp.build.timestamp>
                                <maven.compiler.source>1.8</maven.compiler.source>
                                <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
 
                                <docker.mariadb.port.host>3306</docker.mariadb.port.host>
-                               <sdk.java.common.logging>0.0.3-oss</sdk.java.common.logging>
+                               <docker.http-cache.port.host>8085</docker.http-cache.port.host>
                                <project.scm.id>git-server</project.scm.id>
                                <java.version>1.8</java.version>
-                               <csi.logging>6.1.0.6-oss</csi.logging>
-                               <sdk.camel.rest>6.2.0.6-oss</sdk.camel.rest>
-                               <sdk.camunda.core>6.1.0.3-oss</sdk.camunda.core>
+
+                               <swagger.jaxrs2.version>2.0.0-rc4</swagger.jaxrs2.version>
+                               <guava.version>20.0</guava.version>
+                               <eelf.core.version>1.0.0</eelf.core.version>
+                               <camel.version>2.20.1</camel.version>
+                               <springboot.version>1.5.10.RELEASE</springboot.version>
 
                                <sonar.language>java</sonar.language>
                                <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
@@ -85,6 +88,7 @@
                                <skip.docker.build>true</skip.docker.build>
                                <skip.docker.push>true</skip.docker.push>
                                <skip.staging.artifacts>false</skip.staging.artifacts>
+                               <http.proxy></http.proxy>
                </properties>
 
                <distributionManagement>
 
                <dependencyManagement>
                                <dependencies>
+                                               <!-- Spring Boot BOM -->
                                                <dependency>
-                                                               <!-- Import dependency management from Spring Boot -->
                                                                <groupId>org.springframework.boot</groupId>
                                                                <artifactId>spring-boot-dependencies</artifactId>
-                                                               <version>1.4.1.RELEASE</version>
+                                                               <version>${springboot.version}</version>
+                                                               <type>pom</type>
+                                                               <scope>import</scope>
+                                               </dependency>
+                                               <!-- Camel BOM -->
+                                               <dependency>
+                                                               <groupId>org.apache.camel</groupId>
+                                                               <artifactId>camel-spring-boot-dependencies</artifactId>
+                                                               <version>${camel.version}</version>
                                                                <type>pom</type>
                                                                <scope>import</scope>
                                                </dependency>
                </dependencyManagement>
 
                <dependencies>
+                               <!-- Swagger requires at least v20 and policy is bringing version 14 -->
                                <dependency>
-                                               <groupId>commons-io</groupId>
-                                               <artifactId>commons-io</artifactId>
-                                               <version>2.6</version>
+                                       <groupId>com.google.guava</groupId>
+                                       <artifactId>guava</artifactId>
+                                       <version>${guava.version}</version>
                                </dependency>
                                <dependency>
-                                               <groupId>com.googlecode.json-simple</groupId>
-                                               <artifactId>json-simple</artifactId>
-                                               <version>1.1</version>
+                                       <groupId>io.swagger.core.v3</groupId>
+                                       <artifactId>swagger-jaxrs2</artifactId>
+                                       <version>${swagger.jaxrs2.version}</version>
                                </dependency>
                                <dependency>
-                                               <groupId>org.apache.commons</groupId>
-                                               <artifactId>commons-vfs2</artifactId>
-                                               <version>2.0</version>
+                                               <groupId>com.att.eelf</groupId>
+                                               <artifactId>eelf-core</artifactId>
+                                               <version>${eelf.core.version}</version>
                                </dependency>
-
+                               <!-- For CAMEL -->
                                <dependency>
-                                               <groupId>org.springframework.security</groupId>
-                                               <artifactId>spring-security-test</artifactId>
-
-                                               <scope>test</scope>
+                                               <groupId>org.apache.camel</groupId>
+                                               <artifactId>camel-spring-boot-starter</artifactId>
                                </dependency>
-
-
-                               <!-- Dependencies of parent pom start -->
                                <dependency>
-                                               <groupId>com.att.ajsc</groupId>
-                                               <artifactId>sdk-java-common-logging</artifactId>
-                                               <version>${sdk.java.common.logging}</version>
+                                               <groupId>org.apache.camel</groupId>
+                                               <artifactId>camel-jaxb-starter</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot-starter-tomcat</artifactId>
-                                               <scope>compile</scope>
+                                               <groupId>org.apache.camel</groupId>
+                                               <artifactId>camel-servlet-starter</artifactId>
                                </dependency>
+                               <!-- Spring famework -->
                                <dependency>
                                                <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot-starter-actuator</artifactId>
-                               </dependency>
-                               <dependency>
-                                               <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot-starter-security</artifactId>
+                                               <artifactId>spring-boot-starter-web</artifactId>
                                </dependency>
                                <dependency>
                                                <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot-starter-test</artifactId>
-                                               <scope>test</scope>
+                                               <artifactId>spring-boot-starter-tomcat</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>joda-time</groupId>
-                                               <artifactId>joda-time</artifactId>
+                                               <groupId>com.paypal.springboot</groupId>
+                                               <artifactId>resteasy-spring-boot-starter</artifactId>
+                                               <version>2.3.4-RELEASE</version>
                                </dependency>
                                <dependency>
                                                <groupId>org.springframework</groupId>
-                                               <artifactId>spring-context</artifactId>
-                               </dependency>
-                               <dependency>
-                                               <groupId>org.slf4j</groupId>
-                                               <artifactId>slf4j-api</artifactId>
+                                               <artifactId>spring-jdbc</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>javax.ws.rs</groupId>
-                                               <artifactId>javax.ws.rs-api</artifactId>
-                                               <version>2.0</version>
+                                               <groupId>org.springframework.boot</groupId>
+                                               <artifactId>spring-boot-starter-security</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework</groupId>
-                                               <artifactId>spring-test</artifactId>
+                                               <groupId>org.springframework.boot</groupId>
+                                               <artifactId>spring-boot-starter-actuator</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>junit</groupId>
-                                               <artifactId>junit</artifactId>
+                                               <groupId>org.springframework.boot</groupId>
+                                               <artifactId>spring-boot-starter-test</artifactId>
+                                               <scope>test</scope>
+                                               <exclusions>
+                                                               <exclusion>
+                                                                               <groupId>com.vaadin.external.google</groupId>
+                                                                               <artifactId>android-json</artifactId>
+                                                               </exclusion>
+                                               </exclusions>
                                </dependency>
+                               <!-- Others dependencies -->
                                <dependency>
-                                               <groupId>org.mockito</groupId>
-                                               <artifactId>mockito-all</artifactId>
-                                               <version>1.9.5</version>
+                                               <groupId>ch.qos.logback</groupId>
+                                               <artifactId>logback-core</artifactId>
+                                               <version>1.2.3</version>
                                </dependency>
                                <dependency>
-                                               <groupId>commons-logging</groupId>
-                                               <artifactId>commons-logging</artifactId>
-                                               <version>1.1.1</version>
+                                               <groupId>ch.qos.logback</groupId>
+                                               <artifactId>logback-classic</artifactId>
+                                               <version>1.2.3</version>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework</groupId>
-                                               <artifactId>spring-aspects</artifactId>
+                                               <groupId>commons-dbcp</groupId>
+                                               <artifactId>commons-dbcp</artifactId>
+                                               <version>1.4</version>
                                </dependency>
                                <dependency>
-                                               <groupId>com.fasterxml.jackson.core</groupId>
-                                               <artifactId>jackson-core</artifactId>
+                                               <groupId>commons-io</groupId>
+                                               <artifactId>commons-io</artifactId>
+                                               <version>2.6</version>
                                </dependency>
                                <dependency>
-                                               <groupId>com.fasterxml.jackson.core</groupId>
-                                               <artifactId>jackson-databind</artifactId>
+                                               <groupId>com.googlecode.json-simple</groupId>
+                                               <artifactId>json-simple</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework</groupId>
-                                               <artifactId>spring-webmvc</artifactId>
+                                               <groupId>org.apache.commons</groupId>
+                                               <artifactId>commons-vfs2</artifactId>
+                                               <version>2.2</version>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot-starter-web</artifactId>
+                                               <groupId>joda-time</groupId>
+                                               <artifactId>joda-time</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>log4j</groupId>
-                                               <artifactId>log4j</artifactId>
-                                               <version>1.2.17</version>
+                                               <groupId>org.slf4j</groupId>
+                                               <artifactId>slf4j-api</artifactId>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot</artifactId>
+                                               <groupId>javax.ws.rs</groupId>
+                                               <artifactId>javax.ws.rs-api</artifactId>
+                                               <version>2.0</version>
                                </dependency>
                                <dependency>
-                                               <groupId>org.springframework.boot</groupId>
-                                               <artifactId>spring-boot-autoconfigure</artifactId>
+                                               <groupId>junit</groupId>
+                                               <artifactId>junit</artifactId>
                                </dependency>
                                <dependency>
                                                <groupId>javax.transaction</groupId>
                                                <artifactId>hibernate-annotations</artifactId>
                                                <version>3.5.6-Final</version>
                                </dependency>
-                               <dependency>
-                                               <groupId>org.apache.geronimo.specs</groupId>
-                                               <artifactId>geronimo-jpa_2.0_spec</artifactId>
-                                               <version>1.1</version>
-                               </dependency>
                                <dependency>
                                                <groupId>dom4j</groupId>
                                                <artifactId>dom4j</artifactId>
-                                               <version>1.6.1</version>
-                               </dependency>
-                               <!-- Dependencies of parent pom end -->
-                               <dependency>
-                                               <groupId>com.att.ajsc</groupId>
-                                               <artifactId>sdk-java-camel-rest</artifactId>
-                                               <version>${sdk.camel.rest}</version>
                                </dependency>
 
-                               <!-- Camunda Core -->
-                               <dependency>
-                                               <groupId>com.att.ajsc</groupId>
-                                               <artifactId>sdk-java-camunda-core</artifactId>
-                                               <version>${sdk.camunda.core}</version>
-                                               <exclusions>
-                                                               <exclusion>
-                                                                               <groupId>mysql</groupId>
-                                                                               <artifactId>mysql-connector-java</artifactId>
-                                                               </exclusion>
-                                               </exclusions>
-                               </dependency>
-                               <!-- Spring Mail -->
-                               <dependency>
-                                               <groupId>org.springframework</groupId>
-                                               <artifactId>spring-context-support</artifactId>
-                               </dependency>
-                               <!-- CSI Logging -->
-                               <dependency>
-                                               <groupId>com.att.ajsc</groupId>
-                                               <artifactId>sdk-java-common-interceptors</artifactId>
-                                               <version>${csi.logging}</version>
-                                               <exclusions>
-                                                               <exclusion>
-                                                                               <groupId>org.eclipse.jetty.orbit</groupId>
-                                                                               <artifactId>javax.servlet</artifactId>
-                                                               </exclusion>
-                                                               <exclusion>
-                                                                               <groupId>com.att.ajsc</groupId>
-                                                                               <artifactId>ajsc-core</artifactId>
-                                                               </exclusion>
-                                               </exclusions>
-                               </dependency>
-                               <!-- CSI Logging End -->
                                <dependency>
                                                <groupId>org.onap.policy.engine</groupId>
                                                <artifactId>PolicyEngineAPI</artifactId>
                                                <version>1.1.0</version>
                                                <exclusions>
+                                                               <exclusion>
+                                                                               <groupId>com.google.guava</groupId>
+                                                                               <artifactId>guava</artifactId>
+                                                               </exclusion>
                                                                <exclusion>
                                                                                <artifactId>log4j</artifactId>
                                                                                <groupId>log4j</groupId>
                                                                                <artifactId>apache-log4j-extras</artifactId>
                                                                                <groupId>log4j</groupId>
                                                                </exclusion>
-                                                               <exclusion>
-                                                                               <artifactId>jackson-databind</artifactId>
-                                                                               <groupId>com.fasterxml.jackson.core</groupId>
-                                                               </exclusion>
                                                                <exclusion>
                                                                                <groupId>mysql</groupId>
                                                                                <artifactId>mysql-connector-java</artifactId>
                                                                </exclusion>
+                                                               <exclusion>
+                                                                               <groupId>commons-io</groupId>
+                                                                               <artifactId>commons-io</artifactId>
+                                                               </exclusion>
                                                </exclusions>
                                </dependency>
                                <dependency>
                                                                                <artifactId>apache-log4j-extras</artifactId>
                                                                                <groupId>log4j</groupId>
                                                                </exclusion>
+                                                               <exclusion>
+                                                                               <groupId>mysql</groupId>
+                                                                               <artifactId>mysql-connector-java</artifactId>
+                                                               </exclusion>
+                                                               <exclusion>
+                                                                               <groupId>org.mariadb.jdbc</groupId>
+                                                                               <artifactId>mariadb-java-client</artifactId>
+                                                               </exclusion>
+                                                               <exclusion>
+                                                                               <groupId>com.att.nsa</groupId>
+                                                                               <artifactId>dmaapClient</artifactId>
+                                                               </exclusion>
                                                </exclusions>
                                </dependency>
                                <dependency>
                                                                </exclusion>
                                                </exclusions>
                                </dependency>
-                               <dependency>
-                                               <groupId>com.fasterxml.jackson.core</groupId>
-                                               <artifactId>jackson-databind</artifactId>
-                                               <version>2.6.3</version>
-                               </dependency>
-                               <dependency>
-                                               <groupId>com.fasterxml.jackson.dataformat</groupId>
-                                               <artifactId>jackson-dataformat-yaml</artifactId>
-                                               <version>2.6.3</version>
-                               </dependency>
                                <dependency>
                                                <groupId>org.apache.commons</groupId>
                                                <artifactId>commons-csv</artifactId>
                                                <version>1.3</version>
                                </dependency>
-                               <dependency>
-                                               <groupId>org.jboss.resteasy</groupId>
-                                               <artifactId>resteasy-client</artifactId>
-                                               <version>3.0.8.Final</version>
-                               </dependency>
                                <dependency>
                                                <groupId>com.sun.faces</groupId>
                                                <artifactId>jsf-api</artifactId>
                                                <artifactId>jsf-impl</artifactId>
                                                <version>2.1.7</version>
                                </dependency>
+                               <!-- Other dependencies to fix nexus IQ reported vulnerabilities -->
+                               <dependency>
+                                       <groupId>org.codehaus.plexus</groupId>
+                                       <artifactId>plexus-utils</artifactId>
+                                       <version>3.0.24</version>
+                               </dependency>
+                               <dependency>
+                                       <groupId>commons-fileupload</groupId>
+                                       <artifactId>commons-fileupload</artifactId>
+                                       <version>1.3.3</version>
+                               </dependency>
+                               <dependency>
+                                       <groupId>org.jboss.spec.javax.ws.rs</groupId>
+                                       <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
+                                       <version>1.0.1.Final</version>
+                               </dependency>
                                <!-- Remove the MYSQL connector and replace it by Mariadb -->
                                <dependency>
                                                <groupId>org.mariadb.jdbc</groupId>
                                                <artifactId>mariadb-java-client</artifactId>
-                                               <version>2.1.1</version>
+                                               <version>2.2.1</version>
+                               </dependency>
+                               <!-- For SDC Controller -->
+                               <dependency>
+                                               <groupId>org.onap.sdc.sdc-distribution-client</groupId>
+                                               <artifactId>sdc-distribution-client</artifactId>
+                                               <version>1.3.0</version>
+                               </dependency>
+                               <dependency>
+                                       <groupId>org.onap.sdc.sdc-tosca</groupId>
+                                       <artifactId>sdc-tosca</artifactId>
+                                       <version>1.3.3</version>
                                </dependency>
                </dependencies>
 
                                                                <directory>src/test/resources</directory>
                                                                <excludes>
                                                                                <exclude>**/*.jks</exclude>
+                                                                               <exclude>**/*.csar</exclude>
                                                                </excludes>
                                                                <filtering>true</filtering>
                                                </testResource>
                                                                <filtering>false</filtering>
                                                                <targetPath>https</targetPath>
                                                </testResource>
+                                         <testResource>
+                                                               <directory>src/test/resources/example/sdc</directory>
+                                                               <includes>
+                                                                               <include>**.csar</include>
+                                                               </includes>
+                                                               <filtering>false</filtering>
+                                                               <targetPath>example/sdc</targetPath>
+                                               </testResource>
                                </testResources>
                                <resources>
                                                <resource>
                                                <plugin>
                                                                <groupId>org.springframework.boot</groupId>
                                                                <artifactId>spring-boot-maven-plugin</artifactId>
-                                                               <version>1.5.3.RELEASE</version>
+                                                               <version>${springboot.version}</version>
                                                                <executions>
                                                                                <execution>
                                                                                                <goals>
                                                                                                                                </ports>
                                                                                                                </run>
                                                                                                </image>
+                                                                                               <image>
+                                                                                                               <name>python:2-slim</name>
+                                                                                                               <alias>python</alias>
+                                                                                                               <run>
+                                                                                                                               <hostname>python</hostname>
+                                                                                                                               <volumes>
+                                                                                                                                               <bind>
+                                                                                                                                                               <volume>${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app</volume>
+                                                                                                                                                               <volume>${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache</volume>
+                                                                                                                                               </bind>
+                                                                                                                               </volumes>
+                                                                                                                               <wait>
+                                                                                                                                               <tcp>
+                                                                                                                                                               <ports>
+                                                                                                                                                                               <port>8080</port>
+                                                                                                                                                               </ports>
+                                                                                                                                                               <mode>direct</mode>
+                                                                                                                                               </tcp>
+                                                                                                                                               <time>120000</time>
+                                                                                                                               </wait>
+                                                                                                                               <ports>
+                                                                                                                                               <port>${docker.http-cache.port.host}:8080</port>
+                                                                                                                               </ports>
+                                                                                                                               <workingDir>/usr/src/http-cache-app</workingDir>
+                                                                                                                               <cmd>
+                                                                                                                                               <shell>./start_http_cache.sh ${http.proxy} --python_proxyaddress localhost:${docker.http-cache.port.host}</shell>
+                                                                                                                               </cmd>
+                                                                                                               </run>
+                                                                                               </image>
                                                                                </images>
                                                                                <skip>${skipITs}</skip>
                                                                </configuration>
 
                                                                <executions>
                                                                                <execution>
-                                                                                               <id>mariadb-start-for-it</id>
+                                                                                               <id>docker-start-for-it</id>
                                                                                                <phase>pre-integration-test</phase>
                                                                                                <goals>
                                                                                                                <goal>start</goal>
                                                                                                </configuration>
                                                                                </execution>
                                                                                <execution>
-                                                                                               <id>mariadb-stop-for-it</id>
+                                                                                               <id>docker-stop-for-it</id>
                                                                                                <phase>post-integration-test</phase>
                                                                                                <goals>
                                                                                                                <goal>stop</goal>