<?xml version="1.0" encoding="UTF-8"?> | |
<!-- | |
============LICENSE_START==================================================== | |
* org.onap.aaf | |
* =========================================================================== | |
* Copyright © 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==================================================== | |
* | |
* ECOMP is a trademark and service mark of AT&T Intellectual Property. | |
* | |
--> | |
<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/maven-v4_0_0.xsd"> | |
<modelVersion>4.0.0</modelVersion> | |
<parent> | |
<groupId>org.onap.aaf.authz</groupId> | |
<artifactId>parent</artifactId> | |
<version>1.0.1-SNAPSHOT</version> | |
<relativePath>../pom.xml</relativePath> | |
</parent> | |
<artifactId>authz-service</artifactId> | |
<name>Authz Service</name> | |
<description>API for Authorization and Authentication</description> | |
<url>https://github.com/att/AAF</url> | |
<licenses> | |
<license> | |
<name>BSD License</name> | |
<url> </url> | |
</license> | |
</licenses> | |
<developers> | |
<developer> | |
<name>Jonathan Gathman</name> | |
<email></email> | |
<organization>ATT</organization> | |
<organizationUrl></organizationUrl> | |
</developer> | |
</developers> | |
<properties> | |
<maven.build.timestamp.format>yyyy.MM.dd'T'hh.mm.ss'Z'</maven.build.timestamp.format> | |
<maven.test.failure.ignore>true</maven.test.failure.ignore> | |
<project.swmVersion>1</project.swmVersion> | |
<project.innoVersion>1.0.0-SNAPSHOT</project.innoVersion> | |
<project.cadiVersion>1.0.0-SNAPSHOT</project.cadiVersion> | |
<dockerLocation>${basedir}/target/</dockerLocation> | |
<distFilesRootDirPath>opt/app/aaf/${project.artifactId}/${project.version}</distFilesRootDirPath> | |
<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.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath> | |
<sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero> | |
<sonar.projectVersion>${project.version}</sonar.projectVersion> | |
<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> | |
<docker.push.registry>localhost:5000</docker.push.registry> | |
<skip.docker.build>true</skip.docker.build> | |
<skip.docker.push>true</skip.docker.push> | |
<skip.staging.artifacts>false</skip.staging.artifacts> | |
</properties> | |
<dependencies> | |
<dependency> | |
<groupId>org.onap.aaf.authz</groupId> | |
<artifactId>authz-client</artifactId> | |
<version>${project.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.authz</groupId> | |
<artifactId>authz-cmd</artifactId> | |
<version>${project.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.authz</groupId> | |
<artifactId>authz-core</artifactId> | |
<version>${project.version}</version> | |
<exclusions> | |
<exclusion> | |
<groupId>javax.servlet</groupId> | |
<artifactId>servlet-api</artifactId> | |
</exclusion> | |
</exclusions> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.authz</groupId> | |
<artifactId>authz-cass</artifactId> | |
<version>${project.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.authz</groupId> | |
<artifactId>authz-defOrg</artifactId> | |
<version>${project.version}</version> | |
</dependency> | |
<dependency > | |
<groupId>org.onap.aaf.inno</groupId> | |
<artifactId>env</artifactId> | |
<version>${project.innoVersion}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.cadi</groupId> | |
<artifactId>cadi-core</artifactId> | |
<version>${project.cadiVersion}</version> | |
</dependency> | |
<dependency> | |
<groupId>com.att.aft</groupId> | |
<artifactId>dme2</artifactId> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.inno</groupId> | |
<artifactId>rosetta</artifactId> | |
<version>${project.innoVersion}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.onap.aaf.cadi</groupId> | |
<artifactId>cadi-aaf</artifactId> | |
<version>${project.cadiVersion}</version> | |
</dependency> | |
</dependencies> | |
<build> | |
<plugins> | |
<plugin> | |
<groupId>com.spotify</groupId> | |
<artifactId>docker-maven-plugin</artifactId> | |
<version>1.0.0</version> | |
<configuration> | |
<imageName>onap/aaf/authz-service</imageName> | |
<dockerDirectory>${dockerLocation}</dockerDirectory> | |
<serverId>docker-hub</serverId> | |
<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>/${basedir}/target/opt</directory> | |
<filtering>true</filtering> | |
<includes> | |
<include>**/*</include> | |
</includes> | |
</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-latest-timestamp</id> | |
<phase>package</phase> | |
<goals> | |
<goal>tag</goal> | |
</goals> | |
<configuration> | |
<image>onap/aaf/authz-service</image> | |
<newName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttagtimestamp.version}</newName> | |
<skipDockerTag>${skip.docker.push}</skipDockerTag> | |
</configuration> | |
</execution> | |
<execution> | |
<id>push-image-latest-timestamp</id> | |
<phase>deploy</phase> | |
<goals> | |
<goal>push</goal> | |
</goals> | |
<configuration> | |
<imageName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttagtimestamp.version}</imageName> | |
<skipDockerPush>${skip.docker.push}</skipDockerPush> | |
</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/aaf/authz-service:${project.docker.latesttag.version}</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/aaf/authz-service:${project.docker.latesttag.version}</imageName> | |
<skipDockerPush>${skip.docker.push}</skipDockerPush> | |
</configuration> | |
</execution> | |
<execution> | |
<id>tag-image</id> | |
<phase>package</phase> | |
<goals> | |
<goal>tag</goal> | |
</goals> | |
<configuration> | |
<image>onap/aaf/authz-service</image> | |
<newName>${docker.push.registry}/onap/aaf/authz-service:latest</newName> | |
<skipDockerTag>${skip.docker.push}</skipDockerTag> | |
</configuration> | |
</execution> | |
<execution> | |
<id>push-image</id> | |
<phase>deploy</phase> | |
<goals> | |
<goal>push</goal> | |
</goals> | |
<configuration> | |
<imageName>${docker.push.registry}/onap/aaf/authz-service:latest</imageName> | |
<skipDockerPush>${skip.docker.push}</skipDockerPush> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<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>${dockerLocation}</outputDirectory> | |
<overwrite>true</overwrite> | |
<resources> | |
<resource> | |
<directory>${basedir}/src/main/resources/docker</directory> | |
<filtering>true</filtering> | |
<includes> | |
<include>**/*</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
<execution> | |
<id>copy-resources-1</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/dme2reg/</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/src/main/resources/dme2reg/</directory> | |
<includes> | |
<include>**/*.txt</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
<execution> | |
<id>copy-resources-2</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/src/main/resources/etc</directory> | |
<includes> | |
<include>**/**</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
<execution> | |
<id>copy-resources-3</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/../authz-cmd/target</directory> | |
<includes> | |
<include>**/*.jar</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
<execution> | |
<id>copy-resources-4</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/../authz-cmd</directory> | |
<includes> | |
<include>**/aafcli.sh</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
<execution> | |
<id>copy-resources-5</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/src/main/config</directory> | |
<includes> | |
<include>**/**</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
<execution> | |
<id>copy-resources-6</id> | |
<phase>validate</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/data</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/../opt/app/aaf/data</directory> | |
<includes> | |
<include>**/**</include> | |
</includes> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-dependency-plugin</artifactId> | |
<version>2.10</version> | |
<executions> | |
<execution> | |
<id>copy-dependencies</id> | |
<phase>package</phase> | |
<goals> | |
<goal>copy-dependencies</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory> | |
<overWriteReleases>false</overWriteReleases> | |
<overWriteSnapshots>false</overWriteSnapshots> | |
<overWriteIfNewer>true</overWriteIfNewer> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>exec-maven-plugin</artifactId> | |
<version>1.5.0</version> | |
<configuration> | |
<executable>java</executable> | |
<arguments> | |
<argument>-DAFT_LATITUDE=33</argument> | |
<argument>-DAFT_LONGITUDE=-84</argument> | |
<argument>-DAFT_ENVIRONMENT=AFTUAT</argument> | |
<argument>-XX:NewRatio=3</argument> | |
<argument>-XX:+PrintGCTimeStamps</argument> | |
<argument>-XX:+PrintGCDetails</argument> | |
<argument>-Xloggc:gc.log</argument> | |
<argument>-classpath</argument> | |
<classpath> | |
</classpath> | |
<argument>org.onap.aaf.authz.service.AuthAPI</argument> | |
<argument>service=org.onap.aaf.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=Dev</argument> | |
</arguments> | |
</configuration> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-jar-plugin</artifactId> | |
<configuration> | |
<excludes> | |
<exclude>*.properties</exclude> | |
</excludes> | |
</configuration> | |
<version>2.3.1</version> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-javadoc-plugin</artifactId> | |
<version>2.10.4</version> | |
<configuration> | |
<failOnError>false</failOnError> | |
</configuration> | |
<executions> | |
<execution> | |
<id>attach-javadocs</id> | |
<goals> | |
<goal>jar</goal> | |
</goals> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-source-plugin</artifactId> | |
<version>2.2.1</version> | |
<executions> | |
<execution> | |
<id>attach-sources</id> | |
<goals> | |
<goal>jar-no-fork</goal> | |
</goals> | |
</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> | |
</build> | |
<distributionManagement> | |
<repository> | |
<id>ecomp-releases</id> | |
<name>AAF Release Repository</name> | |
<url>${nexusproxy}${releaseNexusPath}</url> | |
</repository> | |
<snapshotRepository> | |
<id>ecomp-snapshots</id> | |
<name>AAF Snapshot Repository</name> | |
<url>${nexusproxy}${snapshotNexusPath}</url> | |
</snapshotRepository> | |
<site> | |
<id>ecomp-site</id> | |
<url>dav:${nexusproxy}${sitePath}</url> | |
</site> | |
</distributionManagement> | |
<profiles> | |
<profile> | |
<id>docker</id> | |
<properties> | |
<skip.staging.artifacts>true</skip.staging.artifacts> | |
<skip.docker.build>false</skip.docker.build> | |
<skip.docker.tag>false</skip.docker.tag> | |
<skip.docker.push>false</skip.docker.push> | |
</properties> | |
</profile> | |
</profiles> | |
</project> |