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.oparent</groupId>
- <artifactId>oparent</artifactId>
- <version>1.1.0</version>
+ <groupId>org.onap.aai.aai-common</groupId>
+ <artifactId>aai-parent</artifactId>
+ <version>1.6.10</version>
</parent>
<groupId>org.onap.aai.graphadmin</groupId>
<artifactId>aai-graphadmin</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.7.0-SNAPSHOT</version>
<properties>
<!-- Start of Compiler Related Properties -->
+ <mockito.core.version>1.10.19</mockito.core.version>
<java.version>1.8</java.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<skip.integration.tests>true</skip.integration.tests>
<!-- End of Test Related Properties -->
- <spring.boot.version>1.5.15.RELEASE</spring.boot.version>
-
- <!-- Start of Sonar Related Properties -->
- <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.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
- <sonar.projectVersion>${project.version}</sonar.projectVersion>
- <!-- End of Sonar Related Properties -->
-
<!-- Start of Docker Related Properties -->
- <docker.fabric.version>0.23.0</docker.fabric.version>
+ <docker.fabric.version>0.28.0</docker.fabric.version>
<!-- Default docker registry that maven fabric plugin will try to pull from -->
<docker.registry>docker.io</docker.registry>
<!-- Specifying the docker push registry where the image should be pushed -->
<!-- This value should be overwritten at runtime to wherever need to be pushed to -->
<docker.push.registry>localhost:5000</docker.push.registry>
<aai.docker.version>1.0.0</aai.docker.version>
+ <aai.schema.version>1.6.6</aai.schema.version>
<aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/
</aai.build.directory>
<aai.docker.namespace>onap</aai.docker.namespace>
+ <!-- base image for aai-common -->
+ <aai.base.image>alpine</aai.base.image>
+ <!-- aai-common image version -->
+ <aai.base.image.version>1.6.0</aai.base.image.version>
<!-- End of Docker Related Properties -->
<license.goal.type>check</license.goal.type>
<aai.project.version>${project.version}</aai.project.version>
<!-- Start of Database Related Properties -->
- <janusgraph.version>0.2.0</janusgraph.version>
- <gremlin.driver.version>3.0.1-incubating</gremlin.driver.version>
- <gremlin.version>3.2.2</gremlin.version>
<!-- End of Database Related Properties -->
<maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
-
- <activemq.version>5.15.6</activemq.version>
- <logback.version>1.2.3</logback.version>
- <mockito.version>1.10.19</mockito.version>
- <httpclient.version>4.5.3</httpclient.version>
-
- <gson.version>2.7</gson.version>
- <json.version>20090211</json.version>
-
- <aai.core.version>1.3.0</aai.core.version>
- <aai.schema.version>1.3.0</aai.schema.version>
-
- <netty.handler.version>4.1.9.Final</netty.handler.version>
- <netty.version>4.0.56.Final</netty.version>
-
- <spring.test.version>4.3.6.RELEASE</spring.test.version>
-
- <cxf.version>3.2.2</cxf.version>
-
- <dme2.version>2.8.5</dme2.version>
- <jsonassert.version>1.4.0</jsonassert.version>
-
- <antlr4.visitor>true</antlr4.visitor>
- <antlr4.listener>true</antlr4.listener>
- <antlr.version>4.7</antlr.version>
-
- <plexus.utils.version>3.1.0</plexus.utils.version>
-
- <eelf.core.version>1.0.0</eelf.core.version>
- <google.guava.version>19.0</google.guava.version>
- <jaxb.version>2.2.11</jaxb.version>
- <eclipse.persistence.version>2.6.2</eclipse.persistence.version>
- <dmaap.client.version>0.2.12</dmaap.client.version>
-
- <springframework.version>4.3.4.RELEASE</springframework.version>
- <spring.jms.version>4.3.2.RELEASE</spring.jms.version>
- <spring.security.version>1.0.3.RELEASE</spring.security.version>
-
- <hamcrest.junit.version>2.0.0.0</hamcrest.junit.version>
- <junit.version>4.12</junit.version>
-
<start-class>org.onap.aai.GraphAdminApp</start-class>
<snapshot.file>${project.basedir}/snapshots/int1-data.graphson</snapshot.file>
<jacoco.line.coverage.limit>0.46</jacoco.line.coverage.limit>
+
+ <aai.common.version>1.6.10</aai.common.version>
<!-- Start of Default ONAP Schema Properties -->
<schema.source.name>onap</schema.source.name>
<schema.configuration.location>N/A</schema.configuration.location>
<schema.nodes.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/oxm</schema.nodes.location>
<schema.edges.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/dbedgerules</schema.edges.location>
- <schema.version.depth.start>v9</schema.version.depth.start>
+ <schema.version.depth.start>v10</schema.version.depth.start>
<schema.version.related.link.start>v10</schema.version.related.link.start>
<schema.version.app.root.start>v11</schema.version.app.root.start>
<schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
<schema.version.edge.label.start>v12</schema.version.edge.label.start>
- <schema.version.api.default>v14</schema.version.api.default>
- <schema.version.list>v8,v9,v10,v11,v12,v13,v14</schema.version.list>
+ <schema.version.api.default>v19</schema.version.api.default>
+ <schema.version.list>v10,v11,v12,v13,v14,v15,v16,v17,v18,v19</schema.version.list>
<schema.uri.base.path>/aai</schema.uri.base.path>
<!-- End of Default ONAP Schema Properties -->
</properties>
<properties>
<schema.source.name>onap</schema.source.name>
<schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
- <schema.version.list>v8,v9,v10,v11,v12,v13,v14</schema.version.list>
+ <schema.version.list>v10,v11,v12,v13,v14,v15,v16,v17,v18,v19</schema.version.list>
</properties>
</profile>
<!-- End of ONAP Profile -->
<id>docker</id>
<build>
<plugins>
+ <plugin>
+ <groupId>org.codehaus.groovy.maven</groupId>
+ <artifactId>gmaven-plugin</artifactId>
+ <version>1.0</version>
+ <executions>
+ <execution>
+ <phase>pre-clean</phase>
+ </execution>
+ <execution>
+ <id>parse-base</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>execute</goal>
+ </goals>
+ <configuration>
+ <source>
+ def userAaiBaseImage = session.userProperties['aai.base.image'];
+ def userAaiCommonVersion = session.userProperties['aai.base.image.version'];
+ if (userAaiCommonVersion != null) {
+ project.properties['aai.base.image.version'] = userAaiCommonVersion;
+ }
+ if (userAaiBaseImage != null) {
+ project.properties['aai.base.image'] = userAaiBaseImage;
+ }
+ log.info 'Base image flavour: ' + project.properties['aai.base.image'];
+ log.info 'Base image version: ' + project.properties['aai.base.image.version'];
+ </source>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
- <version>${spring.boot.version}</version>
+ <version>${spring.boot.version}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>com.att.eelf</groupId>
<artifactId>eelf-core</artifactId>
- <version>${eelf.core.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
- <version>${logback.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>${logback.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-access</artifactId>
- <version>${logback.version}</version>
</dependency>
<!-- End of Logback Dependencies -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
- <version>${google.guava.version}</version>
</dependency>
<!-- Start of Janus Graph Dependencies -->
<dependency>
<groupId>org.janusgraph</groupId>
<artifactId>janusgraph-core</artifactId>
- <version>${janusgraph.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<dependency>
<groupId>org.janusgraph</groupId>
<artifactId>janusgraph-cassandra</artifactId>
- <version>${janusgraph.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
+ <!--
+ indirect janusgraph-cassandra dependency
+ need to be newer than default one
+ in order to support multiple cpu archs
+ -->
+ <dependency>
+ <groupId>com.github.jnr</groupId>
+ <artifactId>jnr-ffi</artifactId>
+ </dependency>
<dependency>
<groupId>org.janusgraph</groupId>
<artifactId>janusgraph-cql</artifactId>
- <version>${janusgraph.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<dependency>
<groupId>org.apache.tinkerpop</groupId>
<artifactId>tinkergraph-gremlin</artifactId>
- <version>${gremlin.version}</version>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
- <version>${antlr.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tinkerpop</groupId>
<artifactId>gremlin-core</artifactId>
- <version>${gremlin.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tinkerpop</groupId>
<artifactId>gremlin-driver</artifactId>
- <version>${gremlin.version}</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.groovy</groupId>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
- <version>${json.version}</version>
</dependency>
<!-- Start of JAXB Dependencies -->
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
- <version>${jaxb.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.bind</groupId>
- <artifactId>jaxb-impl</artifactId>
- <version>${jaxb.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.bind</groupId>
- <artifactId>jaxb-core</artifactId>
- <version>${jaxb.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.bind</groupId>
- <artifactId>jaxb-xjc</artifactId>
- <version>${jaxb.version}</version>
</dependency>
<!-- End of JAXB Dependencies -->
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
- <version>${eclipse.persistence.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.moxy</artifactId>
- <version>${eclipse.persistence.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
- <version>${gson.version}</version>
</dependency>
<!--
Do not use activemq-all because they force you to use a specific logging
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-broker</artifactId>
- <version>${activemq.version}</version>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-client</artifactId>
- <version>${activemq.version}</version>
</dependency>
<dependency>
<groupId>org.onap.aai.aai-common</groupId>
<artifactId>aai-core</artifactId>
- <version>${aai.core.version}</version>
<exclusions>
<exclusion>
<groupId>com.sun.jersey</groupId>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-client</artifactId>
- <version>1.18</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
- <version>1.18</version>
<exclusions>
<exclusion>
<groupId>org.codehaus.jackson</groupId>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
- <version>${httpclient.version}</version>
</dependency>
<!-- Start of Spring Framework Dependencies -->
<!--
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-rsa</artifactId>
- <version>${spring.security.version}</version>
<exclusions>
<exclusion>
<groupId>org.bouncycastle</groupId>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jms</artifactId>
- <version>${spring.jms.version}</version>
<exclusions>
<exclusion>
<groupId>com.sun.jersey</groupId>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
- <version>${spring.test.version}</version>
<scope>test</scope>
</dependency>
<!-- End of Spring Framework Dependencies -->
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
- <version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-handler</artifactId>
- <version>${netty.handler.version}</version>
</dependency>
<!-- End of Netty Dependencies -->
<!-- Start of Antlr dependencies for DSL -->
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
- <version>${antlr.version}</version>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
- <version>${antlr.version}</version>
<exclusions>
<exclusion>
<groupId>org.sonatype.sisu</groupId>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
- <version>${plexus.utils.version}</version>
</dependency>
<!-- End of Plexus dependencies for DSL -->
<!-- Start of Junit Test Dependencies -->
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-junit</artifactId>
- <version>${hamcrest.junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
- <version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.skyscreamer</groupId>
<artifactId>jsonassert</artifactId>
- <version>${jsonassert.version}</version>
<scope>test</scope>
</dependency>
<!-- End of Junit Test Dependencies -->
<configuration>
<artifactItems>
<artifactItem>
- <groupId>org.onap.aai.aai-common</groupId>
+ <groupId>org.onap.aai.schema-service</groupId>
<artifactId>aai-schema</artifactId>
<version>${aai.schema.version}</version>
<outputDirectory>${project.basedir}/src/main/resources/schema/</outputDirectory>
<configuration>
<artifactItems>
<artifactItem>
- <groupId>org.onap.aai.aai-common</groupId>
+ <groupId>org.onap.aai.schema-service</groupId>
<artifactId>aai-schema</artifactId>
<version>${aai.schema.version}</version>
<outputDirectory>${project.basedir}/src/main/resources/schema/</outputDirectory>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
- <executions>
- <execution>
- <id>default-deploy</id>
- <phase>none</phase>
- </execution>
- </executions>
- </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>com.mycila</groupId>
<include>src/test/java/**</include>
<include>pom.xml</include>
</includes>
- <skipExistingHeaders>false</skipExistingHeaders>
+ <skipExistingHeaders>true</skipExistingHeaders>
<skip>false</skip>
</configuration>
<executions>
</plugins>
</pluginManagement>
<plugins>
+ <!--
+ Using https://code.revelc.net/formatter-maven-plugin/ for Eclipse formatter
+ Using https://github.com/diffplug/spotless/tree/master/plugin-maven for import order
+ Use in combination to rewrite code and imports, then checkstyle
+
+ mvn formatter:format spotless:apply process-sources
+ -->
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>2.8.1</version>
+ <configuration>
+ <configFile>${project.basedir}/onap-java-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/
+ use mvn formatter:format to rewrite source files
+ use mvn formatter:validate to validate source files -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>1.18.0</version>
+ <configuration>
+ <java>
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven
+ use mvn spotless:apply to rewrite source files
+ use mvn spotless:check to validate source files -->
+ </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
</dependency>
</dependencies>
</plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>sonar-maven-plugin</artifactId>
- <version>3.3</version>
- </plugin>
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
</plugin>
- <plugin>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <version>0.7.9</version>
- <configuration>
- <dumpOnExit>true</dumpOnExit>
- </configuration>
- <executions>
- <execution>
- <id>jacoco-initialize-unit-tests</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- <configuration>
- <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
- <!-- <append>true</append> -->
- </configuration>
- </execution>
- <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}/coverage-reports/jacoco.exec</dataFile>
- <!-- Sets the output directory for the code coverage report. -->
- <outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>default-check</id>
- <goals>
- <goal>check</goal>
- </goals>
- <configuration>
- <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
- <rules>
- <!-- implementation is needed only for Maven 2 -->
- <rule implementation="org.jacoco.maven.RuleConfiguration">
- <element>BUNDLE</element>
- <limits>
- <limit implementation="org.jacoco.report.check.Limit">
- <counter>LINE</counter>
- <value>COVEREDRATIO</value>
- <minimum>${jacoco.line.coverage.limit}</minimum>
- </limit>
- </limits>
- </rule>
- </rules>
- </configuration>
- </execution>
- </executions>
- </plugin>
<!-- Used for unit tests -->
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.12.4</version>
- <configuration>
- <argLine>-noverify ${argLine}</argLine>
- <runOrder>alphabetical</runOrder>
- </configuration>
- </plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <!-- <argLine>-noverify ${argLine}</argLine> -->
+ <runOrder>alphabetical</runOrder>
+ </configuration>
+ </plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
- <!--
+ <!--
Issue with the spring 1.5.15.RELEASE plugin is causing build errors
due to the fact that the plugin 1.5.15.RELEASE was built using maven 3.5 while
the current build version being used by our jenkins is 3.3.9
-->
- <version>1.5.12.RELEASE</version>
+ <version>1.5.21.RELEASE</version>
<configuration>
<mainClass>${start-class}</mainClass>
<layout>ZIP</layout>
</repositories>
<!-- End of ONAP Specific Repositories -->
</project>
-