Merge "Adapt A1 controller to latest A1 spec"
[nonrtric.git] / policy-agent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- * ========================LICENSE_START================================= 
3         * O-RAN-SC * %% * Copyright (C) 2019 Nordix Foundation * %% * Licensed under 
4         the Apache License, Version 2.0 (the "License"); * you may not use this file 
5         except in compliance with the License. * You may obtain a copy of the License 
6         at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by 
7         applicable law or agreed to in writing, software * distributed under the 
8         License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS 
9         OF ANY KIND, either express or implied. * See the License for the specific 
10         language governing permissions and * limitations under the License. * ========================LICENSE_END=================================== -->
11 <project xmlns="http://maven.apache.org/POM/4.0.0"
12         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
13         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
14         <modelVersion>4.0.0</modelVersion>
15         <parent>
16                 <groupId>org.springframework.boot</groupId>
17                 <artifactId>spring-boot-starter-parent</artifactId>
18                 <version>2.1.6.RELEASE</version>
19                 <relativePath />
20         </parent>
21         <groupId>org.o-ran-sc.nonrtric</groupId>
22         <artifactId>policy-agent</artifactId>
23         <version>1.0.0-SNAPSHOT</version>
24         <licenses>
25                 <license>
26                         <name>The Apache Software License, Version 2.0</name>
27                         <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
28                 </license>
29         </licenses>
30         <repositories>
31                 <repository>
32                         <id>onap-releases</id>
33                         <name>onap-releases</name>
34                         <url>https://nexus.onap.org/content/repositories/releases/</url>
35                 </repository>
36         </repositories>
37         <properties>
38                 <java.version>11</java.version>
39                 <springfox.version>2.8.0</springfox.version>
40                 <immutable.version>2.7.1</immutable.version>
41                 <sdk.version>1.1.6</sdk.version>
42                 <swagger.version>2.0.0</swagger.version>
43                 <json.version>20180130</json.version>
44         <commons-net.version>3.3</commons-net.version>
45                 <awaitility.version>4.0.1</awaitility.version>
46                 <maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
47                 <formatter-maven-plugin.version>2.8.1</formatter-maven-plugin.version>
48                 <spotless-maven-plugin.version>1.18.0</spotless-maven-plugin.version>
49                 <docker-maven-plugin>0.30.0</docker-maven-plugin>
50                 <version.dmaap>1.1.9</version.dmaap>
51         <javax.ws.rs-api.version>2.1.1</javax.ws.rs-api.version>
52         </properties>
53         <dependencies>
54                 <dependency>
55                         <groupId>org.springframework.boot</groupId>
56                         <artifactId>spring-boot-starter-web</artifactId>
57                 </dependency>
58                 <dependency>
59                         <groupId>org.springframework.boot</groupId>
60                         <artifactId>spring-boot-starter-thymeleaf</artifactId>
61                 </dependency>
62                 <dependency>
63                         <groupId>org.springframework.boot</groupId>
64                         <artifactId>spring-boot-starter-webflux</artifactId>
65                 </dependency>
66                 <dependency>
67                         <groupId>org.springframework.boot</groupId>
68                         <artifactId>spring-boot-devtools</artifactId>
69                         <optional>true</optional>
70                 </dependency>
71                 <dependency>
72                         <groupId>org.springframework</groupId>
73                         <artifactId>spring-webflux</artifactId>
74                 </dependency>
75                 <dependency>
76                         <groupId>io.swagger.core.v3</groupId>
77                         <artifactId>swagger-jaxrs2</artifactId>
78                         <version>${swagger.version}</version>
79                 </dependency>
80                 <dependency>
81                         <groupId>io.swagger.core.v3</groupId>
82                         <artifactId>swagger-jaxrs2-servlet-initializer</artifactId>
83                         <version>${swagger.version}</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>${json.version}</version>
104                 </dependency>
105         <dependency>
106             <groupId>commons-net</groupId>
107             <artifactId>commons-net</artifactId>
108             <version>${commons-net.version}</version>
109         </dependency>
110                 <!--TEST -->
111                 <dependency>
112                         <groupId>org.springframework.boot</groupId>
113                         <artifactId>spring-boot-starter-test</artifactId>
114                         <scope>test</scope>
115                 </dependency>
116                 <dependency>
117                         <groupId>org.springframework.boot</groupId>
118                         <artifactId>spring-boot-configuration-processor</artifactId>
119                         <optional>true</optional>
120                 </dependency>
121                 <dependency>
122                         <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
123                         <artifactId>cbs-client</artifactId>
124             <version>${sdk.version}</version>
125         </dependency>
126         <dependency>
127             <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
128             <artifactId>dmaap-client</artifactId>
129                         <version>${sdk.version}</version>
130                 </dependency>
131         <dependency>
132             <groupId>org.projectlombok</groupId>
133             <artifactId>lombok</artifactId>
134          <scope>provided</scope>
135         </dependency>
136                 <!--REQUIRED TO GENERATE DOCUMENTATION -->
137                 <dependency>
138                         <groupId>io.springfox</groupId>
139                         <artifactId>springfox-swagger2</artifactId>
140                         <version>${springfox.version}</version>
141                 </dependency>
142                 <dependency>
143                         <groupId>io.springfox</groupId>
144                         <artifactId>springfox-swagger-ui</artifactId>
145                         <version>${springfox.version}</version>
146                 </dependency>
147                 <!-- TEST -->
148                 <dependency>
149                         <groupId>org.awaitility</groupId>
150                         <artifactId>awaitility</artifactId>
151                         <version>${awaitility.version}</version>
152                         <scope>test</scope>
153                 </dependency>
154                 <dependency>
155                         <groupId>io.projectreactor</groupId>
156                         <artifactId>reactor-test</artifactId>
157                         <scope>test</scope>
158                 </dependency>
159                 <dependency>
160                         <groupId>org.junit.jupiter</groupId>
161                         <artifactId>junit-jupiter-engine</artifactId>
162                         <scope>test</scope>
163                 </dependency>
164                 <dependency>
165                         <groupId>org.mockito</groupId>
166                         <artifactId>mockito-junit-jupiter</artifactId>
167                         <scope>test</scope>
168                 </dependency>
169                 <dependency>
170                         <groupId>org.mockito</groupId>
171                         <artifactId>mockito-core</artifactId>
172                         <scope>test</scope>
173                 </dependency>
174                 <dependency>
175                         <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
176                         <artifactId>dmaapClient</artifactId>
177                         <version>${version.dmaap}</version>
178                 </dependency>
179         <dependency>
180             <groupId>javax.ws.rs</groupId>
181             <artifactId>javax.ws.rs-api</artifactId>
182             <version>${javax.ws.rs-api.version}</version>
183         </dependency>
184         <dependency>
185             <groupId>org.glassfish.jersey.inject</groupId>
186             <artifactId>jersey-hk2</artifactId>
187         </dependency>
188         </dependencies>
189         <build>
190                 <plugins>
191                         <plugin>
192                                 <groupId>org.springframework.boot</groupId>
193                                 <artifactId>spring-boot-maven-plugin</artifactId>
194                         </plugin>
195                         <plugin>
196                                 <groupId>net.revelc.code.formatter</groupId>
197                                 <artifactId>formatter-maven-plugin</artifactId>
198                                 <version>${formatter-maven-plugin.version}</version>
199                                 <configuration>
200                                         <configFile>${project.basedir}/eclipse-formatter.xml</configFile>
201                                 </configuration>
202                                 <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format 
203                                         spotless:apply process-sources -->
204                         </plugin>
205                         <plugin>
206                                 <groupId>com.diffplug.spotless</groupId>
207                                 <artifactId>spotless-maven-plugin</artifactId>
208                                 <version>${spotless-maven-plugin.version}</version>
209                                 <configuration>
210                                         <java>
211                                                 <removeUnusedImports />
212                                                 <importOrder>
213                                                         <order>com,java,javax,org</order>
214                                                 </importOrder>
215                                         </java>
216                                 </configuration>
217                                 <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use 
218                                         mvn spotless:apply to rewrite source files use mvn spotless:check to validate 
219                                         source files -->
220                         </plugin>
221                         <plugin>
222                                 <groupId>org.apache.maven.plugins</groupId>
223                                 <artifactId>maven-surefire-plugin</artifactId>
224                                 <configuration>
225                                         <skipTests>false</skipTests>
226                                 </configuration>
227                         </plugin>
228                         <plugin>
229                                 <artifactId>maven-failsafe-plugin</artifactId>
230                         </plugin>
231                         <plugin>
232                                 <groupId>org.codehaus.mojo</groupId>
233                                 <artifactId>build-helper-maven-plugin</artifactId>
234                                 <executions>
235                                         <execution>
236                                                 <id>add-source</id>
237                                                 <phase>generate-sources</phase>
238                                                 <goals>
239                                                         <goal>add-source</goal>
240                                                 </goals>
241                                                 <configuration>
242                                                         <sources>
243                                                                 <source>${project.build.directory}/generated-sources/annotations/</source>
244                                                         </sources>
245                                                 </configuration>
246                                         </execution>
247                                 </executions>
248                         </plugin>
249                         <plugin>
250                                 <groupId>io.fabric8</groupId>
251                                 <artifactId>docker-maven-plugin</artifactId>
252                                 <version>${docker-maven-plugin}</version>
253                                 <inherited>false</inherited>
254                                 <executions>
255                                         <execution>
256                                                 <id>generate-policy-agent-image</id>
257                                                 <phase>package</phase>
258                                                 <goals>
259                                                         <goal>build</goal>
260                                                 </goals>
261                                                 <configuration>
262                                                         <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
263                                                         <images>
264                                                                 <image>
265                                                                         <name>o-ran-sc/nonrtric-policy-agent:${project.version}</name>
266                                                                         <build>
267                                                                                 <cleanup>try</cleanup>
268                                                                                 <contextDir>${basedir}</contextDir>
269                                                                                 <dockerFile>Dockerfile</dockerFile>
270                                                                                 <args>
271                                                                                         <JAR>${project.build.finalName}.jar</JAR>
272                                                                                 </args>
273                                                                                 <tags>
274                                                                                         <tag>${project.version}</tag>
275                                                                                 </tags>
276                                                                         </build>
277                                                                 </image>
278                                                         </images>
279                                                 </configuration>
280                                         </execution>
281                                         <execution>
282                                                 <id>push-policy-agent-image</id>
283                                                 <goals>
284                                                         <goal>build</goal>
285                                                         <goal>push</goal>
286                                                 </goals>
287                                                 <configuration>
288                                                         <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
289                                                         <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
290                                                         <images>
291                                                                 <image>
292                                                                         <name>o-ran-sc/nonrtric-policy-agent:${project.version}</name>
293                                                                         <build>
294                                                                                 <contextDir>${basedir}</contextDir>
295                                                                                 <dockerFile>Dockerfile</dockerFile>
296                                                                                 <args>
297                                                                                         <JAR>${project.build.finalName}.jar</JAR>
298                                                                                 </args>
299                                                                                 <tags>
300                                                                                         <tag>${project.version}</tag>
301                                                                                 </tags>
302                                                                         </build>
303                                                                 </image>
304                                                         </images>
305                                                 </configuration>
306                                         </execution>
307                                 </executions>
308                         </plugin>
309                 </plugins>
310         </build>
311         <issueManagement>
312                 <system>JIRA</system>
313                 <url>https://jira.o-ran-sc.org/</url>
314         </issueManagement>
315 </project>