diff options
Diffstat (limited to 'springboot')
-rwxr-xr-x | springboot/pom.xml | 1 | ||||
-rw-r--r-- | springboot/spring-boot-setup/pom.xml | 105 | ||||
-rw-r--r-- | springboot/spring-boot-setup/src/main/properties/springboot1.properties | 5 | ||||
-rw-r--r-- | springboot/spring-boot-setup/src/main/properties/springboot2.properties | 5 | ||||
-rw-r--r-- | springboot/spring-boot-setup/src/main/resources/pom-template.xml | 1055 | ||||
-rwxr-xr-x | springboot/springboot1/pom.xml | 148 | ||||
-rwxr-xr-x | springboot/springboot2/pom.xml | 80 |
7 files changed, 1312 insertions, 87 deletions
diff --git a/springboot/pom.xml b/springboot/pom.xml index 1772fdf5..5b7f69fe 100755 --- a/springboot/pom.xml +++ b/springboot/pom.xml @@ -16,6 +16,7 @@ <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name> <modules> + <module>spring-boot-setup</module> <module>springboot1</module> <module>springboot2</module> </modules> diff --git a/springboot/spring-boot-setup/pom.xml b/springboot/spring-boot-setup/pom.xml new file mode 100644 index 00000000..9709d212 --- /dev/null +++ b/springboot/spring-boot-setup/pom.xml @@ -0,0 +1,105 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.ccsdk.parent</groupId> + <artifactId>springboot-aggregator</artifactId> + <version>1.5.2-SNAPSHOT</version> + </parent> + + <groupId>org.onap.ccsdk.parent</groupId> + <artifactId>spring-boot-setup</artifactId> + <version>1.5.2-SNAPSHOT</version> + <packaging>pom</packaging> + + <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name> + <description>Root POM to be used in place of spring-boot parent for CCSDK based projects</description> + <url>http://wiki.onap.org</url> + + <build> + <plugins> + <plugin> + <artifactId>maven-resources-plugin</artifactId> + <version>2.6</version> + <executions> + <execution> + <id>create-springboot1-parent-pom</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>../springboot1</outputDirectory> + <resources> + <resource> + <directory>src/main/resources</directory> + <includes> + <include>pom-template.xml</include> + </includes> + <filtering>true</filtering> + </resource> + </resources> + <escapeString>\</escapeString> + <filters> + <filter>${basedir}/src/main/properties/springboot1.properties</filter> + </filters> + </configuration> + </execution> + <execution> + <id>create-springboot2-parent-pom</id> + <goals> + <goal>copy-resources</goal> + </goals><!-- here the phase you need --> + <phase>validate</phase> + <configuration> + <outputDirectory>../springboot2</outputDirectory> + <resources> + <resource> + <directory>src/main/resources</directory> + <includes> + <include>pom-template.xml</include> + </includes> + <filtering>true</filtering> + </resource> + </resources> + <escapeString>\</escapeString> + <filters> + <filter>${basedir}/src/main/properties/springboot2.properties</filter> + </filters> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>com.coderplus.maven.plugins</groupId> + <artifactId>copy-rename-maven-plugin</artifactId> + <version>1.0.1</version> + <executions> + <execution> + <id>rename-springboot1-parent-pom</id> + <phase>validate</phase> + <goals> + <goal>rename</goal> + </goals> + <configuration> + <sourceFile>../springboot1/pom-template.xml</sourceFile> + <destinationFile>../springboot1/pom.xml</destinationFile> + </configuration> + </execution> + <execution> + <id>rename-springboot2-parent-pom</id> + <phase>validate</phase> + <goals> + <goal>rename</goal> + </goals> + <configuration> + <sourceFile>../springboot2/pom-template.xml</sourceFile> + <destinationFile>../springboot2/pom.xml</destinationFile> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/springboot/spring-boot-setup/src/main/properties/springboot1.properties b/springboot/spring-boot-setup/src/main/properties/springboot1.properties new file mode 100644 index 00000000..c4f4e011 --- /dev/null +++ b/springboot/spring-boot-setup/src/main/properties/springboot1.properties @@ -0,0 +1,5 @@ +springbootparent.artifactId=spring-boot-starter-parent +springbootparent.groupId=org.springframework.boot +springbootparent.version=1.5.22.RELEASE +springboot.project.artifactId=spring-boot-1-starter-parent +spring.version=4.3.25.RELEASE
\ No newline at end of file diff --git a/springboot/spring-boot-setup/src/main/properties/springboot2.properties b/springboot/spring-boot-setup/src/main/properties/springboot2.properties new file mode 100644 index 00000000..68a672b3 --- /dev/null +++ b/springboot/spring-boot-setup/src/main/properties/springboot2.properties @@ -0,0 +1,5 @@ +springbootparent.artifactId=spring-boot-starter-parent +springbootparent.groupId=org.springframework.boot +springbootparent.version=2.2.4.RELEASE +springboot.project.artifactId=spring-boot-starter-parent +spring.version=5.2.3.RELEASE
\ No newline at end of file diff --git a/springboot/spring-boot-setup/src/main/resources/pom-template.xml b/springboot/spring-boot-setup/src/main/resources/pom-template.xml new file mode 100644 index 00000000..e55d097b --- /dev/null +++ b/springboot/spring-boot-setup/src/main/resources/pom-template.xml @@ -0,0 +1,1055 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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> + + <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/springboot/spring-boot-setup/src/main/template/pom-template.xml + Any updates needed should be made to that template and not to the generated + pom.xml file --> + <parent> + <groupId>${springbootparent.groupId}</groupId> + <artifactId>${springbootparent.artifactId}</artifactId> + <version>${springbootparent.version}</version> + <relativePath/> + </parent> + + <groupId>org.onap.ccsdk.parent</groupId> + <artifactId>${springboot.project.artifactId}</artifactId> + <version>${project.version}</version> + <packaging>pom</packaging> + + <name>ONAP :: \${project.groupId} :: \${project.artifactId}</name> + <description>Root POM to be used in place of spring-boot parent for CCSDK based projects</description> + <url>http://wiki.onap.org</url> + <organization> + <name>ONAP</name> + </organization> + + <issueManagement> + <system>JIRA</system> + <url>https://jira.onap.org/</url> + </issueManagement> + <distributionManagement> + <repository> + <id>ecomp-releases</id> + <url>\${onap.nexus.release-url}</url> + </repository> + <snapshotRepository> + <id>ecomp-snapshots</id> + <url>\${onap.nexus.snapshot-url}</url> + </snapshotRepository> + </distributionManagement> + + <properties> + <!-- Sonar properties --> + <sonar.scanner.version>3.7.0.1746</sonar.scanner.version> + <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version> + <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin> + <!-- Default Sonar configuration --> + <sonar.coverage.jacoco.xmlReportPaths>\${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,\${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths> + <!-- Note: This list should match jacoco-maven-plugin's exclusion list below --> + <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions> + + <!-- Jacoco properties --> + <jacoco.version>0.8.5</jacoco.version> + <!-- properties from oparent --> + + <maven.compiler.source>1.8</maven.compiler.source> + <maven.compiler.target>1.8</maven.compiler.target> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> + <onap.nexus.url>https://nexus.onap.org</onap.nexus.url> + <!-- sitePath may be overridden in the inheriting POM if desired --> + <sitePath>/content/sites/site/\${project.groupId}/\${project.artifactId}/\${project.version}</sitePath> + + <!-- If following file exist, auto-generation of swagger.json will be done --> + <swagger-properties>\${basedir}/src/main/resources/swagger.properties</swagger-properties> + <!-- If following file exist, auto-generation of sdk will be done --> + <swagger-json>\${basedir}/src/main/resources/swagger.json</swagger-json> + <!-- end of properties from oparent --> + + <!-- ONAP repositories --> + <onap.nexus.host>nexus.onap.org</onap.nexus.host> + <onap.nexus.port>443</onap.nexus.port> + <onap.nexus.protocol>https</onap.nexus.protocol> + <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url> + <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url> + <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url> + <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url> + <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id> + <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id> + + <java.version.source>1.8</java.version.source> + <java.version.target>1.8</java.version.target> + <bundle.plugin.version>2.5.0</bundle.plugin.version> + <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version> + <features.file>features.xml</features.file> + <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath> + <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath> + <checkstyle.skip>true</checkstyle.skip> + + <!-- logging-analytics versions --> + <logging-analytics.version>1.6.4</logging-analytics.version> + + <!-- CCSDK component versions --> + <ccsdk.cds.version>0.7.1-SNAPSHOT</ccsdk.cds.version> + <ccsdk.sli.core.version>0.7.1-SNAPSHOT</ccsdk.sli.core.version> + <ccsdk.sli.adaptors.version>0.7.1-SNAPSHOT</ccsdk.sli.adaptors.version> + <ccsdk.sli.northbound.version>0.7.1-SNAPSHOT</ccsdk.sli.northbound.version> + <ccsdk.sli.plugins.version>0.7.1-SNAPSHOT</ccsdk.sli.plugins.version> + <ccsdk.distribution.version>0.7.1-SNAPSHOT</ccsdk.distribution.version> + + <!-- Spring versions --> + <spring.boot.version>${springbootparent.version}</spring.boot.version> + <spring.version>${spring.version}</spring.version> + + <!-- Kotlin versions --> + <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> + <kotlin.version>1.3.61</kotlin.version> + <kotlin.maven.version>1.3.61</kotlin.maven.version> + <kotlin.couroutines.version>1.3.3</kotlin.couroutines.version> + <kotlinpoet.version>1.5.0</kotlinpoet.version> + <kroto-plus.version>0.5.0</kroto-plus.version> + <nats.version>2.6.6</nats.version> + <nats.streaming.version>2.2.3</nats.streaming.version> + <mockk.version>1.9.3</mockk.version> + + <!-- Managed dependency versions --> + <antlr.version>4.7.2</antlr.version> + <commons.lang.version>2.6</commons.lang.version> + <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version> + <apache.httpcomponents.client.version>4.5.10</apache.httpcomponents.client.version> + <derby.version>10.14.2.0</derby.version> + <eelf.version>1.0.0</eelf.version> + <grpc.version>1.25.0</grpc.version> + <protobuff.java.version>3.10.0</protobuff.java.version> + <protobuff.java.utils.version>3.10.0</protobuff.java.utils.version> + <atomix.version>3.1.5</atomix.version> + <jersey.version>2.25.1</jersey.version> + <jersey.client.version>2.25.1</jersey.client.version> + <jettison.version>1.3.8</jettison.version> + <logback.version>1.2.3</logback.version> + <mariadb.connector.version>2.4.4</mariadb.connector.version> + <mariadb4j.version>2.4.0</mariadb4j.version> + <slf4j.version>1.7.25</slf4j.version> + <testng.version>6.11</testng.version> + <tomcat-jdbc.version>9.0.27</tomcat-jdbc.version> + <dependency-list.file>direct-dependencies.txt</dependency-list.file> + </properties> + + <dependencyManagement> + <dependencies> + <!-- Note: If value in BOM conflicts with value inherited from + parent pom, inherited value takes precedence. This seems more like + a bug than a feature, but this is how maven 3.6 works --> + <dependency> + <groupId>org.onap.ccsdk.parent</groupId> + <artifactId>dependencies-bom</artifactId> + <version>${project.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>sli-common</artifactId> + <version>\${ccsdk.sli.core.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>sli-provider</artifactId> + <version>\${ccsdk.sli.core.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>ccsdk-sli</artifactId> + <version>\${ccsdk.sli.core.version}</version> + <type>xml</type> + <classifier>features</classifier> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>dblib-provider</artifactId> + <version>\${ccsdk.sli.core.version}</version> + </dependency> + <dependency> + <groupId>org.onap.ccsdk.sli.adaptors</groupId> + <artifactId>aai-service-provider</artifactId> + <version>\${ccsdk.sli.adaptors.version}</version> + </dependency> + <dependency> + <groupId>org.onap.logging-analytics</groupId> + <artifactId>logging-slf4j</artifactId> + <version>\${logging-analytics.version}</version> + </dependency> + <dependency> + <groupId>org.onap.logging-analytics</groupId> + <artifactId>logging-filter-base</artifactId> + <version>\${logging-analytics.version}</version> + </dependency> + </dependencies> + </dependencyManagement> + + <repositories> + <repository> + <id>onap-public</id> + <url>\${onap.nexus.public-url}</url> + <releases> + <enabled>true</enabled> + <updatePolicy>never</updatePolicy> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + <repository> + <id>onap-staging</id> + <url>\${onap.nexus.staging-url}</url> + <releases> + <enabled>true</enabled> + <updatePolicy>never</updatePolicy> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + <repository> + <id>ecomp-release</id> + <name>onap-repository-releases</name> + <url>\${onap.nexus.release-url}</url> + <releases> + <enabled>true</enabled> + <updatePolicy>never</updatePolicy> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + <repository> + <id>ecomp-snapshot</id> + <name>onap-repository-snapshots</name> + <url>\${onap.nexus.snapshot-url}</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </repository> + </repositories> + <pluginRepositories> + <pluginRepository> + <id>onap-public</id> + <url>\${onap.nexus.public-url}</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </pluginRepository> + <pluginRepository> + <id>onap-staging</id> + <url>\${onap.nexus.staging-url}</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </pluginRepository> + <pluginRepository> + <id>onap-snapshot</id> + <url>\${onap.nexus.snapshot-url}</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + </snapshots> + </pluginRepository> + <!-- Black Duck plugin dependencies --> + <pluginRepository> + <id>JCenter</id> + <name>JCenter Repository</name> + <url>http://jcenter.bintray.com</url> + </pluginRepository> + + <pluginRepository> + <id>Restlet</id> + <name>Restlet Repository</name> + <url>http://maven.restlet.com</url> + </pluginRepository> + </pluginRepositories> + + <build> + <pluginManagement> + <plugins> + <!-- Plugins from ONAP oparent --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-deploy-plugin</artifactId> + <!-- This version supports the "deployAtEnd" parameter --> + <version>2.8</version> + <configuration> + <skip/> + </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> + <artifactId>wagon-webdav-jackrabbit</artifactId> + <version>2.10</version> + </dependency> + <dependency> + <groupId>org.apache.maven.doxia</groupId> + <artifactId>doxia-core</artifactId> + <version>1.7</version> + </dependency> + <dependency> + <groupId>org.apache.maven.doxia</groupId> + <artifactId>doxia-sink-api</artifactId> + <version>1.7</version> + </dependency> + <dependency> + <groupId>org.apache.maven.doxia</groupId> + <artifactId>doxia-logging-api</artifactId> + <version>1.7</version> + </dependency> + </dependencies> + <executions> + <execution> + <id>attach-descriptor</id> + <goals> + <goal>attach-descriptor</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.17</version> + <dependencies> + <dependency> + <groupId>org.onap.oparent</groupId> + <artifactId>checkstyle</artifactId> + <version>1.1.1</version> + </dependency> + </dependencies> + <executions> + <execution> + <id>check-license</id> + <goals> + <goal>check</goal> + </goals> + <phase>process-sources</phase> + <configuration> + <configLocation>onap-checkstyle/check-license.xml</configLocation> + <headerLocation>onap-checkstyle/apache-license-2.regexp.txt</headerLocation> + <includeResources>false</includeResources> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + <includeTestResources>false</includeTestResources> + <sourceDirectory>\${project.build.sourceDirectory}</sourceDirectory> + <excludes> + </excludes> + <failsOnError>false</failsOnError> + <consoleOutput>true</consoleOutput> + </configuration> + </execution> + <execution> + <id>check-style</id> + <goals> + <goal>check</goal> + </goals> + <phase>process-sources</phase> + <configuration> + <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml + with minor changes --> + <configLocation>onap-checkstyle/onap-java-style.xml</configLocation> + <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory --> + <sourceDirectory>\${project.build.sourceDirectory}/src/main/java</sourceDirectory> + <includeResources>true</includeResources> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + <includeTestResources>true</includeTestResources> + <excludes> + </excludes> + <failsOnError>false</failsOnError> + <consoleOutput>true</consoleOutput> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.19.1</version> + <configuration> + <!-- Sets the VM argument line used when unit tests are run. --> + <argLine>\${surefireArgLine}</argLine> + <!-- Excludes integration tests when unit tests are run. --> + <excludes> + <exclude>**/IT*.java</exclude> + </excludes> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <version>2.19.1</version> + <executions> + <!-- Ensures that both integration-test and verify goals of the Failsafe Maven plugin are executed. --> + <execution> + <id>integration-tests</id> + <goals> + <goal>integration-test</goal> + <goal>verify</goal> + </goals> + <configuration> + <!-- Sets the VM argument line used when integration tests are run. --> + <argLine>\${failsafeArgLine}</argLine> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>\${maven.compile.plugin.version}</version> + <configuration> + <source>\${java.version.source}</source> + <target>\${java.version.target}</target> + </configuration> + </plugin> + <plugin> + <groupId>org.sonarsource.scanner.maven</groupId> + <artifactId>sonar-maven-plugin</artifactId> + <version>3.6.0.1398</version> + </plugin> + + <!-- End of plugins from ONAP oparent --> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.10.4</version> + <configuration> + <additionalDependencies> + <additionalDependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>\${slf4j.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>org.antlr</groupId> + <artifactId>antlr4</artifactId> + <version>\${antlr.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>org.antlr</groupId> + <artifactId>antlr4-runtime</artifactId> + <version>\${antlr.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>com.sun.jersey</groupId> + <artifactId>jersey-client</artifactId> + <version>\${jersey.client.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>com.sun.jersey</groupId> + <artifactId>jersey-core</artifactId> + <version>\${jersey.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>org.apache.httpcomponents</groupId> + <artifactId>httpcore-osgi</artifactId> + <version>\${apache.httpcomponents.core.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>org.apache.httpcomponents</groupId> + <artifactId>httpclient-osgi</artifactId> + <version>\${apache.httpcomponents.client.version}</version> + </additionalDependency> + <additionalDependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>\${commons.lang.version}</version> + </additionalDependency> + </additionalDependencies> + </configuration> + <executions> + <execution> + <id>aggregate</id> + <goals> + <goal>aggregate</goal> + </goals> + <phase>site</phase> + </execution> + </executions> + </plugin> + <plugin> + <groupId>com.github.ferstl</groupId> + <artifactId>depgraph-maven-plugin</artifactId> + <version>3.3.0</version> + <configuration> + <graphFormat>text</graphFormat> + <outputFileName>\${dependency-list.file}</outputFileName> + <outputDirectory>\${project.basedir}</outputDirectory> + <transitiveExcludes>*</transitiveExcludes> + <showVersions>true</showVersions> + <showGroupIds>true</showGroupIds> + </configuration> + </plugin> + </plugins> + </pluginManagement> + + <plugins> + <!-- Plugins from ONAP oparent --> + <!-- Jacoco / Sonar --> + <plugin> + <groupId>org.jacoco</groupId> + <artifactId>jacoco-maven-plugin</artifactId> + <version>\${jacoco.version}</version> + <executions> + <execution> + <id>pre-unit-test</id> + <goals> + <goal>prepare-agent</goal> + </goals> + <configuration> + <!-- Sets the path to the file which contains the execution data. --> + <destFile>\${project.build.directory}/code-coverage/jacoco-ut.exec</destFile> + <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. --> + <propertyName>surefireArgLine</propertyName> + </configuration> + </execution> + <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. --> + <execution> + <id>post-unit-test</id> + <phase>test</phase> + <goals> + <goal>report</goal> + </goals> + <configuration> + <!-- Sets the path to the file which contains the execution data. --> + <dataFile>\${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile> + <!-- Sets the output directory for the code coverage report. --> + <outputDirectory>\${project.reporting.outputDirectory}/jacoco-ut</outputDirectory> + </configuration> + </execution> + <execution> + <id>pre-integration-test</id> + <phase>pre-integration-test</phase> + <goals> + <goal>prepare-agent</goal> + </goals> + <configuration> + <!-- Sets the path to the file which contains the execution data. --> + <destFile>\${project.build.directory}/code-coverage/jacoco-it.exec</destFile> + <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. --> + <propertyName>failsafeArgLine</propertyName> + </configuration> + </execution> + <!-- Ensures that the code coverage report for integration tests after integration tests have been run. --> + <execution> + <id>post-integration-test</id> + <phase>post-integration-test</phase> + <goals> + <goal>report</goal> + </goals> + <configuration> + <!-- Sets the path to the file which contains the execution data. --> + <dataFile>\${project.build.directory}/code-coverage/jacoco-it.exec</dataFile> + <!-- Sets the output directory for the code coverage report. --> + <outputDirectory>\${project.reporting.outputDirectory}/jacoco-it</outputDirectory> + </configuration> + </execution> + <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-checkstyle-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.12</version> + </plugin> + <!-- Jacoco / Sonar --> + <plugin> + <groupId>org.jacoco</groupId> + <artifactId>jacoco-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + </plugin> + + <!-- End of plugins from ONAP oparent --> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>properties-maven-plugin</artifactId> + <version>1.0.0</version> + <executions> + <execution> + <goals> + <goal>set-system-properties</goal> + </goals> + <configuration> + <properties> + <property> + <name>maven.wagon.http.ssl.allowall</name> + <value>\${ssl.allowall}</value> + </property> + <property> + <name>maven.wagon.http.ssl.insecure</name> + <value>\${ssl.insecure}</value> + </property> + </properties> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>versions-maven-plugin</artifactId> + <version>2.5</version> + <configuration> + <processAllModules>true</processAllModules> + </configuration> + </plugin> + <plugin> + <artifactId>maven-scm-plugin</artifactId> + <version>1.8.1</version> + <configuration> + <tag>\${project.artifactId}-\${project.version}</tag> + </configuration> + </plugin> + </plugins> + </build> + + <reporting> + <plugins> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.10.4</version> + <configuration> + <failOnError>false</failOnError> + <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet> + <docletArtifact> + <groupId>org.umlgraph</groupId> + <artifactId>umlgraph</artifactId> + <version>5.6</version> + </docletArtifact> + <additionalparam>-views</additionalparam> + <useStandardDocletOptions>true</useStandardDocletOptions> + <excludePackageNames>org.opendaylight.*</excludePackageNames> + </configuration> + <reportSets> + <reportSet> + <reports> + <report>javadoc-no-fork</report> + <report>test-javadoc-no-fork</report> + </reports> + </reportSet> + <reportSet> + <id>aggregate</id> + <reports> + <report>aggregate</report> + <report>test-aggregate</report> + </reports> + </reportSet> + </reportSets> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jxr-plugin</artifactId> + <version>2.3</version> + <reportSets> + <reportSet> + <id>aggregate</id> + <reports> + <report>aggregate</report> + <report>test-aggregate</report> + </reports> + </reportSet> + </reportSets> + </plugin> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <version>2.17</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-changelog-plugin</artifactId> + <version>2.3</version> + <reportSets> + <reportSet> + <id>dual-report</id> + <configuration> + <type>range</type> + <range>30</range> + </configuration> + <reports> + <report>changelog</report> + <report>file-activity</report> + </reports> + </reportSet> + </reportSets> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>taglist-maven-plugin</artifactId> + <version>2.4</version> + </plugin> + </plugins> + </reporting> + + <profiles> + <!-- Profiles from ONAP oparent --> + <profile> + <id>generate-json</id> + <activation> + <file> + <exists>\${swagger-properties}</exists> + </file> + <property> + <name>swagger-sdk.generate-json</name> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>properties-maven-plugin</artifactId> + <version>1.0.0</version> + <executions> + <execution> + <phase>initialize</phase> + <goals> + <goal>read-project-properties</goal> + </goals> + <configuration> + <files> + <file>\${basedir}/src/main/resources/swagger.properties</file> + </files> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>com.github.kongchen</groupId> + <artifactId>swagger-maven-plugin</artifactId> + <version>3.1.4</version> + <configuration> + <apiSources> + <apiSource> + <locations>\${api-rest-package}</locations> + <schemes>http,https</schemes> + <host>\${api-host-ip}:\${api-host-port}</host> + <basePath>\${api-base-path}</basePath> + <info> + <title>\${api-title}</title> + <version>\${api-version}</version> + <description>\${api-description}</description> + <license> + <name>\${api-license}</name> + </license> + </info> + <swaggerDirectory>\${basedir}/src/main/resources</swaggerDirectory> + </apiSource> + </apiSources> + </configuration> + <executions> + <execution> + <phase>compile</phase> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-install-plugin</artifactId> + <version>2.3.1</version> + <executions> + <execution> + <id>install-file-id</id> + <phase>install</phase> + <goals> + <goal>install-file</goal> + </goals> + <configuration> + <file>\${basedir}/src/main/resources/swagger.json</file> + <groupId>\${project.groupId}</groupId> + <artifactId>\${project.artifactId}-swagger-schema</artifactId> + <version>\${project.version}</version> + <packaging>json</packaging> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> + <id>generate-sdk</id> + <activation> + <file> + <exists>\${swagger-json}</exists> + </file> + <property> + <name>swagger-sdk.generate-java-sdk</name> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <version>1.8</version> + <executions> + <execution> + <phase>initialize</phase> + <id>ant-create-script</id> + <configuration> + <exportAntProperties>true</exportAntProperties> + <tasks> + <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/> + <condition property="is_windows" value="true"> + <os family="windows"/> + </condition> + <condition property="isLinux" value="true"> + <os family="unix"/> + </condition> + <if> + <equals arg1="\${is_windows}" arg2="true"/> + <then> + <property name="swagger.sdk.script.file" value="generated-source-script.bat"/> + <echo file="\${project.build.directory}\${file.separator}generated-source-script.bat" append="true" message="cd \${project.build.directory}\${file.separator}generated-sources\${line.separator}"/> + <echo file="\${project.build.directory}\${file.separator}generated-source-script.bat" append="true" message="mvn clean install -Dmaven.test.skip=true\${line.separator}"/> + </then> + <else> + <property name="swagger.sdk.script.file" value="generated-source-script.sh"/> + <echo file="\${project.build.directory}\${file.separator}generated-source-script.sh" append="true" message="cd \${project.build.directory}\${file.separator}generated-sources\${line.separator}"/> + <echo file="\${project.build.directory}\${file.separator}generated-source-script.sh" append="true" message="mvn clean install -Dmaven.test.skip=true\${line.separator}"/> + <chmod file="\${project.build.directory}\${file.separator}generated-source-script.sh" perm="755"/> + </else> + </if> + </tasks> + </configuration> + <goals> + <goal>run</goal> + </goals> + </execution> + </executions> + <dependencies> + <dependency> + <groupId>ant-contrib</groupId> + <artifactId>ant-contrib</artifactId> + <version>1.0b3</version> + <exclusions> + <exclusion> + <groupId>ant</groupId> + <artifactId>ant</artifactId> + </exclusion> + </exclusions> + </dependency> + </dependencies> + </plugin> + <plugin> + <groupId>io.swagger</groupId> + <artifactId>swagger-codegen-maven-plugin</artifactId> + <version>2.2.1</version> + <executions> + <execution> + <goals> + <goal>generate</goal> + </goals> + <configuration> + <inputSpec>\${basedir}/src/main/resources/swagger.json</inputSpec> + <output>\${project.build.directory}/generated-sources</output> + <language>java</language> + <configOptions> + <dateLibrary>joda</dateLibrary> + </configOptions> + <library>jersey2</library> + <groupId>\${project.groupId}</groupId> + <artifactId>\${project.artifactId}-java-sdk</artifactId> + <artifactVersion>\${project.version}</artifactVersion> + <modelPackage>\${project.groupId}.\${project.artifactId}.client.model</modelPackage> + <apiPackage>\${project.groupId}.\${project.artifactId}.client.api</apiPackage> + <invokerPackage>\${project.groupId}.\${project.artifactId}.client.invoker</invokerPackage> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <version>1.5.0</version> + <executions> + <execution> + <id>swagger-generate-sources</id> + <phase>generate-sources</phase> + <goals> + <goal>exec</goal> + </goals> + <configuration> + <executable>\${project.build.directory}\${file.separator}\${swagger.sdk.script.file}</executable> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-clean-plugin</artifactId> + <version>3.0.0</version> + <executions> + <execution> + <id>clean-generated-files</id> + <phase>generate-sources</phase> + <goals> + <goal>clean</goal> + </goals> + <configuration> + <filesets> + <fileset> + <directory>\${project.build.directory}/generated-sources</directory> + </fileset> + </filesets> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <dependencies> + <dependency> + <groupId>org.onap.msb.swagger-sdk</groupId> + <artifactId>swagger-sdk</artifactId> + <version>1.0.0</version> + </dependency> + </dependencies> + </profile> + <profile> + <!-- http://blog2.vorburger.ch/2016/06/improve-maven-build-speed-with-q.html + q = http://memory-alpha.wikia.com/wiki/Q ;) + + The Quick profile is used during incremental local development, when you want to "just get that JAR built", + which is very handy e.g. for fast hot reloading cycles in Karaf with bundle watch. It (intentionally!) skips + tests, quality checks etc. which are great and useful to run before finally submitting changes to Gerrit, and + which all must run on Gerrit, but which are overhead during ongoing fast iterative local development. + + Note that the idea here is that your IDE will already have run quality checks such as e.g. Checkstyle + while you typed the code anyway. Similarly, if you wrote a test, you'll probably already have compiled and run it + from your IDE, so when you want the OSGi bundle JAR for Karaf, ASAP, you typically don't want all that to run again. + --> + <id>q</id> + <properties> + <skipTests>true</skipTests> + <!-- But NOT <maven.test.skip>true, as that's for compiling, not running, tests; + and that's usually quick. Skipping test compilation with -Pq with maven.test.skip would be + particularly confusing when used in a project with maven-jar-plugin <goal>test-jar, so don't.) --> + <skipIT>true</skipIT> + <skipITs>true</skipITs> + <skip.karaf.featureTest>true</skip.karaf.featureTest> + <jacoco.skip>true</jacoco.skip> + <maven.javadoc.skip>true</maven.javadoc.skip> + <maven.source.skip>true</maven.source.skip> + <checkstyle.skip>true</checkstyle.skip> + <findbugs.skip>true</findbugs.skip> + <spotbugs.skip>true</spotbugs.skip> + <pmd.skip>true</pmd.skip> + <cpd.skip>true</cpd.skip> + <maven.site.skip>true</maven.site.skip> + <invoker.skip>true</invoker.skip> + <enforcer.skip>true</enforcer.skip> + <duplicate-finder.skip>true</duplicate-finder.skip> + <mdsal.skip.verbose>true</mdsal.skip.verbose> <!-- Bug 6236 --> + <maven.gitcommitid.skip>true</maven.gitcommitid.skip> + <modernizer.skip>true</modernizer.skip> + <format.skipExecute>true</format.skipExecute> + <format.skipValidate>true</format.skipValidate> + </properties> + </profile> + <profile> + <id>sonar-jacoco-aggregate</id> + <activation> + <property> + <name>onap.jacoco.aggregateFile</name> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.jacoco</groupId> + <artifactId>jacoco-maven-plugin</artifactId> + <executions> + <execution> + <id>merge</id> + <goals> + <goal>merge</goal> + </goals> + <phase>generate-resources</phase> + <configuration> + <destFile>${onap.jacoco.aggregateFile}</destFile> + <fileSets> + <fileSet> + <directory>\${project.basedir}</directory> + <includes> + <include>**/target/code-coverage/*.exec</include> + </includes> + </fileSet> + </fileSets> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <!-- End of profiles from ONAP oparent --> + </profiles> +</project> diff --git a/springboot/springboot1/pom.xml b/springboot/springboot1/pom.xml index c5cb56cf..066c9dab 100755 --- a/springboot/springboot1/pom.xml +++ b/springboot/springboot1/pom.xml @@ -2,6 +2,9 @@ <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> + <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/springboot/spring-boot-setup/src/main/template/pom-template.xml + Any updates needed should be made to that template and not to the generated + pom.xml file --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> @@ -15,7 +18,7 @@ <packaging>pom</packaging> <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name> - <description>Root POM to be used in place of odlparent for CCSDK based projects</description> + <description>Root POM to be used in place of spring-boot parent for CCSDK based projects</description> <url>http://wiki.onap.org</url> <organization> <name>ONAP</name> @@ -28,11 +31,11 @@ <distributionManagement> <repository> <id>ecomp-releases</id> - <url>https://nexus.onap.org/content/repositories/releases</url> + <url>${onap.nexus.release-url}</url> </repository> <snapshotRepository> <id>ecomp-snapshots</id> - <url>https://nexus.onap.org/content/repositories/snapshots</url> + <url>${onap.nexus.snapshot-url}</url> </snapshotRepository> </distributionManagement> @@ -48,8 +51,8 @@ <!-- Jacoco properties --> <jacoco.version>0.8.5</jacoco.version> - <!-- properties from oparent --> + <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> @@ -84,6 +87,8 @@ <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath> <checkstyle.skip>true</checkstyle.skip> + <!-- logging-analytics versions --> + <logging-analytics.version>1.6.4</logging-analytics.version> <!-- CCSDK component versions --> <ccsdk.cds.version>0.7.1-SNAPSHOT</ccsdk.cds.version> @@ -92,27 +97,50 @@ <ccsdk.sli.northbound.version>0.7.1-SNAPSHOT</ccsdk.sli.northbound.version> <ccsdk.sli.plugins.version>0.7.1-SNAPSHOT</ccsdk.sli.plugins.version> <ccsdk.distribution.version>0.7.1-SNAPSHOT</ccsdk.distribution.version> - <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version> - <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version> - <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version> - <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version> - <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version> + + <!-- Spring versions --> + <spring.boot.version>1.5.22.RELEASE</spring.boot.version> + <spring.version>4.3.25.RELEASE</spring.version> + + <!-- Kotlin versions --> + <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> + <kotlin.version>1.3.61</kotlin.version> + <kotlin.maven.version>1.3.61</kotlin.maven.version> + <kotlin.couroutines.version>1.3.3</kotlin.couroutines.version> + <kotlinpoet.version>1.5.0</kotlinpoet.version> + <kroto-plus.version>0.5.0</kroto-plus.version> + <nats.version>2.6.6</nats.version> + <nats.streaming.version>2.2.3</nats.streaming.version> + <mockk.version>1.9.3</mockk.version> <!-- Managed dependency versions --> <antlr.version>4.7.2</antlr.version> <commons.lang.version>2.6</commons.lang.version> <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version> <apache.httpcomponents.client.version>4.5.10</apache.httpcomponents.client.version> + <derby.version>10.14.2.0</derby.version> + <eelf.version>1.0.0</eelf.version> + <grpc.version>1.25.0</grpc.version> + <protobuff.java.version>3.10.0</protobuff.java.version> + <protobuff.java.utils.version>3.10.0</protobuff.java.utils.version> + <atomix.version>3.1.5</atomix.version> <jersey.version>2.25.1</jersey.version> <jersey.client.version>2.25.1</jersey.client.version> + <jettison.version>1.3.8</jettison.version> + <logback.version>1.2.3</logback.version> <mariadb.connector.version>2.4.4</mariadb.connector.version> - + <mariadb4j.version>2.4.0</mariadb4j.version> + <slf4j.version>1.7.25</slf4j.version> + <testng.version>6.11</testng.version> + <tomcat-jdbc.version>9.0.27</tomcat-jdbc.version> <dependency-list.file>direct-dependencies.txt</dependency-list.file> - </properties> <dependencyManagement> <dependencies> + <!-- Note: If value in BOM conflicts with value inherited from + parent pom, inherited value takes precedence. This seems more like + a bug than a feature, but this is how maven 3.6 works --> <dependency> <groupId>org.onap.ccsdk.parent</groupId> <artifactId>dependencies-bom</artifactId> @@ -125,7 +153,6 @@ <artifactId>sli-common</artifactId> <version>${ccsdk.sli.core.version}</version> </dependency> - <dependency> <groupId>org.onap.ccsdk.sli.core</groupId> <artifactId>sli-provider</artifactId> @@ -139,25 +166,32 @@ <classifier>features</classifier> </dependency> <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>dblib-provider</artifactId> + <version>${ccsdk.sli.core.version}</version> + </dependency> + <dependency> <groupId>org.onap.ccsdk.sli.adaptors</groupId> <artifactId>aai-service-provider</artifactId> - <version>${sdnctl.aai.service.version}</version> + <version>${ccsdk.sli.adaptors.version}</version> </dependency> - <dependency> - <groupId>org.onap.ccsdk.sli.core</groupId> - <artifactId>dblib-provider</artifactId> - <version>${sdnctl.dblib.version}</version> + <groupId>org.onap.logging-analytics</groupId> + <artifactId>logging-slf4j</artifactId> + <version>${logging-analytics.version}</version> + </dependency> + <dependency> + <groupId>org.onap.logging-analytics</groupId> + <artifactId>logging-filter-base</artifactId> + <version>${logging-analytics.version}</version> </dependency> - </dependencies> - </dependencyManagement> <repositories> <repository> <id>onap-public</id> - <url>https://nexus.onap.org/content/groups/public</url> + <url>${onap.nexus.public-url}</url> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> @@ -169,7 +203,7 @@ </repository> <repository> <id>onap-staging</id> - <url>https://nexus.onap.org/content/groups/staging</url> + <url>${onap.nexus.staging-url}</url> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> @@ -182,7 +216,7 @@ <repository> <id>ecomp-release</id> <name>onap-repository-releases</name> - <url>https://nexus.onap.org/content/repositories/releases</url> + <url>${onap.nexus.release-url}</url> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> @@ -194,7 +228,7 @@ <repository> <id>ecomp-snapshot</id> <name>onap-repository-snapshots</name> - <url>https://nexus.onap.org/content/repositories/snapshots</url> + <url>${onap.nexus.snapshot-url}</url> <releases> <enabled>false</enabled> </releases> @@ -251,7 +285,6 @@ <build> <pluginManagement> <plugins> - <!-- Plugins from ONAP oparent --> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -262,7 +295,6 @@ <skip/> </configuration> </plugin> - <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> @@ -338,8 +370,7 @@ <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml with minor changes --> <configLocation>onap-checkstyle/onap-java-style.xml</configLocation> - <!-- <sourceDirectory> is needed so that checkstyle ignores the generated - sources directory --> + <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory --> <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory> <includeResources>true</includeResources> <includeTestSourceDirectory>true</includeTestSourceDirectory> @@ -371,8 +402,7 @@ <artifactId>maven-failsafe-plugin</artifactId> <version>2.19.1</version> <executions> - <!-- Ensures that both integration-test and verify goals of the Failsafe - Maven plugin are executed. --> + <!-- Ensures that both integration-test and verify goals of the Failsafe Maven plugin are executed. --> <execution> <id>integration-tests</id> <goals> @@ -424,7 +454,6 @@ <artifactId>antlr4-runtime</artifactId> <version>${antlr.version}</version> </additionalDependency> - <additionalDependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-client</artifactId> @@ -452,7 +481,6 @@ </additionalDependency> </additionalDependencies> </configuration> - <executions> <execution> <id>aggregate</id> @@ -460,7 +488,6 @@ <goal>aggregate</goal> </goals> <phase>site</phase> - </execution> </executions> </plugin> @@ -478,8 +505,8 @@ </configuration> </plugin> </plugins> - </pluginManagement> + <plugins> <!-- Plugins from ONAP oparent --> <!-- Jacoco / Sonar --> @@ -496,13 +523,11 @@ <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile> - <!-- Sets the name of the property containing the settings for JaCoCo - runtime agent. --> + <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. --> <propertyName>surefireArgLine</propertyName> </configuration> </execution> - <!-- Ensures that the code coverage report for unit tests is created - after unit tests have been run. --> + <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. --> <execution> <id>post-unit-test</id> <phase>test</phase> @@ -525,13 +550,11 @@ <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile> - <!-- Sets the name of the property containing the settings for JaCoCo - runtime agent. --> + <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. --> <propertyName>failsafeArgLine</propertyName> </configuration> </execution> - <!-- Ensures that the code coverage report for integration tests after - integration tests have been run. --> + <!-- Ensures that the code coverage report for integration tests after integration tests have been run. --> <execution> <id>post-integration-test</id> <phase>post-integration-test</phase> @@ -692,7 +715,6 @@ </reportSet> </reportSets> </plugin> - <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.17</version> @@ -834,7 +856,6 @@ <configuration> <exportAntProperties>true</exportAntProperties> <tasks> - <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/> <condition property="is_windows" value="true"> <os family="windows"/> @@ -953,6 +974,47 @@ </dependencies> </profile> <profile> + <!-- http://blog2.vorburger.ch/2016/06/improve-maven-build-speed-with-q.html + q = http://memory-alpha.wikia.com/wiki/Q ;) + + The Quick profile is used during incremental local development, when you want to "just get that JAR built", + which is very handy e.g. for fast hot reloading cycles in Karaf with bundle watch. It (intentionally!) skips + tests, quality checks etc. which are great and useful to run before finally submitting changes to Gerrit, and + which all must run on Gerrit, but which are overhead during ongoing fast iterative local development. + + Note that the idea here is that your IDE will already have run quality checks such as e.g. Checkstyle + while you typed the code anyway. Similarly, if you wrote a test, you'll probably already have compiled and run it + from your IDE, so when you want the OSGi bundle JAR for Karaf, ASAP, you typically don't want all that to run again. + --> + <id>q</id> + <properties> + <skipTests>true</skipTests> + <!-- But NOT <maven.test.skip>true, as that's for compiling, not running, tests; + and that's usually quick. Skipping test compilation with -Pq with maven.test.skip would be + particularly confusing when used in a project with maven-jar-plugin <goal>test-jar, so don't.) --> + <skipIT>true</skipIT> + <skipITs>true</skipITs> + <skip.karaf.featureTest>true</skip.karaf.featureTest> + <jacoco.skip>true</jacoco.skip> + <maven.javadoc.skip>true</maven.javadoc.skip> + <maven.source.skip>true</maven.source.skip> + <checkstyle.skip>true</checkstyle.skip> + <findbugs.skip>true</findbugs.skip> + <spotbugs.skip>true</spotbugs.skip> + <pmd.skip>true</pmd.skip> + <cpd.skip>true</cpd.skip> + <maven.site.skip>true</maven.site.skip> + <invoker.skip>true</invoker.skip> + <enforcer.skip>true</enforcer.skip> + <duplicate-finder.skip>true</duplicate-finder.skip> + <mdsal.skip.verbose>true</mdsal.skip.verbose> <!-- Bug 6236 --> + <maven.gitcommitid.skip>true</maven.gitcommitid.skip> + <modernizer.skip>true</modernizer.skip> + <format.skipExecute>true</format.skipExecute> + <format.skipValidate>true</format.skipValidate> + </properties> + </profile> + <profile> <id>sonar-jacoco-aggregate</id> <activation> <property> diff --git a/springboot/springboot2/pom.xml b/springboot/springboot2/pom.xml index 3ab11e68..662b3a9b 100755 --- a/springboot/springboot2/pom.xml +++ b/springboot/springboot2/pom.xml @@ -2,6 +2,9 @@ <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> + <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/springboot/spring-boot-setup/src/main/template/pom-template.xml + Any updates needed should be made to that template and not to the generated + pom.xml file --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> @@ -15,7 +18,7 @@ <packaging>pom</packaging> <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name> - <description>Root POM to be used in place of odlparent for CCSDK based projects</description> + <description>Root POM to be used in place of spring-boot parent for CCSDK based projects</description> <url>http://wiki.onap.org</url> <organization> <name>ONAP</name> @@ -28,11 +31,11 @@ <distributionManagement> <repository> <id>ecomp-releases</id> - <url>https://nexus.onap.org/content/repositories/releases</url> + <url>${onap.nexus.release-url}</url> </repository> <snapshotRepository> <id>ecomp-snapshots</id> - <url>https://nexus.onap.org/content/repositories/snapshots</url> + <url>${onap.nexus.snapshot-url}</url> </snapshotRepository> </distributionManagement> @@ -49,6 +52,7 @@ <!-- Jacoco properties --> <jacoco.version>0.8.5</jacoco.version> <!-- properties from oparent --> + <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> @@ -83,6 +87,9 @@ <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath> <checkstyle.skip>true</checkstyle.skip> + <!-- logging-analytics versions --> + <logging-analytics.version>1.6.4</logging-analytics.version> + <!-- CCSDK component versions --> <ccsdk.cds.version>0.7.1-SNAPSHOT</ccsdk.cds.version> <ccsdk.sli.core.version>0.7.1-SNAPSHOT</ccsdk.sli.core.version> @@ -90,11 +97,6 @@ <ccsdk.sli.northbound.version>0.7.1-SNAPSHOT</ccsdk.sli.northbound.version> <ccsdk.sli.plugins.version>0.7.1-SNAPSHOT</ccsdk.sli.plugins.version> <ccsdk.distribution.version>0.7.1-SNAPSHOT</ccsdk.distribution.version> - <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version> - <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version> - <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version> - <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version> - <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version> <!-- Spring versions --> <spring.boot.version>2.2.4.RELEASE</spring.boot.version> @@ -125,7 +127,6 @@ <jersey.version>2.25.1</jersey.version> <jersey.client.version>2.25.1</jersey.client.version> <jettison.version>1.3.8</jettison.version> - <junit.version>4.12</junit.version> <logback.version>1.2.3</logback.version> <mariadb.connector.version>2.4.4</mariadb.connector.version> <mariadb4j.version>2.4.0</mariadb4j.version> @@ -137,6 +138,9 @@ <dependencyManagement> <dependencies> + <!-- Note: If value in BOM conflicts with value inherited from + parent pom, inherited value takes precedence. This seems more like + a bug than a feature, but this is how maven 3.6 works --> <dependency> <groupId>org.onap.ccsdk.parent</groupId> <artifactId>dependencies-bom</artifactId> @@ -149,7 +153,6 @@ <artifactId>sli-common</artifactId> <version>${ccsdk.sli.core.version}</version> </dependency> - <dependency> <groupId>org.onap.ccsdk.sli.core</groupId> <artifactId>sli-provider</artifactId> @@ -163,30 +166,32 @@ <classifier>features</classifier> </dependency> <dependency> + <groupId>org.onap.ccsdk.sli.core</groupId> + <artifactId>dblib-provider</artifactId> + <version>${ccsdk.sli.core.version}</version> + </dependency> + <dependency> <groupId>org.onap.ccsdk.sli.adaptors</groupId> <artifactId>aai-service-provider</artifactId> - <version>${sdnctl.aai.service.version}</version> + <version>${ccsdk.sli.adaptors.version}</version> </dependency> - <dependency> - <groupId>org.onap.ccsdk.sli.core</groupId> - <artifactId>dblib-provider</artifactId> - <version>${sdnctl.dblib.version}</version> + <groupId>org.onap.logging-analytics</groupId> + <artifactId>logging-slf4j</artifactId> + <version>${logging-analytics.version}</version> </dependency> <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>${junit.version}</version> - <scope>test</scope> + <groupId>org.onap.logging-analytics</groupId> + <artifactId>logging-filter-base</artifactId> + <version>${logging-analytics.version}</version> </dependency> </dependencies> - </dependencyManagement> <repositories> <repository> <id>onap-public</id> - <url>https://nexus.onap.org/content/groups/public</url> + <url>${onap.nexus.public-url}</url> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> @@ -198,7 +203,7 @@ </repository> <repository> <id>onap-staging</id> - <url>https://nexus.onap.org/content/groups/staging</url> + <url>${onap.nexus.staging-url}</url> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> @@ -211,7 +216,7 @@ <repository> <id>ecomp-release</id> <name>onap-repository-releases</name> - <url>https://nexus.onap.org/content/repositories/releases</url> + <url>${onap.nexus.release-url}</url> <releases> <enabled>true</enabled> <updatePolicy>never</updatePolicy> @@ -223,7 +228,7 @@ <repository> <id>ecomp-snapshot</id> <name>onap-repository-snapshots</name> - <url>https://nexus.onap.org/content/repositories/snapshots</url> + <url>${onap.nexus.snapshot-url}</url> <releases> <enabled>false</enabled> </releases> @@ -280,7 +285,6 @@ <build> <pluginManagement> <plugins> - <!-- Plugins from ONAP oparent --> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -291,7 +295,6 @@ <skip/> </configuration> </plugin> - <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> @@ -367,8 +370,7 @@ <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml with minor changes --> <configLocation>onap-checkstyle/onap-java-style.xml</configLocation> - <!-- <sourceDirectory> is needed so that checkstyle ignores the generated - sources directory --> + <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory --> <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory> <includeResources>true</includeResources> <includeTestSourceDirectory>true</includeTestSourceDirectory> @@ -400,8 +402,7 @@ <artifactId>maven-failsafe-plugin</artifactId> <version>2.19.1</version> <executions> - <!-- Ensures that both integration-test and verify goals of the Failsafe - Maven plugin are executed. --> + <!-- Ensures that both integration-test and verify goals of the Failsafe Maven plugin are executed. --> <execution> <id>integration-tests</id> <goals> @@ -453,7 +454,6 @@ <artifactId>antlr4-runtime</artifactId> <version>${antlr.version}</version> </additionalDependency> - <additionalDependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-client</artifactId> @@ -481,7 +481,6 @@ </additionalDependency> </additionalDependencies> </configuration> - <executions> <execution> <id>aggregate</id> @@ -489,7 +488,6 @@ <goal>aggregate</goal> </goals> <phase>site</phase> - </execution> </executions> </plugin> @@ -507,8 +505,8 @@ </configuration> </plugin> </plugins> - </pluginManagement> + <plugins> <!-- Plugins from ONAP oparent --> <!-- Jacoco / Sonar --> @@ -525,13 +523,11 @@ <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile> - <!-- Sets the name of the property containing the settings for JaCoCo - runtime agent. --> + <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. --> <propertyName>surefireArgLine</propertyName> </configuration> </execution> - <!-- Ensures that the code coverage report for unit tests is created - after unit tests have been run. --> + <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. --> <execution> <id>post-unit-test</id> <phase>test</phase> @@ -554,13 +550,11 @@ <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile> - <!-- Sets the name of the property containing the settings for JaCoCo - runtime agent. --> + <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. --> <propertyName>failsafeArgLine</propertyName> </configuration> </execution> - <!-- Ensures that the code coverage report for integration tests after - integration tests have been run. --> + <!-- Ensures that the code coverage report for integration tests after integration tests have been run. --> <execution> <id>post-integration-test</id> <phase>post-integration-test</phase> @@ -721,7 +715,6 @@ </reportSet> </reportSets> </plugin> - <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.17</version> @@ -863,7 +856,6 @@ <configuration> <exportAntProperties>true</exportAntProperties> <tasks> - <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/> <condition property="is_windows" value="true"> <os family="windows"/> |