blob: e63b67472489ea7c4c910853a9e7443be3c25f54 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
============LICENSE_START=======================================================
org.onap.aai
================================================================================
Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
Copyright © 2017-2018 European Software Marketing Ltd.
================================================================================
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
============LICENSE_END=========================================================
-->
<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.oparent</groupId>
<artifactId>oparent</artifactId>
<version>1.1.0</version>
<relativePath />
</parent>
<groupId>org.onap.aai</groupId>
<artifactId>babel</artifactId>
<version>1.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>aai-babel</name>
<description>ONAP AAI Babel Microservice</description>
<properties>
<!-- Spring boot version -->
<spring.boot.version>1.5.15.RELEASE</spring.boot.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<docker.location>${basedir}/target</docker.location>
<aai.schema.source.folder>onap/aai_schema</aai.schema.source.folder>
<aai.schema.target.folder>${project.build.directory}/aai-schema</aai.schema.target.folder>
<!-- Dependency Versions -->
<common.logging.version>1.2.2</common.logging.version>
<sdc.tosca.version>1.4.1</sdc.tosca.version>
<commons.compress.version>1.16.1</commons.compress.version>
<javax.ws.rs.version>2.1</javax.ws.rs.version>
<mvn.jaxb2.version>0.13.2</mvn.jaxb2.version>
<aai-schema.group.id>org.onap.aai.aai-common</aai-schema.group.id>
<aai-schema.version>1.3.0-SNAPSHOT</aai-schema.version>
<apache.lang3.version>3.7</apache.lang3.version>
<aai.rest.client.version>1.2.1</aai.rest.client.version>
<sdc.distribution.client.version>1.3.0</sdc.distribution.client.version>
<xmlunit.version>1.6</xmlunit.version>
<logback.version>1.2.3</logback.version>
<guava.version>25.1-jre</guava.version>
<antrun.version>1.8</antrun.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<!-- Import dependency management from Spring Boot -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring.boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jersey</artifactId>
</dependency>
<dependency>
<groupId>org.onap.aai.logging-service</groupId>
<artifactId>common-logging</artifactId>
<version>${common.logging.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version><!--$NO-MVN-MAN-VER$-->
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>${logback.version}</version><!--$NO-MVN-MAN-VER$-->
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>${commons.compress.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${apache.lang3.version}</version>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>${javax.ws.rs.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
</dependency>
<dependency>
<groupId>org.onap.sdc.sdc-tosca</groupId>
<artifactId>sdc-tosca</artifactId>
<version>${sdc.tosca.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
<dependency>
<groupId>org.onap.aai</groupId>
<artifactId>rest-client</artifactId>
<version>${aai.rest.client.version}</version>
</dependency>
<!-- Testing -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.onap.sdc.sdc-distribution-client</groupId>
<artifactId>sdc-distribution-client</artifactId>
<version>${sdc.distribution.client.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>xmlunit</groupId>
<artifactId>xmlunit</artifactId>
<version>${xmlunit.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>babel</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<configuration>
<jvmArguments>
-DCONFIG_HOME=./appconfig-local
-DAPP_HOME=.
-Dartifactgenerator.config=./appconfig-local/artifact-generator.properties
-DKEY_STORE_PASSWORD=${KEY_STORE_PASSWORD}
</jvmArguments>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>initialize</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${aai-schema.group.id}</groupId>
<artifactId>aai-schema</artifactId>
<version>${aai-schema.version}</version>
<type>jar</type>
<includes>${aai.schema.source.folder}/aai_schema_v**.xsd</includes>
<outputDirectory>${project.build.directory}/tmp</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>${antrun.version}</version>
<executions>
<execution>
<id>Flatten XSDs</id>
<phase>initialize</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<copy todir="${aai.schema.target.folder}" flatten="true">
<fileset dir="${project.build.directory}/tmp">
<include name="**/*.xsd" />
</fileset>
</copy>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>${mvn.jaxb2.version}</version>
<executions>
<execution>
<phase>process-sources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<schemaDirectory>${aai.schema.target.folder}</schemaDirectory>
<generatePackage>org.onap.aai.babel.xml.generator.xsd</generatePackage>
<generateDirectory>${project.build.directory}/generated-sources</generateDirectory>
<schemaIncludes>
<include>aai_schema_latest.xsd</include>
</schemaIncludes>
<extension>true</extension>
<args>
<arg>-Xannotate</arg>
</args>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics-annotate</artifactId>
<version>0.6.4</version>
</plugin>
<!-- Add the dependencies with your annotations as 'plugins' below -->
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-annotate-plugin-test-annox-annotations</artifactId>
<version>1.0.0</version>
</plugin>
</plugins>
</configuration>
</plugin>
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<groupId>org.codehaus.mojo</groupId>
<version>1.5.0</version>
<executions>
<execution><!-- Run our script to get latest xsd version -->
<id>Get latest xsd version</id>
<phase>generate-sources</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<workingDirectory>${basedir}/scripts</workingDirectory>
<executable>bash</executable>
<commandlineArgs>get-latest-xsd-version.sh ${basedir}</commandlineArgs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>3.0</version>
<configuration>
<header>License.txt</header>
<includes>
<include>src/main/java/**</include>
<include>src/test/java/**</include>
<include>pom.xml</include>
</includes>
<skipExistingHeaders>true</skipExistingHeaders>
</configuration>
<executions>
<execution>
<goals>
<!-- Set goal from "check" to "format" to auto update license headers -->
<goal>check</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<reuseForks>false</reuseForks>
<forkCount>1</forkCount>
<environmentVariables>
<APP_HOME>.</APP_HOME>
<CONFIG_HOME>src/test/resources</CONFIG_HOME>
</environmentVariables>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</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>
</resource>
<resource>
<directory>${basedir}/src/main/bin/</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>client</classifier>
<includes>
<include>**/babel/service/data/*</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<classifier>client</classifier>
</configuration>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.11</version>
<configuration>
<verbose>true</verbose>
<serverId>docker-hub</serverId>
<imageName>${docker.push.registry}/onap/${project.artifactId}</imageName>
<dockerDirectory>${docker.location}</dockerDirectory>
<imageTags>
<imageTag>latest</imageTag>
</imageTags>
<forceTags>true</forceTags>
</configuration>
</plugin>
</plugins>
</build>
</project>