<modelVersion>4.0.0</modelVersion>
<groupId>org.onap.clamp</groupId>
<artifactId>clds</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<name>clamp</name>
-<!-- <parent> -->
-<!-- <groupId>org.onap.oparent</groupId> -->
-<!-- <artifactId>oparent</artifactId> -->
-<!-- <version>1.2.0</version> -->
-<!-- </parent> -->
+ <parent>
+ <groupId>org.onap.oparent</groupId>
+ <artifactId>oparent</artifactId>
+ <version>1.2.3</version>
+ </parent>
<description>
This project build the ONAP CLAMP JAR that contains CLAMP back-end code and its UI part.
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
- <docker.mariadb.port.host>3306</docker.mariadb.port.host>
- <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>
<eelf.core.version>1.0.0</eelf.core.version>
- <camel.version>2.22.0</camel.version>
- <springboot.version>2.0.3.RELEASE</springboot.version>
+ <camel.version>2.22.1</camel.version>
+ <springboot.version>2.0.6.RELEASE</springboot.version>
- <sonar.language>java</sonar.language>
<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
<sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
<sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
<sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
<sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
<sonar.projectVersion>${project.version}</sonar.projectVersion>
+ <!-- Enable language to disable javascript analysis -->
+ <sonar.language>java</sonar.language>
+ <!-- Parameters for Javascript coverage
+ <sonar.sources>src/main,${project.build.directory}/clamp-ui/designer</sonar.sources>
+ <sonar.javascript.lcov.reportPaths>${project.build.directory}/clamp-ui/coverage/lcov.info</sonar.javascript.lcov.reportPaths>
+ -->
+ <sonar.exclusions>src/main/resources/**,**/clamp-ui/designer/lib/*</sonar.exclusions>
<docker.push.registry>localhost:5000</docker.push.registry>
<docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
<docker.skip.tag>true</docker.skip.tag>
<skip.staging.artifacts>false</skip.staging.artifacts>
<python.http.proxy.param/>
- <tomcat.version>8.5.32</tomcat.version>
+ <tomcat.version>8.5.34</tomcat.version>
</properties>
<profiles>
<repositories>
<repository>
- <id>central</id>
- <name>Maven 2 repository 2</name>
- <url>http://repo2.maven.org/maven2/</url>
+ <id>onap-public</id>
+ <name>onap-public</name>
+ <url>https://nexus.onap.org/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
</repository>
<repository>
<id>ecomp-releases</id>
</releases>
</repository>
<repository>
- <id>spring-repo</id>
- <name>Spring repo</name>
- <url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url>
- </repository>
- <repository>
- <id>repository.jboss.org-public</id>
- <name>JBoss.org Maven repository</name>
- <url>https://repository.jboss.org/nexus/content/groups/public</url>
+ <id>central</id>
+ <url>http://repo1.maven.org/maven2/</url>
</repository>
</repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>onap-public</id>
+ <name>onap-public</name>
+ <url>https://nexus.onap.org/content/repositories/public/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ <pluginRepository>
+ <id>central</id>
+ <url>http://repo1.maven.org/maven2/</url>
+ </pluginRepository>
+ </pluginRepositories>
<dependencyManagement>
<dependencies>
</dependencyManagement>
<dependencies>
+ <dependency>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-svggen</artifactId>
+ <version>1.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-svg-dom</artifactId>
+ <version>1.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.xmlgraphics</groupId>
+ <artifactId>batik-transcoder</artifactId>
+ <version>1.11</version>
+ </dependency>
<dependency>
<groupId>com.att.eelf</groupId>
<artifactId>eelf-core</artifactId>
<artifactId>camel-servlet-starter</artifactId>
</dependency>
<dependency>
- <groupId>org.apache.camel</groupId>
- <artifactId>camel-jackson-starter</artifactId>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-gson-starter</artifactId>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-ext</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-json</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
</exclusion>
</exclusions>
</dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-data-jpa</artifactId>
+ </dependency>
<!-- Others dependencies -->
<dependency>
<groupId>org.onap.aaf.authz</groupId>
<dependency>
<groupId>org.onap.policy.engine</groupId>
<artifactId>PolicyEngineAPI</artifactId>
- <version>1.3.0-SNAPSHOT</version>
+ <version>1.3.3</version>
<exclusions>
<exclusion>
<groupId>com.google.guava</groupId>
<groupId>org.onap.policy.common</groupId>
<artifactId>integrity-audit</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </exclusion>
<exclusion>
<groupId>org.onap.aaf.cadi</groupId>
<artifactId>cadi-aaf</artifactId>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>commons-fileupload</groupId>
+ <artifactId>commons-fileupload</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.att.research.xacml</groupId>
+ <artifactId>xacml</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
<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>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
- <version>25.1-jre</version>
</dependency>
<!-- Remove the MYSQL connector and replace it by Mariadb -->
<dependency>
<dependency>
<groupId>org.onap.sdc.sdc-tosca</groupId>
<artifactId>sdc-tosca</artifactId>
- <version>1.4.1</version>
+ <version>1.5.0</version>
</dependency>
<!-- TESTING -->
<dependency>
<scope>test</scope>
</dependency>
</dependencies>
- <pluginRepositories>
- <pluginRepository>
- <id>central-for-plugins</id>
- <name>Maven 2 repository 2</name>
- <url>http://repo2.maven.org/maven2/</url>
- </pluginRepository>
- <pluginRepository>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- <id>jcenter-releases-for-plugins</id>
- <name>jcenter</name>
- <url>http://jcenter.bintray.com</url>
- </pluginRepository>
- </pluginRepositories>
+
<build>
<finalName>clamp</finalName>
<filtering>false</filtering>
<targetPath>example/sdc</targetPath>
</testResource>
+
+ <!-- Copy the NPM package.json for CLAMP UI javascript testing framework -->
+ <testResource>
+ <directory>src/test/javascript</directory>
+ <includes>
+ <include>**/**.json</include>
+ </includes>
+ <filtering>true</filtering>
+ <targetPath>${project.build.directory}/clamp-ui</targetPath>
+ </testResource>
+ <testResource>
+ <directory>src/main/resources/META-INF/resources/designer</directory>
+ <filtering>false</filtering>
+ <targetPath>${project.build.directory}/clamp-ui/designer</targetPath>
+ </testResource>
</testResources>
<resources>
- <!-- For AAF folder maven should not try to filter Keystores/Truststores ...
+ <!-- For AAF folder maven should not try to filter Keystores/Truststores ...
Otherwise they will be broken and unreadable
-->
<resource>
</resources>
<plugins>
- <!-- Read the swagger.json file and the definition from SwaggerConfig.java;
- generate a list of .adoc files containing the APIs info in more structured
+ <plugin>
+ <groupId>de.jpdigital</groupId>
+ <artifactId>hibernate52-ddl-maven-plugin</artifactId>
+ <version>2.2.0</version>
+ <dependencies>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.3.0</version>
+ </dependency>
+ </dependencies>
+ <executions>
+ <execution>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>gen-ddl</goal>
+ </goals>
+ <configuration>
+ <packages><param>org.onap.clamp.dao.model</param></packages>
+ <dialects><param>MARIADB53</param></dialects>
+ <outputDirectory>${project.basedir}/extra/sql/bulkload/</outputDirectory>
+ <outputFileNameSuffix>create-tables</outputFileNameSuffix>
+ <!-- <createDropStatements>true</createDropStatements> -->
+ <omitDialectFromFileName>true</omitDialectFromFileName>
+ </configuration>
+ </execution>
+ </executions>
+
+ </plugin>
+ <!-- Read the swagger.json file and the definition from SwaggerConfig.java;
+ generate a list of .adoc files containing the APIs info in more structured
way -->
<plugin>
<groupId>io.github.swagger2markup</groupId>
</executions>
</plugin>
- <!-- Run the generated asciidoc through Asciidoctor to generate other
+ <!-- Run the generated asciidoc through Asciidoctor to generate other
documentation types, such as PDFs or HTML5 -->
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId>
- <version>1.5.6</version>
+ <version>1.5.7.1</version>
<dependencies>
<dependency>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctorj-pdf</artifactId>
<version>1.5.0-alpha.10.1</version>
</dependency>
- <dependency>
- <groupId>org.jruby</groupId>
- <artifactId>jruby-complete</artifactId>
- <version>1.7.21</version>
- </dependency>
</dependencies>
<configuration>
<sourceDirectory>${project.basedir}/src/main/resources/asciidoc</sourceDirectory>
</artifacts>
</configuration>
</execution>
+ <execution>
+ <id>reserve-port-for-tests</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>reserve-network-port</goal>
+ </goals>
+ <configuration>
+ <portNames>
+ <portName>docker.mariadb.port.host</portName>
+ <portName>docker.http-cache.port.host</portName>
+ <portName>clamp.it.tests.http-redirected</portName>
+ <portName>clamp.it.tests.https</portName>
+ <portName>clamp.it.tests.http</portName>
+ </portNames>
+ </configuration>
+ </execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.19.1</version>
+ <version>2.22.1</version>
<configuration>
- <forkCount>1</forkCount>
- <reuseForks>false</reuseForks>
+ <forkCount>1C</forkCount>
+ <reuseForks>true</reuseForks>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <argLine>${surefireArgLine}</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
- <version>2.17</version>
-
+ <version>2.22.1</version>
<executions>
<execution>
<id>integration-tests</id>
<goal>verify</goal>
</goals>
<configuration>
+ <additionalClasspathElements>
+ <additionalClasspathElement>${project.build.directory}/classes</additionalClasspathElement>
+ </additionalClasspathElements>
<includes>
<include>**/*ItCase.java</include>
</includes>
<forkCount>1</forkCount>
- <reuseForks>false</reuseForks>
+ <reuseForks>true</reuseForks>
+ <useSystemClassLoader>false</useSystemClassLoader>
+ <argLine>${failsafeArgLine}</argLine>
</configuration>
</execution>
</executions>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.26.0</version>
+ <version>0.27.2</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpclient</artifactId>
+ <version>4.5.5</version>
+ </dependency>
+ </dependencies>
<configuration>
<verbose>true</verbose>
- <apiVersion>1.23</apiVersion>
+ <apiVersion>1.35</apiVersion>
<images>
<image>
- <name>library/mariadb:10.1.11</name>
+ <name>library/mariadb:10.3.12</name>
<alias>mariadb</alias>
<run>
<env>
<tag>${project.docker.latesttagtimestamp.version}</tag>
<tag>${project.docker.latesttag.version}</tag>
</tags>
- <!-- A relative path is looked up in ${project.basedir}/src/main/docker
+ <!-- A relative path is looked up in ${project.basedir}/src/main/docker
by default -->
<dockerFile>Dockerfile</dockerFile>
<assembly>
<tag>${project.docker.latesttagtimestamp.version}</tag>
<tag>${project.docker.latesttag.version}</tag>
</tags>
- <dockerFile>Dockerfile.logstash</dockerFile>
+ <dockerFile>logstash/Dockerfile.logstash</dockerFile>
</build>
</image>
<image>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
- <version>0.7.7.201606060606</version>
+ <version>0.8.2</version>
<configuration>
<dumpOnExit>true</dumpOnExit>
+ <append>true</append>
<includes>
<include>org.onap.clamp.*</include>
</includes>
</goals>
<configuration>
<destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
+ <propertyName>surefireArgLine</propertyName>
<!-- <append>true</append> -->
</configuration>
</execution>
</goals>
<configuration>
<destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
+ <propertyName>failsafeArgLine</propertyName>
<!-- <append>true</append> -->
</configuration>
</execution>
<artifactId>versions-maven-plugin</artifactId>
<version>1.3.1</version>
</plugin>
+
+ <plugin>
+ <groupId>com.github.eirslett</groupId>
+ <artifactId>frontend-maven-plugin</artifactId>
+ <version>1.6</version>
+ <configuration>
+ <installDirectory>${project.build.directory}/clamp-ui</installDirectory>
+ <workingDirectory>${project.build.directory}/clamp-ui</workingDirectory>
+ <skip>${maven.test.skip}</skip>
+ </configuration>
+
+ <executions>
+ <execution>
+ <id>install_node_and_npm</id>
+ <goals>
+ <goal>install-node-and-npm</goal>
+ </goals>
+ <phase>test</phase>
+ <configuration>
+ <nodeVersion>v8.11.1</nodeVersion>
+ <npmVersion>5.6.0</npmVersion>
+ </configuration>
+ </execution>
+ <execution>
+ <id>npm_install</id>
+ <goals>
+ <goal>npm</goal>
+ </goals>
+ <phase>test</phase>
+ <configuration>
+ <arguments>install</arguments>
+ </configuration>
+ </execution>
+ <execution>
+ <id>npm_test</id>
+ <goals>
+ <goal>npm</goal>
+ </goals>
+ <phase>test</phase>
+ <configuration>
+ <arguments>run-script test:coverage</arguments>
+ </configuration>
+ </execution>
+
+ </executions>
+ </plugin>
</plugins>
</build>
</project>