<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Copyright (c) 2018 Orange
+
+ 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.
+
+-->
<!-- Copyright (c) 2018 Orange 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
<groupId>org.onap.externalapi-nbi</groupId>
<artifactId>nbi-rest-services</artifactId>
- <version>3.0.1</version>
+ <version>7.0.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>externalapi-nbi</name>
<parent>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-parent</artifactId>
- <version>2.1.2.RELEASE</version>
- <relativePath/> <!-- lookup parent from repository -->
+ <groupId>org.onap.oparent</groupId>
+ <artifactId>oparent</artifactId>
+ <version>3.0.0</version>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <start-class>org.onap.nbi.Application</start-class>
+ <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
<nexusproxy>https://nexus.onap.org</nexusproxy>
<snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
<releaseNexusPath>content/repositories/releases/</releaseNexusPath>
<docker.latest.tag>${project.version}-latest</docker.latest.tag>
<!--sonar -->
<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.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
<sonar.projectVersion>${project.version}</sonar.projectVersion>
- <sonar.coverage.exclusions>**/model/**/*</sonar.coverage.exclusions>
</properties>
- <repositories>
- <repository>
- <id>maven2-repository.java.net</id>
- <name>Java.net Repository for Maven</name>
- <url>http://download.java.net/maven/2/</url>
- <layout>default</layout>
- </repository>
- <repository>
- <id>ecomp-snapshots</id>
- <name>Snapshot Repository</name>
- <url>https://nexus.onap.org/content/repositories/releases/</url>
- </repository>
- <repository>
- <id>ecomp-staging</id>
- <name>Staging Repository</name>
- <url>https://nexus.onap.org/content/repositories/staging/</url>
- </repository>
- </repositories>
+ <!--<repositories>-->
+ <!--<repository>-->
+ <!--<id>maven2-repository.java.net</id>-->
+ <!--<name>Java.net Repository for Maven</name>-->
+ <!--<url>http://download.java.net/maven/2/</url>-->
+ <!--<layout>default</layout>-->
+ <!--</repository>-->
+ <!--<repository>-->
+ <!--<id>ecomp-release</id>-->
+ <!--<name>Snapshot Repository</name>-->
+ <!--<url>https://nexus.onap.org/content/repositories/releases/</url>-->
+ <!--</repository>-->
+ <!--<repository>-->
+ <!--<id>ecomp-staging</id>-->
+ <!--<name>Staging Repository</name>-->
+ <!--<url>https://nexus.onap.org/content/repositories/staging/</url>-->
+ <!--</repository>-->
+ <!--<repository>-->
+ <!--<id>ecomp-snapshots</id>-->
+ <!--<name>Snapshot Repository</name>-->
+ <!--<url>https://nexus.onap.org/content/repositories/snapshots/</url>-->
+ <!--</repository>-->
+ <!--</repositories>-->
<distributionManagement>
<repository>
</license>
</licenses>
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-dependencies</artifactId>
+ <version>2.2.2.RELEASE</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
- <exclusion>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- </exclusion>
<exclusion>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
</exclusion>
- <exclusion>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- </exclusion>
</exclusions>
</dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <version>2.9.4</version>
- </dependency>
-
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
- <version>8.5.32</version>
- </dependency>
-
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- <version>1.2.3</version>
+ <version>9.0.36</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.springframework.data</groupId>
- <artifactId>spring-data-commons</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.data</groupId>
- <artifactId>spring-data-commons</artifactId>
- <version>2.1.4.RELEASE</version>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-tomcat</artifactId>
- <scope>provided</scope>
</dependency>
<dependency>
</dependency>
<dependency>
- <groupId>org.apache.commons</groupId>
+ <groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
- <version>1.3.2</version>
+ <version>2.6</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
- <version>1.9.3</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
- <version>2.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
- <version>3.4</version>
</dependency>
<!-- mongo -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
- <version>1.1.7</version>
</dependency>
<!-- swagger -->
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
- <version>1.5.18</version>
+ <version>1.5.23</version>
+ </dependency>
+
+ <!-- swagger core -->
+ <dependency>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-core</artifactId>
+ <version>1.5.23</version>
</dependency>
<!-- jackson -->
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ <version>2.10.1</version>
+ </dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
- <version>2.9.6</version>
</dependency>
<!-- sdc tosca parser -->
<dependency>
<groupId>org.onap.sdc.sdc-tosca</groupId>
<artifactId>sdc-tosca</artifactId>
- <version>1.4.6</version>
+ <version>1.6.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ <version>1.13</version>
</dependency>
<!-- jolt -->
<dependency>
<groupId>com.bazaarvoice.jolt</groupId>
<artifactId>jolt-core</artifactId>
- <version>0.1.0</version>
+ <version>0.1.1</version>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<dependency>
<groupId>com.bazaarvoice.jolt</groupId>
<artifactId>json-utils</artifactId>
- <version>0.1.0</version>
+ <version>0.1.1</version>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
- <scope>test</scope>
+ <scope>test</scope>
</dependency>
<!-- test h2 -->
<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.mongo</artifactId>
- <version>${embedded-mongo.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-contract-wiremock</artifactId>
- <version>1.2.6.RELEASE</version>
+ <version>1.2.7.RELEASE</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.onap.msb.java-sdk</groupId>
<artifactId>msb-java-sdk</artifactId>
- <version>1.1.1</version>
+ <version>1.2.5</version>
<exclusions>
<exclusion>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>com.squareup.okhttp3</groupId>
+ <artifactId>okhttp</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.squareup.retrofit2</groupId>
+ <artifactId>retrofit</artifactId>
+ </exclusion>
</exclusions>
</dependency>
+ <dependency>
+ <groupId>com.squareup.okhttp3</groupId>
+ <artifactId>okhttp</artifactId>
+ <version>4.3.1</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>com.squareup.retrofit2</groupId>
+ <artifactId>retrofit</artifactId>
+ <version>2.7.1</version>
+ </dependency>
+
<!-- karate -->
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-junit4</artifactId>
- <version>0.9.0</version>
+ <version>0.9.4</version>
<scope>test</scope>
</dependency>
+
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-apache</artifactId>
- <version>0.9.0</version>
+ <version>0.9.4</version>
<scope>test</scope>
</dependency>
-
</dependencies>
<build>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
+ <version>2.2.1.RELEASE</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>repackage</goal>
+ </goals>
+ <configuration>
+ <mainClass>org.onap.nbi.Application</mainClass>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
+ <version>2.22.2</version>
<configuration>
+<!-- <argLine>-->
+<!-- --illegal-access=permit-->
+<!-- </argLine>-->
<includes>
<include>org/onap/nbi/test/KarateApiTest.java</include>
- <include>org/onap/nbi/test/ExecutionTaskTest.java</include>
+ <include>org/onap/nbi/test/ExecutionTaskTest.java</include>
<include>org/onap/nbi/test/ServiceOrderRepositoryTest.java</include>
<include>org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java</include>
</includes>
</configuration>
</plugin>
- <plugin>
- <groupId>org.sonatype.plugins</groupId>
- <artifactId>nexus-staging-maven-plugin</artifactId>
- <version>1.6.7</version>
- <extensions>true</extensions>
- <configuration>
- <nexusUrl>${nexusproxy}</nexusUrl>
- <stagingProfileId>176c31dfe190a</stagingProfileId>
- <serverId>ecomp-staging</serverId>
- </configuration>
- </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
- <version>3.6</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<includes>
<include>restclient/**</include>
<include>src/**</include>
- <include>./**/*.xml</include>
- <include>./**/*.xml</include>
- <include>./**/*.yml</include>
- <include>./**/*.yaml</include>
+ <include>**/*.xml</include>
+ <include>**/*.xsd</include>
+ <include>**/*.yml</include>
+ <include>**/*.yaml</include>
+ <include>**/*.plantuml</include>
</includes>
<excludes>
<!-- karate-config.js doesn't support comment, and is mandatory by
karate -->
<exclude>src/test/java/karate-config.js</exclude>
+ <exclude>releases/**/*.yaml</exclude>
+ <exclude>docs/conf.yaml</exclude>
+ <exclude>.readthedocs.yaml</exclude>
</excludes>
<skipExistingHeaders>true</skipExistingHeaders>
<skip>false</skip>
<mapping>
<http>SCRIPT_STYLE</http>
+ <xsd>XML_STYLE</xsd>
+ <yaml>SCRIPT_STYLE</yaml>
+ <yml>SCRIPT_STYLE</yml>
+ <feature>SCRIPT_STYLE</feature>
+ <plantuml>SCRIPT_STYLE</plantuml>
</mapping>
</configuration>
<executions>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.2</version>
</plugin>
-<!-- <plugin> -->
-<!-- <groupId>org.jacoco</groupId> -->
-<!-- <artifactId>jacoco-maven-plugin</artifactId> -->
-<!-- <version>0.8.1</version> -->
-<!-- <configuration> -->
-<!-- <dumpOnExit>true</dumpOnExit> -->
-<!-- <includes> -->
-<!-- <include>org.onap.nbi.*</include> -->
-<!-- </includes> -->
-<!-- <excludes> -->
-<!-- <exclude>**/model/**/*</exclude> -->
-<!-- </excludes> -->
-<!-- </configuration> -->
-<!-- <executions> -->
-<!-- <execution> -->
-<!-- <id>pre-unit-test</id> -->
-<!-- <goals> -->
-<!-- <goal>prepare-agent</goal> -->
-<!-- </goals> -->
-<!-- <configuration> -->
-<!-- <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile> -->
-<!-- <append>true</append> -->
-<!-- </configuration> -->
-<!-- </execution> -->
-<!-- <execution> -->
-<!-- <id>pre-integration-test</id> -->
-<!-- <phase>pre-integration-test</phase> -->
-<!-- <goals> -->
-<!-- <goal>prepare-agent</goal> -->
-<!-- </goals> -->
-<!-- <configuration> -->
-<!-- <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile> -->
-<!-- <append>true</append> -->
-<!-- </configuration> -->
-<!-- </execution> -->
-<!-- <execution> -->
-<!-- <goals> -->
-<!-- <goal>merge</goal> -->
-<!-- </goals> -->
-<!-- <phase>post-integration-test</phase> -->
-<!-- <configuration> -->
-<!-- <fileSets> -->
-<!-- <fileSet -->
-<!-- implementation="org.apache.maven.shared.model.fileset.FileSet"> -->
-<!-- <directory>${project.build.directory}/coverage-reports</directory> -->
-<!-- <includes> -->
-<!-- <include>*.exec</include> -->
-<!-- </includes> -->
-<!-- </fileSet> -->
-<!-- </fileSets> -->
-<!-- <destFile>${project.build.directory}/jacoco-dev.exec</destFile> -->
-<!-- </configuration> -->
-<!-- </execution> -->
-<!-- </executions> -->
-<!-- </plugin> -->
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <version>0.8.5</version>
+ <executions>
+ <execution>
+ <id>default-prepare-agent</id>
+ <goals>
+ <goal>prepare-agent</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>default-report</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>report</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>default-check</id>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <rule>
+ <element>PACKAGE</element>
+ <limits>
+ <limit>
+ <counter>COMPLEXITY</counter>
+ <value>COVEREDRATIO</value>
+ <minimum>0.0</minimum>
+ </limit>
+ </limits>
+ </rule>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
+ <version>3.2.0</version>
<executions>
<execution>
<id>attach-sources</id>
</plugins>
</build>
-
<profiles>
<profile>
<id>docker</id>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.26.1</version>
+ <version>0.28.0</version>
<configuration>
<verbose>true</verbose>
<apiVersion>1.23</apiVersion>
</plugins>
</build>
</profile>
+ <profile>
+ <id>onap-settings</id>
+ <properties>
+ <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
+ <onap.nexus.rawrepo.baseurl.upload>https://nexus.onap.org/content/sites/raw
+ </onap.nexus.rawrepo.baseurl.upload>
+ <onap.nexus.rawrepo.baseurl.download>
+ https://nexus.onap.org/service/local/repositories/raw/content
+ </onap.nexus.rawrepo.baseurl.download>
+ <onap.nexus.rawrepo.serverid>ecomp-raw</onap.nexus.rawrepo.serverid>
+
+ <!-- properties for Nexus Docker registry -->
+ <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
+ <onap.nexus.dockerregistry.release>nexus3.onap.org:10002</onap.nexus.dockerregistry.release>
+ <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
+ <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
+ </properties>
+ </profile>
+ <profile>
+ <id>onap-snapshots</id>
+ <repositories>
+ <repository>
+ <id>onap-snapshots</id>
+ <name>onap-snapshots</name>
+ <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>onap-snapshots</id>
+ <name>onap-snapshots</name>
+ <url>https://nexus.onap.org/content/repositories/snapshots/</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ <profile>
+ <id>onap-releases</id>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+ </profile>
+ <profile>
+ <id>onap-public</id>
+ <repositories>
+ <repository>
+ <id>central</id>
+ <url>http://repo1.maven.org/maven2/</url>
+ </repository>
+ <repository>
+ <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>
+ </repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>central</id>
+ <url>http://repo1.maven.org/maven2/</url>
+ </pluginRepository>
+ <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>
+ </pluginRepositories>
+ </profile>
</profiles>
</project>