1 <?xml version="1.0" encoding="UTF-8"?>
3 ================================================================================
4 Copyright (c) 2020 Nokia. All rights reserved.
5 ================================================================================
6 Licensed under the Apache License, Version 2.0 (the "License"); you may not
7 use this file except in compliance with the License. You may obtain a copy
8 of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
9 by applicable law or agreed to in writing, software distributed under the
10 License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
11 OF ANY KIND, either express or implied. See the License for the specific
12 language governing permissions and limitations under the License.
13 ============LICENSE_END=========================================================
15 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
16 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
17 <modelVersion>4.0.0</modelVersion>
19 <groupId>org.onap.aaf.certservice</groupId>
20 <artifactId>aaf-certservice</artifactId>
21 <version>1.0.0-SNAPSHOT</version>
23 <artifactId>aaf-certservice-api</artifactId>
24 <version>1.0.0-SNAPSHOT</version>
25 <name>aaf-certservice-api</name>
26 <description>AAF Certification Service Api</description>
27 <packaging>jar</packaging>
30 <java.version>11</java.version>
31 <assertj-core.version>3.11.1</assertj-core.version>
32 <mockito-core.version>3.2.4</mockito-core.version>
33 <spring-core.version>5.2.3.RELEASE</spring-core.version>
34 <spring-boot-starter.version>2.2.4.RELEASE</spring-boot-starter.version>
35 <maven-javadoc-plugin.version>3.0.1</maven-javadoc-plugin.version>
36 <maven-surefire-plugin.version>3.0.0-M1</maven-surefire-plugin.version>
37 <spring-boot-starter-actuator.version>2.2.4.RELEASE</spring-boot-starter-actuator.version>
38 <spring-boot-starter-log4j2.version>2.1.5.RELEASE</spring-boot-starter-log4j2.version>
39 <springdoc-openapi-ui.version>1.2.21</springdoc-openapi-ui.version>
40 <bouncycastle.version>1.60</bouncycastle.version>
41 <docker-maven-plugin.version>0.33.0</docker-maven-plugin.version>
42 <docker.tag>${project.version}</docker.tag>
43 <springdoc-openapi-maven-plugin.apiDocsUrl>http://localhost:8080/v3/api-docs
44 </springdoc-openapi-maven-plugin.apiDocsUrl>
45 <docker-maven-plugin.image-name>onap/${project.artifactId}</docker-maven-plugin.image-name>
46 <springdoc-openapi-maven-plugin.version>0.2</springdoc-openapi-maven-plugin.version>
47 <gson.version>2.8.6</gson.version>
50 <dependencyManagement>
53 <!-- Import dependency management from Spring Boot -->
54 <groupId>org.springframework.boot</groupId>
55 <artifactId>spring-boot-dependencies</artifactId>
56 <version>${spring-boot-starter.version}</version>
61 </dependencyManagement>
65 <groupId>org.springframework.boot</groupId>
66 <artifactId>spring-boot-starter-web</artifactId>
67 <version>${spring-boot-starter.version}</version>
70 <groupId>org.springframework.boot</groupId>
71 <artifactId>spring-boot-starter-logging</artifactId>
76 <groupId>org.springframework.boot</groupId>
77 <artifactId>spring-boot-starter-log4j2</artifactId>
78 <version>${spring-boot-starter-log4j2.version}</version>
81 <groupId>org.springframework.boot</groupId>
82 <artifactId>spring-boot-starter-test</artifactId>
83 <version>${spring-boot-starter.version}</version>
87 <groupId>org.junit.vintage</groupId>
88 <artifactId>junit-vintage-engine</artifactId>
93 <groupId>org.mockito</groupId>
94 <artifactId>mockito-core</artifactId>
95 <version>${mockito-core.version}</version>
99 <groupId>org.assertj</groupId>
100 <artifactId>assertj-core</artifactId>
101 <version>${assertj-core.version}</version>
105 <groupId>org.springframework.boot</groupId>
106 <artifactId>spring-boot-starter-actuator</artifactId>
107 <version>${spring-boot-starter-actuator.version}</version>
110 <groupId>org.springdoc</groupId>
111 <artifactId>springdoc-openapi-ui</artifactId>
112 <version>${springdoc-openapi-ui.version}</version>
115 <groupId>org.bouncycastle</groupId>
116 <artifactId>bcpkix-jdk15on</artifactId>
117 <version>${bouncycastle.version}</version>
120 <groupId>org.bouncycastle</groupId>
121 <artifactId>bcprov-jdk15on</artifactId>
122 <version>${bouncycastle.version}</version>
125 <groupId>com.google.code.gson</groupId>
126 <artifactId>gson</artifactId>
127 <version>${gson.version}</version>
135 <groupId>org.springframework.boot</groupId>
136 <artifactId>spring-boot-maven-plugin</artifactId>
137 <version>${spring-boot-starter.version}</version>
140 <artifactId>maven-javadoc-plugin</artifactId>
141 <version>${maven-javadoc-plugin.version}</version>
144 <groupId>org.apache.maven.plugins</groupId>
145 <artifactId>maven-surefire-plugin</artifactId>
146 <version>${maven-surefire-plugin.version}</version>
152 <groupId>org.springframework.boot</groupId>
153 <artifactId>spring-boot-maven-plugin</artifactId>
157 <goal>repackage</goal>
161 <id>pre-integration-test</id>
167 <id>post-integration-test</id>
175 <artifactId>maven-javadoc-plugin</artifactId>
178 <verbose>false</verbose>
179 <useStandardDocletOptions>false</useStandardDocletOptions>
180 <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
187 <goal>aggregate</goal>
191 <id>attach-javadoc</id>
199 <groupId>org.springdoc</groupId>
200 <artifactId>springdoc-openapi-maven-plugin</artifactId>
201 <version>${springdoc-openapi-maven-plugin.version}</version>
204 <phase>integration-test</phase>
206 <goal>generate</goal>
211 <apiDocsUrl>${springdoc-openapi-maven-plugin.apiDocsUrl}</apiDocsUrl>
212 <outputFileName>api-docs.json</outputFileName>
213 <outputDir>${project.build.directory}</outputDir>
221 <id>docker-staging</id>
223 <docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag>
224 <docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag>
231 <activeByDefault>false</activeByDefault>
236 <groupId>io.fabric8</groupId>
237 <artifactId>docker-maven-plugin</artifactId>
238 <version>${docker-maven-plugin.version}</version>
241 <id>clean-images</id>
242 <phase>pre-clean</phase>
247 <removeAll>true</removeAll>
248 <image>${docker-maven-plugin.image-name}</image>
252 <id>generate-images</id>
253 <phase>install</phase>
258 <!-- It has to be published on nexus firstly to uncomment integration tests-->
260 <!-- <id>start</id>-->
261 <!-- <phase>pre-integration-test</phase>-->
263 <!-- <goal>start</goal>-->
267 <!-- <id>stop</id>-->
268 <!-- <phase>post-integration-test</phase>-->
270 <!-- <goal>stop</goal>-->
275 <phase>deploy</phase>
280 <image>${docker-maven-plugin.image-name}</image>
285 <apiVersion>1.23</apiVersion>
286 <registry>nexus3.onap.org:10001</registry>
289 <username>docker</username>
290 <password>docker</password>
295 <name>${docker-maven-plugin.image-name}</name>
296 <alias>cert-service</alias>
298 <dockerFile>${project.basedir}/Dockerfile</dockerFile >
300 <tag>${docker.tag}</tag>
305 <port>8080:8080</port>
308 <!-- Check for this URL to return a 200 return code .... -->
309 <url>http://localhost:8080/actuator/health</url>
322 <distributionManagement>
324 <id>ecomp-releases</id>
325 <name>AAF Release Repository</name>
326 <url>${nexusproxy}${releaseNexusPath}</url>
329 <id>ecomp-snapshots</id>
330 <name>AAF Snapshot Repository</name>
331 <url>${nexusproxy}${snapshotNexusPath}</url>
332 </snapshotRepository>
335 <url>dav:${nexusproxy}${sitePath}</url>
337 </distributionManagement>