Overriding default sonar project name for maven projects
[nonrtric/plt/ranpm.git] / datafilecollector / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ ============LICENSE_START=======================================================
4   ~ Copyright (C) 2023 Nordix Foundation
5   ~ ================================================================================
6   ~ Licensed under the Apache License, Version 2.0 (the "License");
7   ~ you may not use this file except in compliance with the License.
8   ~ You may obtain a copy of the License at
9   ~
10   ~ http://www.apache.org/licenses/LICENSE-2.0
11   ~
12   ~ Unless required by applicable law or agreed to in writing, software
13   ~ distributed under the License is distributed on an "AS IS" BASIS,
14   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   ~ See the License for the specific language governing permissions and
16   ~ limitations under the License.
17   ~ ============LICENSE_END=========================================================
18   -->
19 <project xmlns="http://maven.apache.org/POM/4.0.0"
20     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
21     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
22     <modelVersion>4.0.0</modelVersion>
23     <parent>
24         <groupId>org.springframework.boot</groupId>
25         <artifactId>spring-boot-starter-parent</artifactId>
26         <version>3.0.4</version>
27     </parent>
28     <groupId>org.o-ran-sc.nonrtric.plt.ranpm</groupId>
29     <artifactId>datafile-collector</artifactId>
30     <version>1.1.0-SNAPSHOT</version>
31     <packaging>jar</packaging>
32     <name>NONRTRIC RAN PM Data File Collector</name>
33     <description>File Collector for collecting RAN PM files from RAN functions (O-RAN SC NONRTRIC)</description>
34     <properties>
35         <java.version>17</java.version>
36         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
37         <gson.version>2.9.1</gson.version>
38         <docker-maven-plugin>0.30.0</docker-maven-plugin>
39         <jacoco-maven-plugin.version>0.8.8</jacoco-maven-plugin.version>
40         <springdoc.version>2.0.2</springdoc.version>
41         <springdoc.openapi-ui.version>1.6.14</springdoc.openapi-ui.version>
42         <exec.skip>true</exec.skip>
43         <sonar-maven-plugin.version>3.7.0.1746</sonar-maven-plugin.version>
44     </properties>
45     <dependencies>
46         <dependency>
47             <groupId>org.springdoc</groupId>
48             <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
49             <version>${springdoc.version}</version>
50         </dependency>
51         <dependency>
52             <groupId>org.springdoc</groupId>
53             <artifactId>springdoc-openapi-ui</artifactId>
54             <version>${springdoc.openapi-ui.version}</version>
55         </dependency>
56         <dependency>
57             <groupId>com.google.code.gson</groupId>
58             <artifactId>gson</artifactId>
59             <version>${gson.version}</version>
60         </dependency>
61         <dependency>
62             <groupId>io.projectreactor.kafka</groupId>
63             <artifactId>reactor-kafka</artifactId>
64             <version>1.3.9</version>
65         </dependency>
66         <dependency>
67             <groupId>org.projectlombok</groupId>
68             <artifactId>lombok</artifactId>
69         </dependency>
70         <dependency>
71             <groupId>org.awaitility</groupId>
72             <artifactId>awaitility</artifactId>
73             <scope>test</scope>
74         </dependency>
75         <dependency>
76             <groupId>org.apache.httpcomponents</groupId>
77             <artifactId>httpasyncclient</artifactId>
78         </dependency>
79         <dependency>
80             <groupId>org.springframework.boot</groupId>
81             <artifactId>spring-boot-configuration-processor</artifactId>
82             <optional>true</optional>
83         </dependency>
84         <dependency>
85             <groupId>org.springframework.boot</groupId>
86             <artifactId>spring-boot</artifactId>
87         </dependency>
88         <dependency>
89             <groupId>org.springframework</groupId>
90             <artifactId>spring-web</artifactId>
91         </dependency>
92         <dependency>
93             <groupId>org.springframework</groupId>
94             <artifactId>spring-webmvc</artifactId>
95         </dependency>
96         <dependency>
97             <groupId>org.springframework</groupId>
98             <artifactId>spring-webflux</artifactId>
99         </dependency>
100         <dependency>
101             <groupId>org.springframework.boot</groupId>
102             <artifactId>spring-boot-autoconfigure</artifactId>
103         </dependency>
104         <dependency>
105             <groupId>org.apache.httpcomponents.core5</groupId>
106             <artifactId>httpcore5</artifactId>
107         </dependency>
108         <!-- Actuator dependencies -->
109         <dependency>
110             <groupId>org.springframework.boot</groupId>
111             <artifactId>spring-boot-starter-actuator</artifactId>
112         </dependency>
113         <dependency>
114             <groupId>software.amazon.awssdk</groupId>
115             <artifactId>s3</artifactId>
116             <version>2.17.292</version>
117         </dependency>
118         <!--TESTS
119         DEPENDENCIES -->
120         <dependency>
121             <groupId>io.projectreactor</groupId>
122             <artifactId>reactor-test</artifactId>
123             <scope>test</scope>
124         </dependency>
125         <dependency>
126             <groupId>org.junit.jupiter</groupId>
127             <artifactId>junit-jupiter-engine</artifactId>
128             <scope>test</scope>
129         </dependency>
130         <dependency>
131             <groupId>org.springframework.boot</groupId>
132             <artifactId>spring-boot-starter-test</artifactId>
133             <scope>test</scope>
134         </dependency>
135         <dependency>
136             <groupId>org.mockito</groupId>
137             <artifactId>mockito-junit-jupiter</artifactId>
138             <scope>test</scope>
139         </dependency>
140         <dependency>
141             <groupId>commons-net</groupId>
142             <artifactId>commons-net</artifactId>
143             <version>3.9.0</version>
144         </dependency>
145         <dependency>
146             <groupId>com.jcraft</groupId>
147             <artifactId>jsch</artifactId>
148             <version>0.1.55</version>
149         </dependency>
150         <dependency>
151             <groupId>io.projectreactor.netty</groupId>
152             <artifactId>reactor-netty</artifactId>
153             <version>1.0.22</version>
154         </dependency>
155     </dependencies>
156     <build>
157         <plugins>
158             <plugin>
159                 <groupId>org.springframework.boot</groupId>
160                 <artifactId>spring-boot-maven-plugin</artifactId>
161                 <configuration>
162                     <finalName>${project.artifactId}</finalName>
163                     <mainClass>org.oran.datafile.MainApp</mainClass>
164                 </configuration>
165                 <executions>
166                     <execution>
167                         <goals>
168                             <goal>build-info</goal>
169                         </goals>
170                     </execution>
171                 </executions>
172             </plugin>
173             <plugin>
174                 <groupId>io.fabric8</groupId>
175                 <artifactId>docker-maven-plugin</artifactId>
176                 <version>${docker-maven-plugin}</version>
177                 <inherited>false</inherited>
178                 <executions>
179                     <execution>
180                         <id>generate-image</id>
181                         <phase>package</phase>
182                         <goals>
183                             <goal>build</goal>
184                         </goals>
185                         <configuration>
186                             <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
187                             <images>
188                                 <image>
189                                     <name>
190                                         o-ran-sc/nonrtric-plt-ranpm-datafilecollector:${project.version}</name>
191                                     <build>
192                                         <cleanup>try</cleanup>
193                                         <contextDir>${basedir}</contextDir>
194                                         <dockerFile>Dockerfile</dockerFile>
195                                         <args>
196                                             <JAR>${project.build.finalName}.jar</JAR>
197                                         </args>
198                                         <tags>
199                                             <tag>${project.version}</tag>
200                                         </tags>
201                                     </build>
202                                 </image>
203                             </images>
204                         </configuration>
205                     </execution>
206                     <execution>
207                         <id>push-image</id>
208                         <goals>
209                             <goal>build</goal>
210                             <goal>push</goal>
211                         </goals>
212                         <configuration>
213                             <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
214                             <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
215                             <images>
216                                 <image>
217                                     <name>
218                                         o-ran-sc/nonrtric-plt-ranpm-datafilecollector:${project.version}</name>
219                                     <build>
220                                         <contextDir>${basedir}</contextDir>
221                                         <dockerFile>Dockerfile</dockerFile>
222                                         <args>
223                                             <JAR>${project.build.finalName}.jar</JAR>
224                                         </args>
225                                         <tags>
226                                             <tag>${project.version}</tag>
227                                             <tag>latest</tag>
228                                         </tags>
229                                     </build>
230                                 </image>
231                             </images>
232                         </configuration>
233                     </execution>
234                 </executions>
235             </plugin>
236             <plugin>
237                 <groupId>com.diffplug.spotless</groupId>
238                 <artifactId>spotless-maven-plugin</artifactId>
239                 <version>1.18.0</version>
240                 <configuration>
241                     <java>
242                         <removeUnusedImports />
243                         <importOrder>
244                             <order>com,java,javax,org</order>
245                         </importOrder>
246                     </java>
247                 </configuration>
248                 <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
249                             mvn spotless:apply to rewrite source files use mvn spotless:check to validate
250                             source files -->
251             </plugin>
252             <plugin>
253                 <groupId>net.revelc.code.formatter</groupId>
254                 <artifactId>formatter-maven-plugin</artifactId>
255                 <version>2.8.1</version>
256                 <configuration>
257                     <configFile>${project.basedir}/onap-java-formatter.xml</configFile>
258                 </configuration>
259                 <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
260                           to rewrite source files use mvn formatter:validate to validate source files -->
261             </plugin>
262             <plugin>
263                 <groupId>org.jacoco</groupId>
264                 <artifactId>jacoco-maven-plugin</artifactId>
265                 <version>${jacoco-maven-plugin.version}</version>
266                 <executions>
267                     <execution>
268                         <id>default-prepare-agent</id>
269                         <goals>
270                             <goal>prepare-agent</goal>
271                         </goals>
272                     </execution>
273                     <execution>
274                         <id>default-report</id>
275                         <phase>prepare-package</phase>
276                         <goals>
277                             <goal>report</goal>
278                         </goals>
279                     </execution>
280                 </executions>
281             </plugin>
282             <plugin>
283                 <groupId>org.sonarsource.scanner.maven</groupId>
284                 <artifactId>sonar-maven-plugin</artifactId>
285                 <version>${sonar-maven-plugin.version}</version>
286             </plugin>
287         </plugins>
288     </build>
289 </project>