blob: 5bdc02258ff811cf18f011092a9ecc3529ab1b49 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
* ============LICENSE_START====================================================
* org.onap.aaf
* ===========================================================================
* Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
* ===========================================================================
* 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.aaf.authz</groupId>
<artifactId>parent</artifactId>
<version>2.1.2-SNAPSHOT</version>
</parent>
<artifactId>authparent</artifactId>
<name>AAF Auth Parent</name>
<packaging>pom</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.ext_root_dir>/opt/app/osaaf</project.ext_root_dir>
<!-- SONAR -->
<jacoco.version>0.7.7.201606060606</jacoco.version>
<sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<!-- Default Sonar configuration -->
<sonar.jacoco.reportPaths>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPaths>
<sonar.jacoco.itReportPaths>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPaths>
<!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
<sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
<nexusproxy>https://nexus.onap.org</nexusproxy>
<snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
<releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
<stagingNexusPath>/content/repositories/staging/</stagingNexusPath>
<sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>
<!-- We have to up these versions from the original to avoid Security Errors -->
<project.nettyVersion>4.1.22.Final</project.nettyVersion>
<project.project.ext_root_dir>/opt/app/osaaf</project.project.ext_root_dir>
</properties>
<developers>
<developer>
<name>Jonathan Gathman</name>
<email>jonathan.gathman@att.com</email>
<organization>ATT</organization>
<roles>
<role>Architect</role>
<role>Lead Developer</role>
</roles>
</developer>
<developer>
<name>Gabe Maurer</name>
<email>gabe.maurer@att.com</email>
<organization>ATT</organization>
<roles>
<role>Developer</role>
</roles>
</developer>
<developer>
<name>Ian Howell</name>
<email>ian.howell@att.com</email>
<organization>ATT</organization>
<roles>
<role>Developer</role>
</roles>
</developer>
<developer>
<name>Sai Gandham</name>
<email>sai.gandham@att.com</email>
<organization>ATT</organization>
<roles>
<role>Developer</role>
</roles>
</developer>
</developers>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.6</version>
<configuration>
<skip>false</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.17</version>
<configuration>
<skipTests>false</skipTests>
<includes>
<include>**/JU*.java</include>
</includes>
<excludes>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.17</version>
<configuration>
<skipTests>false</skipTests>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Builds O/S Command line ready jars and scripts, ready to run/zip -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>appassembler-maven-plugin</artifactId>
<version>1.10</version>
<executions>
<execution>
<goals>
<goal>assemble</goal>
</goals>
<phase>install</phase>
</execution>
</executions>
<configuration>
<programs/> <!-- this set in projects that have programs -->
<assembleDirectory>../aaf_${project.version}</assembleDirectory>
<copyConfigurationDirectory>true</copyConfigurationDirectory>
<configurationDirectory>etc</configurationDirectory>
<repositoryName>lib</repositoryName>
<includeConfigurationDirectoryInClasspath>false</includeConfigurationDirectoryInClasspath>
<repositoryLayout>flat</repositoryLayout>
</configuration>
</plugin>
<!-- Build Docker Image -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>onap/osaaf/${project.artifactId}</imageName>
<!-- <dockerDirectory>${dockerLocation}</dockerDirectory> -->
<dockerDirectory>${basedir}/src/main/resources/docker</dockerDirectory>
<imageTags>
<imageTag>latest</imageTag>
<imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
<imageTag>${project.docker.latesttag.version}</imageTag>
</imageTags>
<forceTags>true</forceTags>
<!-- <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}/opt</directory>
<filtering>true</filtering> <includes> <include>**/**</include> </includes>
</resource> </resources> -->
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}/opt</directory>
<include>${project.build.finalName}.jar</include>
</resource>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>**/**</include>
</resource>
</resources>
</configuration>
<executions>
<execution>
<id>build-image</id>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
<configuration>
<skipDockerBuild>${skip.docker.build}</skipDockerBuild>
</configuration>
</execution>
<execution>
<id>tag-image-project-version</id>
<phase>package</phase>
<goals>
<goal>tag</goal>
</goals>
<configuration>
<image>onap/osaaf/${project.artifactId}</image>
<newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</newName>
<skipDockerTag>${skip.docker.push}</skipDockerTag>
</configuration>
</execution>
<execution>
<id>tag-image-latest</id>
<phase>package</phase>
<goals>
<goal>tag</goal>
</goals>
<configuration>
<image>onap/aaf/authz-service</image>
<newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</newName>
<skipDockerTag>${skip.docker.push}</skipDockerTag>
</configuration>
</execution>
<execution>
<id>push-image-latest</id>
<phase>deploy</phase>
<goals>
<goal>push</goal>
</goals>
<configuration>
<imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</imageName>
<skipDockerPush>${skip.docker.push}</skipDockerPush>
</configuration>
</execution>
<execution>
<id>push-image</id>
<phase>deploy</phase>
<goals>
<goal>push</goal>
</goals>
<configuration>
<imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</imageName>
<skipDockerPush>${skip.docker.push}</skipDockerPush>
</configuration>
</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>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<configuration>
<dumpOnExit>true</dumpOnExit>
<includes>
<include>org.onap.aaf.*</include>
</includes>
</configuration>
<executions>
<execution>
<id>pre-unit-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
<!-- <append>true</append> -->
</configuration>
</execution>
<execution>
<id>pre-integration-test</id>
<phase>pre-integration-test</phase>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
<!-- <append>true</append> -->
</configuration>
</execution>
<execution>
<goals>
<goal>merge</goal>
</goals>
<phase>post-integration-test</phase>
<configuration>
<fileSets>
<fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
<directory>${project.build.directory}/coverage-reports</directory>
<includes>
<include>*.exec</include>
</includes>
</fileSet>
</fileSets>
<destFile>${project.build.directory}/jacoco-dev.exec</destFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<modules>
<!-- <module>auth-client</module> complile manually with mvn -N independently -->
<module>auth-core</module>
<module>auth-cass</module>
<module>auth-deforg</module>
<module>auth-service</module>
<module>auth-cmd</module>
<module>auth-batch</module>
<module>auth-gui</module>
<module>auth-locate</module>
<module>auth-oauth</module>
<module>auth-certman</module>
<module>auth-fs</module>
<module>auth-hello</module>
</modules>
</project>