1 <?xml version="1.0" encoding="UTF-8"?>
3 ~ ============LICENSE_START=======================================================
5 ~ ================================================================================
6 ~ Copyright (C) 2020 Nordix Foundation. All rights reserved.
7 ~ ================================================================================
8 ~ Licensed under the Apache License, Version 2.0 (the "License");
9 ~ you may not use this file except in compliance with the License.
10 ~ You may obtain a copy of the License at
12 ~ http://www.apache.org/licenses/LICENSE-2.0
14 ~ Unless required by applicable law or agreed to in writing, software
15 ~ distributed under the License is distributed on an "AS IS" BASIS,
16 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 ~ See the License for the specific language governing permissions and
18 ~ limitations under the License.
19 ~ ============LICENSE_END=======================================================
23 <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">
24 <modelVersion>4.0.0</modelVersion>
26 <groupId>org.onap.ccsdk.parent</groupId>
27 <artifactId>spring-boot-starter-parent</artifactId>
28 <version>2.1.1</version>
31 <groupId>org.onap.ccsdk.oran</groupId>
32 <artifactId>a1-policy-management-service</artifactId>
33 <version>1.1.2-SNAPSHOT</version>
34 <name>ccsdk-oran :: ${project.artifactId}</name>
36 <java.version.source>11</java.version.source>
37 <java.version.target>11</java.version.target>
38 <springfox.version>3.0.0</springfox.version>
39 <!-- Do not change to version 3.0.0! Will break the generated json. -->
40 <immutable.version>2.8.8</immutable.version>
41 <sdk.version>1.1.6</sdk.version>
42 <json.version>20200518</json.version>
43 <formatter-maven-plugin.version>2.13.0</formatter-maven-plugin.version>
44 <spotless-maven-plugin.version>2.5.0</spotless-maven-plugin.version>
45 <commons-io.version>2.5</commons-io.version>
46 <docker-maven-plugin>0.30.0</docker-maven-plugin>
47 <surefire-maven-plugin.version>3.0.0-M5</surefire-maven-plugin.version>
48 <!-- Version must be higher than version 2.19.1 that is defined in the parent pom for JUnit 5 tests to be run. Do not remove! -->
49 <jacoco-maven-plugin.version>0.8.6</jacoco-maven-plugin.version>
50 <swagger-codegen-maven-plugin.version>3.0.11</swagger-codegen-maven-plugin.version>
51 <exec.skip>true</exec.skip>
52 <ccsdk.project.version>${project.version}</ccsdk.project.version>
56 <groupId>org.springdoc</groupId>
57 <artifactId>springdoc-openapi-ui</artifactId>
58 <version>1.5.2</version>
61 <groupId>org.springframework.boot</groupId>
62 <artifactId>spring-boot</artifactId>
65 <groupId>org.springframework</groupId>
66 <artifactId>spring-beans</artifactId>
69 <groupId>org.springframework</groupId>
70 <artifactId>spring-context</artifactId>
73 <groupId>org.springframework.boot</groupId>
74 <artifactId>spring-boot-autoconfigure</artifactId>
77 <groupId>org.springframework</groupId>
78 <artifactId>spring-web</artifactId>
81 <groupId>org.springframework</groupId>
82 <artifactId>spring-webmvc</artifactId>
85 <groupId>org.springframework</groupId>
86 <artifactId>spring-webflux</artifactId>
89 <groupId>io.springfox</groupId>
90 <artifactId>springfox-spring-web</artifactId>
91 <version>${springfox.version}</version>
94 <groupId>io.springfox</groupId>
95 <artifactId>springfox-spi</artifactId>
96 <version>${springfox.version}</version>
99 <groupId>io.springfox</groupId>
100 <artifactId>springfox-core</artifactId>
101 <version>${springfox.version}</version>
104 <groupId>org.aspectj</groupId>
105 <artifactId>aspectjweaver</artifactId>
108 <groupId>com.fasterxml.jackson.core</groupId>
109 <artifactId>jackson-databind</artifactId>
112 <groupId>org.apache.tomcat.embed</groupId>
113 <artifactId>tomcat-embed-core</artifactId>
116 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
117 <artifactId>cbs-client</artifactId>
118 <version>${sdk.version}</version>
121 <groupId>javax.validation</groupId>
122 <artifactId>validation-api</artifactId>
125 <groupId>com.google.guava</groupId>
126 <artifactId>guava</artifactId>
129 <groupId>org.immutables</groupId>
130 <artifactId>value</artifactId>
131 <version>${immutable.version}</version>
132 <scope>provided</scope>
135 <groupId>org.immutables</groupId>
136 <artifactId>gson</artifactId>
137 <version>${immutable.version}</version>
140 <groupId>org.json</groupId>
141 <artifactId>json</artifactId>
142 <version>${json.version}</version>
145 <groupId>org.projectlombok</groupId>
146 <artifactId>lombok</artifactId>
147 <scope>provided</scope>
149 <!-- Actuator dependencies -->
151 <groupId>org.springframework.boot</groupId>
152 <artifactId>spring-boot-starter-actuator</artifactId>
153 <scope>runtime</scope>
155 <!--REQUIRED TO GENERATE DOCUMENTATION -->
157 <groupId>io.springfox</groupId>
158 <artifactId>springfox-swagger2</artifactId>
159 <version>${springfox.version}</version>
162 <groupId>io.springfox</groupId>
163 <artifactId>springfox-swagger-ui</artifactId>
164 <version>${springfox.version}</version>
165 <scope>runtime</scope>
167 <!-- For development help -->
169 <groupId>org.springframework.boot</groupId>
170 <artifactId>spring-boot-devtools</artifactId>
171 <optional>true</optional>
172 <scope>runtime</scope>
175 <groupId>org.springframework.boot</groupId>
176 <artifactId>spring-boot-configuration-processor</artifactId>
177 <optional>true</optional>
178 <scope>runtime</scope>
182 <groupId>org.springframework.boot</groupId>
183 <artifactId>spring-boot-test</artifactId>
187 <groupId>org.springframework.boot</groupId>
188 <artifactId>spring-boot-starter-test</artifactId>
192 <groupId>org.awaitility</groupId>
193 <artifactId>awaitility</artifactId>
197 <groupId>io.projectreactor</groupId>
198 <artifactId>reactor-test</artifactId>
202 <groupId>org.junit.jupiter</groupId>
203 <artifactId>junit-jupiter-engine</artifactId>
207 <groupId>org.mockito</groupId>
208 <artifactId>mockito-junit-jupiter</artifactId>
212 <groupId>org.mockito</groupId>
213 <artifactId>mockito-core</artifactId>
217 <groupId>com.squareup.okhttp3</groupId>
218 <artifactId>mockwebserver</artifactId>
222 <groupId>commons-io</groupId>
223 <artifactId>commons-io</artifactId>
224 <version>${commons-io.version}</version>
231 <groupId>org.codehaus.groovy.maven</groupId>
232 <artifactId>gmaven-plugin</artifactId>
235 <phase>validate</phase>
240 <source>${basedir}/TagVersion.groovy</source>
246 <groupId>org.springframework.boot</groupId>
247 <artifactId>spring-boot-maven-plugin</artifactId>
250 <groupId>net.revelc.code.formatter</groupId>
251 <artifactId>formatter-maven-plugin</artifactId>
252 <version>${formatter-maven-plugin.version}</version>
254 <lineEnding>LF</lineEnding>
255 <configFile>${project.basedir}/eclipse-formatter.xml</configFile>
257 <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
258 spotless:apply process-sources -->
261 <groupId>com.diffplug.spotless</groupId>
262 <artifactId>spotless-maven-plugin</artifactId>
263 <version>${spotless-maven-plugin.version}</version>
265 <lineEndings>UNIX</lineEndings>
267 <removeUnusedImports/>
269 <order>com,java,javax,org</order>
273 <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
274 mvn spotless:apply to rewrite source files use mvn spotless:check to validate
278 <groupId>org.apache.maven.plugins</groupId>
279 <artifactId>maven-surefire-plugin</artifactId>
280 <version>${surefire-maven-plugin.version}</version>
282 <skipTests>false</skipTests>
286 <artifactId>maven-failsafe-plugin</artifactId>
289 <groupId>org.codehaus.mojo</groupId>
290 <artifactId>build-helper-maven-plugin</artifactId>
294 <phase>generate-sources</phase>
296 <goal>add-source</goal>
300 <source>${project.build.directory}/generated-sources/annotations/</source>
307 <groupId>org.jacoco</groupId>
308 <artifactId>jacoco-maven-plugin</artifactId>
309 <version>${jacoco-maven-plugin.version}</version>
312 <id>default-prepare-agent</id>
314 <goal>prepare-agent</goal>
318 <id>default-report</id>
319 <phase>prepare-package</phase>
327 <groupId>io.swagger.codegen.v3</groupId>
328 <artifactId>swagger-codegen-maven-plugin</artifactId>
329 <version>${swagger-codegen-maven-plugin.version}</version>
334 <goal>generate</goal>
337 <inputSpec>${project.basedir}/api/pms-api.json</inputSpec>
338 <language>openapi-yaml</language>
339 <output>${project.basedir}/api</output>
341 <outputFile>pms-api.yaml</outputFile>
348 <artifactId>maven-resources-plugin</artifactId>
351 <id>copy-resource-one</id>
352 <phase>install</phase>
354 <goal>copy-resources</goal>
357 <outputDirectory>${project.basedir}/../docs/offeredapis/swagger</outputDirectory>
360 <directory>${project.basedir}/api</directory>
362 <include>pms-api.*</include>
371 <groupId>io.fabric8</groupId>
372 <artifactId>docker-maven-plugin</artifactId>
373 <version>${docker-maven-plugin}</version>
374 <inherited>false</inherited>
377 <id>generate-policy-management-service-image</id>
378 <phase>package</phase>
385 <name>onap/ccsdk-oran-a1policymanagementservice:${project.version}</name>
387 <cleanup>try</cleanup>
388 <contextDir>${basedir}</contextDir>
389 <dockerFile>Dockerfile</dockerFile>
391 <JAR>${project.build.finalName}.jar</JAR>
394 <tag>${project.version}</tag>
402 <id>push-policy-management-service-image</id>
410 <name>onap/ccsdk-oran-a1policymanagementservice:${project.version}</name>
412 <contextDir>${basedir}</contextDir>
413 <dockerFile>Dockerfile</dockerFile>
415 <JAR>${project.build.finalName}.jar</JAR>
418 <tag>${project.docker.latestminortag.version}</tag>
419 <tag>${project.docker.latestfulltag.version}</tag>
420 <tag>${project.docker.latesttagtimestamp.version}</tag>