<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.aai</groupId> <artifactId>sparky-be</artifactId> <version>2.0.1</version> </parent> <groupId>org.onap.aai.sparky-be</groupId> <artifactId>sparkybe-onap-application</artifactId> <version>2.0.1</version> <packaging>jar</packaging> <properties> <java.version>1.11</java.version> <frontEndGroupdId>org.onap.aai</frontEndGroupdId> <frontEndArtifactId>sparky-fe</frontEndArtifactId> <frontEndVersion>2.0.0</frontEndVersion> <serverPort>9517</serverPort> <sslport>8000</sslport> <nexusproxy>https://nexus.onap.org</nexusproxy> <camel-spring-boot.version>2.21.1</camel-spring-boot.version> <config-home>${basedir}/</config-home> <version.aai-schema>1.6.6</version.aai-schema> <sitePath>/content/sites/site/org/onap/aai/sparky-be/${project.artifactId}/${project.version}</sitePath> <nexusproxy>https://nexus.onap.org</nexusproxy> <spring.boot.version>1.5.21.RELEASE</spring.boot.version> <shemaUnpackVersion>onap</shemaUnpackVersion> <!-- docker related properties --> <docker.image.name>sparky-be</docker.image.name> <docker.fabric.version>0.28.0</docker.fabric.version> <aai.docker.version>1.0.0</aai.docker.version> <aai.build.directory>${project.build.directory}/${project.artifactId}-build/ </aai.build.directory> <aai.docker.namespace>onap</aai.docker.namespace> <aai.base.image>alpine</aai.base.image> <aai.base.image.version>1.6.0</aai.base.image.version> <!-- This will be used for the docker images as the default format of maven build has issues --> <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>${spring.boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- Camel BOM --> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-spring-boot-dependencies</artifactId> <version>${camel-spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Spring dependencies --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-restlet</artifactId> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> <exclusions> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-servlet</artifactId> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <!-- Camel BOM --> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-spring-boot-dependencies</artifactId> <version>${camel-spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl --> <!-- <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> </dependency> --> <!-- Camel --> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-spring-boot-starter</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.camel/camel-restlet --> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-restlet</artifactId> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-util --> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-util</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-servlet-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.onap.aai.sparky-be</groupId> <artifactId>sparkybe-onap-service</artifactId> <version>${project.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/commons-cli/commons-cli --> <dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.2</version> </dependency> <!-- <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency> --> <!-- https://mvnrepository.com/artifact/org.apache.camel/camel-http-common --> <!-- <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-http</artifactId> <version>2.15.5</version> </dependency> <dependency> <groupId>abc.def</groupId> <artifactId>att-camel-dme2-servlet</artifactId> <version>2.15.5</version> <scope>system</scope> <systemPath>x:/222/att-camel-dme2-servlet-2.15.5.jar</systemPath> </dependency> <dependency> <groupId>abc.def</groupId> <artifactId>att-camel-static-content</artifactId> <version>2.11.2.1</version> <scope>system</scope> <systemPath>x:/222/att-camel-static-content-2.11.2.1.jar</systemPath> </dependency> --> <!-- Utility dependencies --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>26.0-jre</version> </dependency> <dependency> <groupId>org.onap.aai.logging-service</groupId> <artifactId>common-logging</artifactId> <version>1.5.0</version> </dependency> <dependency> <groupId>org.dom4j</groupId> <artifactId>dom4j</artifactId> <scope>provided</scope> <version>2.1.1</version> </dependency> <dependency> <groupId>org.eclipse.persistence</groupId> <artifactId>eclipselink</artifactId> <version>2.7.7</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.onap.aai.schema-service</groupId> <artifactId>aai-schema</artifactId> <version>${version.aai-schema}</version> </dependency> <dependency> <groupId>org.onap.aai</groupId> <artifactId>rest-client</artifactId> <version>1.3.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.restlet.jee/org.restlet.ext.servlet --> <dependency> <groupId>org.restlet.jee</groupId> <artifactId>org.restlet.ext.servlet</artifactId> <version>2.1.1</version> </dependency> <dependency> <groupId>com.openpojo</groupId> <artifactId>openpojo</artifactId> <version>0.8.6</version> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.onap.portal.sdk</groupId> <artifactId>epsdk-fw</artifactId> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>apache-log4j-extras</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency> <!-- Test dependencies --> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <version>1.10.19</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4</artifactId> <version>1.6.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-api-mockito</artifactId> <version>1.6.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-javaagent</artifactId> <version>1.6.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4-rule-agent</artifactId> <version>1.6.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-library</artifactId> <scope>test</scope> </dependency> </dependencies> <profiles> <profile> <id>docker</id> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <phase>pre-clean</phase> <id>parse-version</id> <goals> <goal>parse-version</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.groovy.maven</groupId> <artifactId>gmaven-plugin</artifactId> <version>1.0</version> <executions> <execution> <phase>pre-clean</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> <version>${docker.fabric.version}</version> <configuration> <verbose>true</verbose> <apiVersion>1.23</apiVersion> <images> <image> <name>${docker.push.registry}/${aai.docker.namespace}/${docker.image.name}:%l </name> <build> <filter>@</filter> <tags> <tag>latest</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-${maven.build.timestamp}</tag> </tags> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir> <assembly> <inline> <fileSets> <fileSet> <directory>${aai.build.directory}</directory> <outputDirectory>/${project.artifactId}</outputDirectory> </fileSet> </fileSets> </inline> </assembly> </build> </image> </images> </configuration> <executions> <execution> <id>clean-images</id> <phase>pre-clean</phase> <goals> <goal>remove</goal> </goals> <configuration> <removeAll>true</removeAll> </configuration> </execution> <execution> <id>generate-images</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> <execution> <id>push-images</id> <phase>deploy</phase> <goals> <goal>push</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> <build> <finalName>${project.artifactId}</finalName> <resources> <resource> <directory>${project.basedir}/src/main/resources</directory> </resource> <resource> <directory>${project.basedir}/config/portal/BOOT-INF/classes</directory> <filtering>true</filtering> <includes> <include>*.properties</include> </includes> </resource> </resources> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <release>11</release> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <folders> <folder> ${CONFIG_HOME}/portal/BOOT-INF/classes/ </folder> </folders> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptors> <descriptor>src/main/assembly/descriptor.xml</descriptor> </descriptors> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>copy-war-to-target</id> <phase>prepare-package</phase> <goals> <goal>unpack</goal> </goals> <configuration> <artifactItems> <artifactItem> <groupId>${frontEndGroupdId}</groupId> <artifactId>${frontEndArtifactId}</artifactId> <version>${frontEndVersion}</version> <type>war</type> <outputDirectory>${aai.build.directory}/static/services/aai/webapp/ </outputDirectory> </artifactItem> </artifactItems> </configuration> </execution> <execution> <id>unpack</id> <phase>prepare-package</phase> <goals> <goal>unpack</goal> </goals> <configuration> <artifactItems> <artifactItem> <groupId>org.onap.aai.schema-service</groupId> <artifactId>aai-schema</artifactId> <version>${version.aai-schema}</version> <type>jar</type> <includes>/${shemaUnpackVersion}/oxm/</includes> <outputDirectory>${aai.build.directory}</outputDirectory> </artifactItem> </artifactItems> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <executions> <execution> <phase/> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <configuration> <reportPlugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.17</version> <reportSets> <reportSet> <reports> <report>checkstyle</report> </reports> </reportSet> </reportSets> </plugin> </reportPlugins> </configuration> </plugin> <!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.7</version> <executions> <execution> <id>copy-docker-file</id> <phase>package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>target</outputDirectory> <overwrite>true</overwrite> <resources> <resource> <directory>${basedir}/src/main/docker</directory> <filtering>true</filtering> <includes> <include>**/*</include> </includes> </resource> <resource> <directory>${basedir}/src/main/scripts/</directory> </resource> </resources> </configuration> </execution> </executions> </plugin> --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> </plugin> <!-- license plugin --> <!-- <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <version>3.0</version> <configuration> <header>LICENSE</header> <includes> <include>src/main/java/**</include> </includes> </configuration> <executions> <execution> <goals> <goal>format</goal> </goals> <phase>process-sources</phase> </execution> </executions> </plugin> --> </plugins> </build> <distributionManagement> <repository> <id>ecomp-releases</id> <name>ECOMP Release Repository</name> <url>${nexusproxy}/content/repositories/releases/</url> </repository> <snapshotRepository> <id>ecomp-snapshots</id> <name>ECOMP Snapshot Repository</name> <url>${nexusproxy}/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement> <repositories> <repository> <id>central</id> <name>Maven 2 repository 2</name> <url>http://repo2.maven.org/maven2/</url> </repository> <repository> <id>ecomp-releases</id> <name>ECOMP Release Repository</name> <url>${nexusproxy}/content/repositories/releases/</url> </repository> <repository> <id>ecomp-staging</id> <name>ECOMP Staging Repository</name> <url>${nexusproxy}/content/repositories/staging/</url> </repository> <repository> <id>ecomp-snapshots</id> <name>ECOMP Snapshot Repository</name> <url>${nexusproxy}/content/repositories/snapshots/</url> </repository> </repositories> </project>