Add ConfigurationController
[ccsdk/oran.git] / a1-policy-management / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ ============LICENSE_START=======================================================
4   ~ ONAP : ccsdk oran
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
11   ~
12   ~     http://www.apache.org/licenses/LICENSE-2.0
13   ~
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=======================================================
20   ~
21 -->
22
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>
25
26     <parent>
27         <groupId>org.onap.ccsdk.parent</groupId>
28         <artifactId>spring-boot-starter-parent</artifactId>
29         <version>2.1.0-SNAPSHOT</version>
30         <relativePath/>
31     </parent>
32
33     <groupId>org.onap.ccsdk.oran</groupId>
34     <artifactId>a1-policy-management-service</artifactId>
35     <version>1.1.0-SNAPSHOT</version>
36
37     <name>ccsdk-oran :: ${project.artifactId}</name>
38
39     <properties>
40         <java.version.source>11</java.version.source>
41         <java.version.target>11</java.version.target>
42         <springfox.version>2.9.2</springfox.version>
43         <immutable.version>2.8.2</immutable.version>
44         <sdk.version>1.1.6</sdk.version>
45         <swagger.version>2.0.0</swagger.version>
46         <json.version>20190722</json.version>
47         <commons-net.version>3.6</commons-net.version>
48         <commons-io.version>2.5</commons-io.version>
49         <maven.compile.plugin.version>3.8.0</maven.compile.plugin.version>
50         <formatter-maven-plugin.version>2.8.1</formatter-maven-plugin.version>
51         <spotless-maven-plugin.version>1.18.0</spotless-maven-plugin.version>
52         <docker-maven-plugin>0.30.0</docker-maven-plugin>
53         <version.dmaap>1.1.11</version.dmaap>
54         <javax.ws.rs-api.version>2.1.1</javax.ws.rs-api.version>
55         <surefire-maven-plugin.version>2.22.2</surefire-maven-plugin.version><!-- Version must be this for tests to be run. Do not remove! -->
56         <jacoco-maven-plugin.version>0.8.5</jacoco-maven-plugin.version>
57         <exec.skip>true</exec.skip>
58         <ccsdk.project.version>${project.version}</ccsdk.project.version>
59     </properties>
60
61     <dependencies>
62         <dependency>
63             <groupId>org.springframework.boot</groupId>
64             <artifactId>spring-boot-starter-web</artifactId>
65         </dependency>
66         <dependency>
67             <groupId>org.springframework.boot</groupId>
68             <artifactId>spring-boot-starter-thymeleaf</artifactId>
69         </dependency>
70         <dependency>
71             <groupId>org.springframework.boot</groupId>
72             <artifactId>spring-boot-starter-webflux</artifactId>
73         </dependency>
74         <dependency>
75             <groupId>org.springframework.boot</groupId>
76             <artifactId>spring-boot-starter-aop</artifactId>
77         </dependency>
78         <dependency>
79             <groupId>org.springframework.boot</groupId>
80             <artifactId>spring-boot-devtools</artifactId>
81             <optional>true</optional>
82         </dependency>
83         <dependency>
84             <groupId>org.springframework</groupId>
85             <artifactId>spring-webflux</artifactId>
86         </dependency>
87         <dependency>
88             <groupId>io.swagger.core.v3</groupId>
89             <artifactId>swagger-jaxrs2</artifactId>
90             <version>${swagger.version}</version>
91         </dependency>
92         <dependency>
93             <groupId>io.swagger.core.v3</groupId>
94             <artifactId>swagger-jaxrs2-servlet-initializer</artifactId>
95             <version>${swagger.version}</version>
96         </dependency>
97         <dependency>
98             <groupId>javax.xml.bind</groupId>
99             <artifactId>jaxb-api</artifactId>
100         </dependency>
101         <dependency>
102             <groupId>org.immutables</groupId>
103             <artifactId>value</artifactId>
104             <version>${immutable.version}</version>
105             <scope>provided</scope>
106         </dependency>
107         <dependency>
108             <groupId>org.immutables</groupId>
109             <artifactId>gson</artifactId>
110             <version>${immutable.version}</version>
111         </dependency>
112         <dependency>
113             <groupId>org.json</groupId>
114             <artifactId>json</artifactId>
115             <version>${json.version}</version>
116         </dependency>
117         <dependency>
118             <groupId>commons-net</groupId>
119             <artifactId>commons-net</artifactId>
120             <version>${commons-net.version}</version>
121         </dependency>
122         <dependency>
123             <groupId>org.springframework.boot</groupId>
124             <artifactId>spring-boot-configuration-processor</artifactId>
125             <optional>true</optional>
126         </dependency>
127         <dependency>
128             <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
129             <artifactId>cbs-client</artifactId>
130             <version>${sdk.version}</version>
131         </dependency>
132         <dependency>
133             <groupId>org.projectlombok</groupId>
134             <artifactId>lombok</artifactId>
135             <scope>provided</scope>
136         </dependency>
137         <dependency>
138             <groupId>javax.ws.rs</groupId>
139             <artifactId>javax.ws.rs-api</artifactId>
140         </dependency>
141         <!-- Actuator dependencies -->
142         <dependency>
143             <groupId>org.springframework.boot</groupId>
144             <artifactId>spring-boot-starter-actuator</artifactId>
145         </dependency>
146         <!--REQUIRED TO GENERATE DOCUMENTATION -->
147         <dependency>
148             <groupId>io.springfox</groupId>
149             <artifactId>springfox-swagger2</artifactId>
150             <version>${springfox.version}</version>
151         </dependency>
152         <dependency>
153             <groupId>io.springfox</groupId>
154             <artifactId>springfox-swagger-ui</artifactId>
155             <version>${springfox.version}</version>
156         </dependency>
157         <!-- TEST -->
158         <dependency>
159             <groupId>org.springframework.boot</groupId>
160             <artifactId>spring-boot-starter-test</artifactId>
161             <scope>test</scope>
162         </dependency>
163         <dependency>
164             <groupId>org.awaitility</groupId>
165             <artifactId>awaitility</artifactId>
166             <scope>test</scope>
167         </dependency>
168         <dependency>
169             <groupId>io.projectreactor</groupId>
170             <artifactId>reactor-test</artifactId>
171             <scope>test</scope>
172         </dependency>
173         <dependency>
174             <groupId>org.junit.jupiter</groupId>
175             <artifactId>junit-jupiter-engine</artifactId>
176             <scope>test</scope>
177         </dependency>
178         <dependency>
179             <groupId>org.mockito</groupId>
180             <artifactId>mockito-junit-jupiter</artifactId>
181             <scope>test</scope>
182         </dependency>
183         <dependency>
184             <groupId>org.mockito</groupId>
185             <artifactId>mockito-core</artifactId>
186             <scope>test</scope>
187         </dependency>
188         <dependency>
189             <groupId>com.squareup.okhttp3</groupId>
190             <artifactId>mockwebserver</artifactId>
191             <scope>test</scope>
192         </dependency>
193         <dependency>
194             <groupId>commons-io</groupId>
195             <artifactId>commons-io</artifactId>
196             <version>${commons-io.version}</version>
197             <scope>test</scope>
198         </dependency>
199     </dependencies>
200
201     <build>
202         <plugins>
203             <plugin>
204                 <groupId>org.codehaus.groovy.maven</groupId>
205                 <artifactId>gmaven-plugin</artifactId>
206                 <executions>
207                     <execution>
208                         <phase>validate</phase>
209                         <goals>
210                             <goal>execute</goal>
211                         </goals>
212                         <configuration>
213                             <source>${basedir}/TagVersion.groovy</source>
214                         </configuration>
215                     </execution>
216                 </executions>
217             </plugin>
218             <plugin>
219                 <groupId>org.springframework.boot</groupId>
220                 <artifactId>spring-boot-maven-plugin</artifactId>
221             </plugin>
222             <plugin>
223                 <groupId>net.revelc.code.formatter</groupId>
224                 <artifactId>formatter-maven-plugin</artifactId>
225                 <version>${formatter-maven-plugin.version}</version>
226                 <configuration>
227                     <lineEnding>LF</lineEnding>
228                     <configFile>${project.basedir}/eclipse-formatter.xml</configFile>
229                 </configuration>
230                 <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
231                                         spotless:apply process-sources -->
232             </plugin>
233             <plugin>
234                 <groupId>com.diffplug.spotless</groupId>
235                 <artifactId>spotless-maven-plugin</artifactId>
236                 <version>${spotless-maven-plugin.version}</version>
237                 <configuration>
238                     <lineEndings>UNIX</lineEndings>
239                     <java>
240                         <removeUnusedImports/>
241                         <importOrder>
242                             <order>com,java,javax,org</order>
243                         </importOrder>
244                     </java>
245                 </configuration>
246                 <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
247                                         mvn spotless:apply to rewrite source files use mvn spotless:check to validate
248                                         source files -->
249             </plugin>
250             <plugin>
251                 <groupId>org.apache.maven.plugins</groupId>
252                 <artifactId>maven-surefire-plugin</artifactId>
253                 <version>${surefire-maven-plugin.version}</version>
254                 <configuration>
255                     <skipTests>false</skipTests>
256                 </configuration>
257             </plugin>
258             <plugin>
259                 <artifactId>maven-failsafe-plugin</artifactId>
260             </plugin>
261             <plugin>
262                 <groupId>org.codehaus.mojo</groupId>
263                 <artifactId>build-helper-maven-plugin</artifactId>
264                 <executions>
265                     <execution>
266                         <id>add-source</id>
267                         <phase>generate-sources</phase>
268                         <goals>
269                             <goal>add-source</goal>
270                         </goals>
271                         <configuration>
272                             <sources>
273                                 <source>${project.build.directory}/generated-sources/annotations/</source>
274                             </sources>
275                         </configuration>
276                     </execution>
277                 </executions>
278             </plugin>
279             <plugin>
280                 <groupId>org.jacoco</groupId>
281                 <artifactId>jacoco-maven-plugin</artifactId>
282                 <version>${jacoco-maven-plugin.version}</version>
283                 <executions>
284                     <execution>
285                         <id>default-prepare-agent</id>
286                         <goals>
287                             <goal>prepare-agent</goal>
288                         </goals>
289                     </execution>
290                     <execution>
291                         <id>default-report</id>
292                         <phase>prepare-package</phase>
293                         <goals>
294                             <goal>report</goal>
295                         </goals>
296                     </execution>
297                 </executions>
298             </plugin>
299             <plugin>
300                 <groupId>io.fabric8</groupId>
301                 <artifactId>docker-maven-plugin</artifactId>
302                 <version>${docker-maven-plugin}</version>
303                 <inherited>false</inherited>
304                 <executions>
305                     <execution>
306                         <id>generate-policy-management-service-image</id>
307                         <phase>package</phase>
308                         <goals>
309                             <goal>build</goal>
310                         </goals>
311                         <configuration>
312                             <images>
313                                 <image>
314                                     <name>onap/ccsdk-oran-a1policymanagementservice:${project.version}</name>
315                                     <build>
316                                         <cleanup>try</cleanup>
317                                         <contextDir>${basedir}</contextDir>
318                                         <dockerFile>Dockerfile</dockerFile>
319                                         <args>
320                                             <JAR>${project.build.finalName}.jar</JAR>
321                                         </args>
322                                         <tags>
323                                             <tag>${project.version}</tag>
324                                         </tags>
325                                     </build>
326                                 </image>
327                             </images>
328                         </configuration>
329                     </execution>
330                     <execution>
331                         <id>push-policy-management-service-image</id>
332                         <goals>
333                             <goal>build</goal>
334                             <goal>push</goal>
335                         </goals>
336                         <configuration>
337                             <images>
338                                 <image>
339                                     <name>onap/ccsdk-oran-a1policymanagementservice:${project.version}</name>
340                                     <build>
341                                         <contextDir>${basedir}</contextDir>
342                                         <dockerFile>Dockerfile</dockerFile>
343                                         <args>
344                                             <JAR>${project.build.finalName}.jar</JAR>
345                                         </args>
346                                         <tags>
347                                             <tag>${project.docker.latestminortag.version}</tag>
348                                             <tag>${project.docker.latestfulltag.version}</tag>
349                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
350                                         </tags>
351                                     </build>
352                                 </image>
353                             </images>
354                         </configuration>
355                     </execution>
356                 </executions>
357             </plugin>
358         </plugins>
359     </build>
360 </project>