| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ~ ============LICENSE_START======================================================= |
| ~ PNF-REGISTRATION-HANDLER |
| ~ ================================================================================ |
| ~ Copyright (C) 2018-2019 NOKIA 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.dcaegen2.services</groupId> |
| <artifactId>prh</artifactId> |
| <version>1.2.1-SNAPSHOT</version> |
| </parent> |
| |
| <groupId>org.onap.dcaegen2.services.prh</groupId> |
| <artifactId>prh-app-server</artifactId> |
| <packaging>jar</packaging> |
| |
| <properties> |
| <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format> |
| |
| <prh.main.class>org.onap.dcaegen2.services.prh.MainApp</prh.main.class> |
| <dependency.dir.name>libs</dependency.dir.name> |
| <dependency.dir.location>${project.build.directory}/${dependency.dir.name}</dependency.dir.location> |
| <docker.artifact.dir>/opt</docker.artifact.dir> |
| <docker.image.name>onap/${project.groupId}.${project.artifactId}</docker.image.name> |
| </properties> |
| |
| <build> |
| <resources> |
| <resource> |
| <directory>src/main/resources</directory> |
| </resource> |
| </resources> |
| |
| <plugins> |
| <plugin> |
| <groupId>pl.project13.maven</groupId> |
| <artifactId>git-commit-id-plugin</artifactId> |
| <configuration> |
| <dateFormat>${maven.build.timestamp.format}</dateFormat> |
| <generateGitPropertiesFile>true</generateGitPropertiesFile> |
| <format>json</format> |
| <generateGitPropertiesFilename>${project.build.outputDirectory}/git_info.json</generateGitPropertiesFilename> |
| </configuration> |
| <executions> |
| <execution> |
| <id>get-git-info</id> |
| <goals> |
| <goal>revision</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <configuration> |
| <archive> |
| <manifest> |
| <addClasspath>true</addClasspath> |
| <classpathPrefix>./${dependency.dir.name}/</classpathPrefix> |
| <useUniqueVersions>false</useUniqueVersions> |
| <mainClass>${prh.main.class}</mainClass> |
| <addDefaultImplementationEntries>true</addDefaultImplementationEntries> |
| </manifest> |
| <manifestEntries> |
| <Build-Time>${maven.build.timestamp}</Build-Time> |
| </manifestEntries> |
| </archive> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <configuration> |
| <outputDirectory>${dependency.dir.location}</outputDirectory> |
| <includeScope>runtime</includeScope> |
| <silent>true</silent> |
| </configuration> |
| <executions> |
| <execution> |
| <id>copy-external-dependencies</id> |
| <phase>package</phase> |
| <goals> |
| <goal>copy-dependencies</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>com.spotify</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <configuration> |
| <serverId>${onap.nexus.dockerregistry.daily}</serverId> |
| <imageName>${docker.image.name}</imageName> |
| <imageTags> |
| <tag>latest</tag> |
| </imageTags> |
| <baseImage>openjdk:${java.version}-jre-alpine</baseImage> |
| <workdir>${docker.artifact.dir}</workdir> |
| <resources> |
| <resource> |
| <directory>${dependency.dir.location}</directory> |
| <targetPath>${dependency.dir.name}</targetPath> |
| </resource> |
| <resource> |
| <directory>${project.build.directory}</directory> |
| <include>${project.build.finalName}.jar</include> |
| </resource> |
| </resources> |
| <exposes> |
| <expose>8100</expose> |
| <expose>8433</expose> |
| </exposes> |
| <entryPoint>["java", "-jar", "${project.build.finalName}.jar"]</entryPoint> |
| </configuration> |
| <executions> |
| <execution> |
| <id>build-image</id> |
| <phase>package</phase> |
| <goals> |
| <goal>build</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>tag-and-push-image-latest</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>tag</goal> |
| </goals> |
| <configuration> |
| <image>${docker.image.name}:latest</image> |
| <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName> |
| <pushImage>true</pushImage> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tag-and-push-image-with-version</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>tag</goal> |
| </goals> |
| <configuration> |
| <image>${docker.image.name}:latest</image> |
| <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName> |
| <pushImage>true</pushImage> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tag-and-push-image-with-version-and-date</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>tag</goal> |
| </goals> |
| <configuration> |
| <image>${docker.image.name}:latest</image> |
| <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName> |
| <pushImage>true</pushImage> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.onap.dcaegen2.services.prh</groupId> |
| <artifactId>prh-commons</artifactId> |
| <version>1.2.1-SNAPSHOT</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId> |
| <artifactId>cbs-client</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId> |
| <artifactId>aai-client</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId> |
| <artifactId>dmaap-client</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId> |
| <artifactId>common-dependency</artifactId> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-web</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-webflux</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>io.springfox</groupId> |
| <artifactId>springfox-swagger2</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>io.springfox</groupId> |
| <artifactId>springfox-swagger-ui</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>io.projectreactor</groupId> |
| <artifactId>reactor-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tomcat.embed</groupId> |
| <artifactId>tomcat-embed-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tomcat.embed</groupId> |
| <artifactId>tomcat-embed-el</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.tomcat.embed</groupId> |
| <artifactId>tomcat-embed-websocket</artifactId> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-engine</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.testng</groupId> |
| <artifactId>testng</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-test</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>io.projectreactor</groupId> |
| <artifactId>reactor-test</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.glassfish.jersey.connectors</groupId> |
| <artifactId>jersey-apache-connector</artifactId> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| </project> |