1 <?xml version="1.0" encoding="UTF-8"?>
\r
3 * ========================LICENSE_START=================================
\r
6 * Copyright (C) 2020 Nordix Foundation
\r
8 * Licensed under the Apache License, Version 2.0 (the "License");
\r
9 * you may not use this file except in compliance with the License.
\r
10 * You may obtain a copy of the License at
\r
12 * http://www.apache.org/licenses/LICENSE-2.0
\r
14 * Unless required by applicable law or agreed to in writing, software
\r
15 * distributed under the License is distributed on an "AS IS" BASIS,
\r
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
17 * See the License for the specific language governing permissions and
\r
18 * limitations under the License.
\r
19 * ========================LICENSE_END===================================
\r
21 <project xmlns="http://maven.apache.org/POM/4.0.0"
\r
22 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
\r
23 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
\r
24 <modelVersion>4.0.0</modelVersion>
\r
27 <groupId>org.springframework.boot</groupId>
\r
28 <artifactId>spring-boot-starter-parent</artifactId>
\r
29 <version>2.3.4.RELEASE</version>
\r
32 <groupId>org.o-ran-sc.nonrtric</groupId>
\r
33 <artifactId>r-app-catalogue</artifactId>
\r
34 <version>1.1.0-SNAPSHOT</version>
\r
37 <name>The Apache Software License, Version 2.0</name>
\r
38 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
\r
42 <java.version>11</java.version>
\r
43 <swagger-annotations.version>1.5.22</swagger-annotations.version>
\r
44 <springfox.version>2.9.2</springfox.version>
\r
45 <jackson-databind-nullable.version>0.2.1</jackson-databind-nullable.version>
\r
46 <openapi-generator-maven-plugin.version>4.3.1</openapi-generator-maven-plugin.version>
\r
47 <swagger-codegen-maven-plugin.version>3.0.11</swagger-codegen-maven-plugin.version>
\r
48 <formatter-maven-plugin.version>2.12.2</formatter-maven-plugin.version>
\r
49 <spotless-maven-plugin.version>1.24.3</spotless-maven-plugin.version>
\r
50 <jacoco-maven-plugin.version>0.8.6</jacoco-maven-plugin.version>
\r
51 <docker-maven-plugin.version>0.30.0</docker-maven-plugin.version>
\r
56 <groupId>io.swagger</groupId>
\r
57 <artifactId>swagger-annotations</artifactId>
\r
58 <version>${swagger-annotations.version}</version>
\r
61 <groupId>com.fasterxml.jackson.core</groupId>
\r
62 <artifactId>jackson-annotations</artifactId>
\r
65 <groupId>org.springframework</groupId>
\r
66 <artifactId>spring-beans</artifactId>
\r
69 <groupId>org.springframework.boot</groupId>
\r
70 <artifactId>spring-boot-autoconfigure</artifactId>
\r
73 <groupId>org.springframework</groupId>
\r
74 <artifactId>spring-web</artifactId>
\r
77 <groupId>org.springframework.boot</groupId>
\r
78 <artifactId>spring-boot</artifactId>
\r
81 <groupId>org.springframework</groupId>
\r
82 <artifactId>spring-webmvc</artifactId>
\r
85 <groupId>org.springframework</groupId>
\r
86 <artifactId>spring-context</artifactId>
\r
89 <groupId>io.springfox</groupId>
\r
90 <artifactId>springfox-swagger2</artifactId>
\r
91 <version>${springfox.version}</version>
\r
94 <groupId>io.springfox</groupId>
\r
95 <artifactId>springfox-core</artifactId>
\r
96 <version>${springfox.version}</version>
\r
99 <groupId>io.springfox</groupId>
\r
100 <artifactId>springfox-spring-web</artifactId>
\r
101 <version>${springfox.version}</version>
\r
104 <groupId>io.springfox</groupId>
\r
105 <artifactId>springfox-spi</artifactId>
\r
106 <version>${springfox.version}</version>
\r
109 <groupId>org.assertj</groupId>
\r
110 <artifactId>assertj-core</artifactId>
\r
113 <groupId>org.apache.tomcat.embed</groupId>
\r
114 <artifactId>tomcat-embed-core</artifactId>
\r
117 <groupId>org.openapitools</groupId>
\r
118 <artifactId>jackson-databind-nullable</artifactId>
\r
119 <version>${jackson-databind-nullable.version}</version>
\r
122 <groupId>javax.validation</groupId>
\r
123 <artifactId>validation-api</artifactId>
\r
126 <groupId>com.fasterxml.jackson.core</groupId>
\r
127 <artifactId>jackson-databind</artifactId>
\r
130 <groupId>org.yaml</groupId>
\r
131 <artifactId>snakeyaml</artifactId>
\r
132 <scope>runtime</scope>
\r
136 <groupId>org.springframework</groupId>
\r
137 <artifactId>spring-test</artifactId>
\r
138 <scope>test</scope>
\r
141 <groupId>org.junit.jupiter</groupId>
\r
142 <artifactId>junit-jupiter-api</artifactId>
\r
143 <scope>test</scope>
\r
146 <groupId>org.mockito</groupId>
\r
147 <artifactId>mockito-junit-jupiter</artifactId>
\r
148 <scope>test</scope>
\r
151 <groupId>org.mockito</groupId>
\r
152 <artifactId>mockito-core</artifactId>
\r
153 <scope>test</scope>
\r
156 <groupId>org.junit.jupiter</groupId>
\r
157 <artifactId>junit-jupiter-engine</artifactId>
\r
158 <scope>test</scope>
\r
161 <groupId>org.springframework.boot</groupId>
\r
162 <artifactId>spring-boot-starter-test</artifactId>
\r
163 <scope>test</scope>
\r
166 <groupId>org.apache.httpcomponents</groupId>
\r
167 <artifactId>httpclient</artifactId>
\r
168 <scope>test</scope>
\r
176 <groupId>org.springframework.boot</groupId>
\r
177 <artifactId>spring-boot-maven-plugin</artifactId>
\r
180 <groupId>org.openapitools</groupId>
\r
181 <artifactId>openapi-generator-maven-plugin</artifactId>
\r
182 <version>${openapi-generator-maven-plugin.version}</version>
\r
186 <goal>generate</goal>
\r
189 <inputSpec>${project.basedir}/api/rac-api.json</inputSpec>
\r
190 <generatorName>spring</generatorName>
\r
191 <apiPackage>org.oransc.rappcatalogue.api</apiPackage>
\r
192 <modelPackage>org.oransc.rappcatalogue.model</modelPackage>
\r
193 <invokerPackage>org.oransc.rappcatalogue</invokerPackage>
\r
195 <delegatePattern>true</delegatePattern>
\r
196 <unhandledException>true</unhandledException>
\r
203 <groupId>io.swagger.codegen.v3</groupId>
\r
204 <artifactId>swagger-codegen-maven-plugin</artifactId>
\r
205 <version>${swagger-codegen-maven-plugin.version}</version>
\r
209 <goal>generate</goal>
\r
212 <inputSpec>${project.basedir}/api/rac-api.json</inputSpec>
\r
213 <language>openapi-yaml</language>
\r
214 <output>${project.basedir}/api/</output>
\r
216 <outputFile>rac-api.yaml</outputFile>
\r
223 <groupId>net.revelc.code.formatter</groupId>
\r
224 <artifactId>formatter-maven-plugin</artifactId>
\r
225 <version>${formatter-maven-plugin.version}</version>
\r
227 <configFile>${project.basedir}/eclipse-formatter.xml</configFile>
\r
229 <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
\r
230 spotless:apply process-sources -->
\r
233 <groupId>com.diffplug.spotless</groupId>
\r
234 <artifactId>spotless-maven-plugin</artifactId>
\r
235 <version>${spotless-maven-plugin.version}</version>
\r
238 <removeUnusedImports />
\r
240 <order>com,java,javax,org</order>
\r
244 <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
\r
245 mvn spotless:apply to rewrite source files use mvn spotless:check to validate
\r
249 <groupId>org.jacoco</groupId>
\r
250 <artifactId>jacoco-maven-plugin</artifactId>
\r
251 <version>${jacoco-maven-plugin.version}</version>
\r
254 <id>default-prepare-agent</id>
\r
256 <goal>prepare-agent</goal>
\r
260 <id>default-report</id>
\r
261 <phase>prepare-package</phase>
\r
263 <goal>report</goal>
\r
269 <groupId>io.fabric8</groupId>
\r
270 <artifactId>docker-maven-plugin</artifactId>
\r
271 <version>${docker-maven-plugin.version}</version>
\r
272 <inherited>false</inherited>
\r
275 <id>generate-r-app-catalogue-image</id>
\r
276 <phase>package</phase>
\r
281 <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
\r
284 <name>o-ran-sc/nonrtric-r-app-catalogue:${project.version}</name>
\r
286 <cleanup>try</cleanup>
\r
287 <contextDir>${basedir}</contextDir>
\r
288 <dockerFile>Dockerfile</dockerFile>
\r
290 <JAR>${project.build.finalName}.jar</JAR>
\r
293 <tag>${project.version}</tag>
\r
301 <id>push-r-app-catalogue-image</id>
\r
307 <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
\r
308 <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
\r
311 <name>o-ran-sc/nonrtric-r-app-catalogue:${project.version}</name>
\r
313 <contextDir>${basedir}</contextDir>
\r
314 <dockerFile>Dockerfile</dockerFile>
\r
316 <JAR>${project.build.finalName}.jar</JAR>
\r
319 <tag>${project.version}</tag>
\r