a2bb4bc67d766607968f8aae0c000ae57196083c
[nonrtric.git] / policy-agent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * ========================LICENSE_START=================================
4  * O-RAN-SC
5  * %%
6  * Copyright (C) 2019 Nordix Foundation
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 <project
22     xmlns="http://maven.apache.org/POM/4.0.0"
23     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26     <groupId>org.oransc</groupId>
27     <artifactId>policy-agent</artifactId>
28     <version>1.0.0-SNAPSHOT</version>
29     <licenses>
30         <license>
31             <name>The Apache Software License, Version 2.0</name>
32             <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
33         </license>
34     </licenses>
35     <repositories>
36         <repository>
37             <id>onap-releases</id>
38             <name>onap-releases</name>
39             <url>https://nexus.onap.org/content/repositories/releases/</url>
40         </repository>
41     </repositories>
42     <parent>
43         <groupId>org.springframework.boot</groupId>
44         <artifactId>spring-boot-starter-parent</artifactId>
45         <version>2.1.6.RELEASE</version>
46         <relativePath />
47     </parent>
48     <dependencies>
49         <dependency>
50             <groupId>org.springframework.boot</groupId>
51             <artifactId>spring-boot-starter-web</artifactId>
52         </dependency>
53         <dependency>
54             <groupId>org.springframework.boot</groupId>
55             <artifactId>spring-boot-starter-thymeleaf</artifactId>
56         </dependency>
57         <dependency>
58             <groupId>org.springframework.boot</groupId>
59             <artifactId>spring-boot-starter-webflux</artifactId>
60         </dependency>
61         <dependency>
62             <groupId>org.springframework.boot</groupId>
63             <artifactId>spring-boot-devtools</artifactId>
64             <optional>true</optional>
65         </dependency>
66         <dependency>
67             <groupId>org.springframework</groupId>
68             <artifactId>spring-webflux</artifactId>
69         </dependency>
70         <dependency>
71             <groupId>io.swagger.core.v3</groupId>
72             <artifactId>swagger-jaxrs2</artifactId>
73             <version>2.0.0</version>
74         </dependency>
75         <dependency>
76             <groupId>io.swagger.core.v3</groupId>
77             <artifactId>swagger-jaxrs2-servlet-initializer</artifactId>
78             <version>2.0.0</version>
79         </dependency>
80         <dependency>
81             <groupId>io.springfox</groupId>
82             <artifactId>springfox-swagger-ui</artifactId>
83             <version>2.9.2</version>
84         </dependency>
85         <dependency>
86             <groupId>javax.xml.bind</groupId>
87             <artifactId>jaxb-api</artifactId>
88         </dependency>
89         <dependency>
90             <groupId>org.immutables</groupId>
91             <artifactId>value</artifactId>
92             <version>${immutable.version}</version>
93             <scope>provided</scope>
94         </dependency>
95         <dependency>
96             <groupId>org.immutables</groupId>
97             <artifactId>gson</artifactId>
98             <version>${immutable.version}</version>
99         </dependency>
100         <dependency>
101             <groupId>org.json</groupId>
102             <artifactId>json</artifactId>
103             <version>20180130</version>
104         </dependency>
105         <!--TEST -->
106         <dependency>
107             <groupId>org.springframework.boot</groupId>
108             <artifactId>spring-boot-starter-test</artifactId>
109             <scope>test</scope>
110         </dependency>
111         <!--REQUIRED TO GENERATE DOCUMENTATION -->
112         <dependency>
113             <groupId>io.springfox</groupId>
114             <artifactId>springfox-swagger2</artifactId>
115             <version>${springfox.version}</version>
116         </dependency>
117         <dependency>
118             <groupId>io.springfox</groupId>
119             <artifactId>springfox-swagger-ui</artifactId>
120             <version>${springfox.version}</version>
121         </dependency>
122         <dependency>
123             <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
124             <artifactId>cbs-client</artifactId>
125             <version>${sdk.version}</version>
126         </dependency>
127         <dependency>
128             <groupId>io.projectreactor</groupId>
129             <artifactId>reactor-test</artifactId>
130             <scope>test</scope>
131         </dependency>
132         <dependency>
133             <groupId>org.junit.jupiter</groupId>
134             <artifactId>junit-jupiter-engine</artifactId>
135             <version>${junit-jupiter.version}</version>
136             <scope>test</scope>
137         </dependency>
138     </dependencies>
139     <properties>
140         <java.version>11</java.version>
141         <springfox.version>2.8.0</springfox.version>
142         <immutable.version>2.7.1</immutable.version>
143         <sdk.version>1.1.6</sdk.version>
144         <junit-jupiter.version>5.4.0</junit-jupiter.version>
145     </properties>
146     <build>
147         <plugins>
148             <plugin>
149                 <groupId>org.springframework.boot</groupId>
150                 <artifactId>spring-boot-maven-plugin</artifactId>
151             </plugin>
152             <plugin>
153                 <groupId>net.revelc.code.formatter</groupId>
154                 <artifactId>formatter-maven-plugin</artifactId>
155                 <version>2.8.1</version>
156                 <configuration>
157                     <configFile>${project.basedir}/eclipse-formatter.xml</configFile>
158                 </configuration>
159                 <!-- https://code.revelc.net/formatter-maven-plugin/ use 
160                  mvn formatter:format spotless:apply process-sources -->
161             </plugin>
162             <plugin>
163                 <groupId>com.diffplug.spotless</groupId>
164                 <artifactId>spotless-maven-plugin</artifactId>
165                 <version>1.18.0</version>
166                 <configuration>
167                     <java>
168                         <removeUnusedImports/>
169                         <importOrder>
170                             <order>com,java,javax,org</order>
171                         </importOrder>
172                     </java>
173                 </configuration>
174                 <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use 
175                         mvn spotless:apply to rewrite source files use mvn spotless:check to validate 
176                         source files -->
177             </plugin>
178             <plugin>
179                 <groupId>org.apache.maven.plugins</groupId>
180                 <artifactId>maven-surefire-plugin</artifactId>
181                 <version>2.17</version>
182                 <configuration>
183                     <skipTests>false</skipTests>
184                 </configuration>
185             </plugin>
186             <plugin>
187                 <groupId>com.spotify</groupId>
188                 <artifactId>dockerfile-maven-plugin</artifactId>
189                 <configuration>
190                     <repository>oransc/policy-agent</repository>
191                     <tag>${project.version}</tag>
192                     <buildArgs>
193                         <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
194                     </buildArgs>
195                 </configuration>
196             </plugin>
197             <plugin>
198                 <groupId>org.codehaus.mojo</groupId>
199                 <artifactId>build-helper-maven-plugin</artifactId>
200                 <executions>
201                     <execution>
202                         <id>add-source</id>
203                         <phase>generate-sources</phase>
204                         <goals>
205                             <goal>add-source</goal>
206                         </goals>
207                         <configuration>
208                             <sources>
209                                 <source>${project.build.directory}/generated-sources/annotations/</source>
210                             </sources>
211                         </configuration>
212                     </execution>
213                 </executions>
214             </plugin>
215         </plugins>
216     </build>
217 </project>