update link to upper-constraints.txt
[holmes/rule-management.git] / rulemgt / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ Copyright 2017-2023 ZTE Corporation.
4   ~
5   ~ Licensed under the Apache License, Version 2.0 (the "License");
6   ~ you may not use this file except in compliance with the License.
7   ~ You may obtain a copy of the License at
8   ~
9   ~     http://www.apache.org/licenses/LICENSE-2.0
10   ~
11   ~ Unless required by applicable law or agreed to in writing, software
12   ~ distributed under the License is distributed on an "AS IS" BASIS,
13   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   ~ See the License for the specific language governing permissions and
15   ~ limitations under the License.
16   -->
17 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
18          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
19
20     <modelVersion>4.0.0</modelVersion>
21     <parent>
22         <groupId>org.onap.holmes.rule-management</groupId>
23         <artifactId>holmes-rulemgt-parent</artifactId>
24         <version>1.3.6-SNAPSHOT</version>
25     </parent>
26
27     <artifactId>holmes-rulemgt</artifactId>
28     <name>holmes-rulemgt-service</name>
29     <packaging>jar</packaging>
30
31     <properties>
32         <main-class>org.onap.holmes.rulemgt.RuleActiveApp</main-class>
33         <sonar.coverage.jacoco.xmlReportPaths>
34             ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
35         </sonar.coverage.jacoco.xmlReportPaths>
36         <jacoco.version>0.8.5</jacoco.version>
37     </properties>
38
39     <build>
40         <plugins>
41             <plugin>
42                 <groupId>org.apache.maven.plugins</groupId>
43                 <artifactId>maven-compiler-plugin</artifactId>
44                 <version>3.8.1</version>
45                 <configuration>
46                     <source>17</source>
47                     <target>17</target>
48                 </configuration>
49             </plugin>
50             <plugin>
51                 <artifactId>maven-surefire-plugin</artifactId>
52                 <version>3.1.2</version>
53                 <configuration>
54                     <argLine>
55                         --add-opens=java.base/java.lang=ALL-UNNAMED
56                         --add-opens=java.base/java.net=ALL-UNNAMED
57                         --add-opens=java.base/java.util=ALL-UNNAMED
58                         --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
59                         --add-opens=java.base/java.util.stream=ALL-UNNAMED
60                         --add-opens=java.base/java.io=ALL-UNNAMED
61                         --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
62                     </argLine>
63                 </configuration>
64             </plugin>
65             <plugin>
66                 <groupId>org.jacoco</groupId>
67                 <artifactId>jacoco-maven-plugin</artifactId>
68                 <version>${jacoco.version}</version>
69                 <executions>
70                     <execution>
71                         <id>prepare-agent</id>
72                         <goals>
73                             <goal>prepare-agent</goal>
74                         </goals>
75                     </execution>
76                     <execution>
77                         <id>report</id>
78                         <goals>
79                             <goal>report</goal>
80                         </goals>
81                         <configuration>
82                             <dataFile>${project.build.directory}/code-coverage/jacoco.exec</dataFile>
83                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
84                         </configuration>
85                     </execution>
86                 </executions>
87             </plugin>
88             <plugin>
89                 <groupId>org.springframework.boot</groupId>
90                 <artifactId>spring-boot-maven-plugin</artifactId>
91                 <version>${springboot.version}</version>
92                 <executions>
93                     <execution>
94                         <goals>
95                             <goal>repackage</goal>
96                         </goals>
97                     </execution>
98                 </executions>
99                 <configuration>
100                     <mainClass>${main-class}</mainClass>
101                 </configuration>
102             </plugin>
103         </plugins>
104         <resources>
105             <resource>
106                 <directory>src/main/java</directory>
107                 <includes>
108                     <include>**/*.properties</include>
109                 </includes>
110             </resource>
111             <resource>
112                 <directory>src/main/resources</directory>
113             </resource>
114         </resources>
115     </build>
116
117     <profiles>
118         <profile>
119             <id>swagger</id>
120             <dependencies>
121                 <dependency>
122                     <groupId>io.swagger</groupId>
123                     <artifactId>swagger-jersey2-jaxrs</artifactId>
124                     <version>1.5.3</version>
125                     <exclusions>
126                         <exclusion>
127                             <groupId>com.fasterxml.jackson.core</groupId>
128                             <artifactId>jackson-databind</artifactId>
129                         </exclusion>
130                         <exclusion>
131                             <groupId>com.fasterxml.jackson.core</groupId>
132                             <artifactId>jackson-core</artifactId>
133                         </exclusion>
134                     </exclusions>
135                 </dependency>
136             </dependencies>
137             <build>
138                 <plugins>
139                     <plugin>
140                         <groupId>com.github.kongchen</groupId>
141                         <artifactId>swagger-maven-plugin</artifactId>
142                         <version>3.1.1</version>
143                         <configuration>
144                             <apiSources>
145                                 <apiSource>
146                                     <springmvc>false</springmvc>
147                                     <locations>org.onap.holmes.rulemgt.resources</locations>
148                                     <basePath>/api/holmes-rule-mgmt/v1/</basePath>
149                                     <info>
150                                         <title>API Descriptions for Holmes Rule Management</title>
151                                         <version>v1</version>
152                                         <description>
153                                             This page shows all the APIs available in the Holmes rule management module.
154                                         </description>
155                                         <termsOfService>
156                                             http://www.github.com/kongchen/swagger-maven-plugin
157                                         </termsOfService>
158                                         <contact>
159                                             <email>fu.guangrong@zte.com.cn</email>
160                                             <name>Guangrong Fu</name>
161                                         </contact>
162                                         <license>
163                                             <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
164                                             <name>Apache 2.0</name>
165                                         </license>
166                                     </info>
167                                     <securityDefinitions>
168                                     </securityDefinitions>
169                                     <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
170                                 </apiSource>
171                             </apiSources>
172                         </configuration>
173                         <executions>
174                             <execution>
175                                 <phase>compile</phase>
176                                 <goals>
177                                     <goal>generate</goal>
178                                 </goals>
179                             </execution>
180                         </executions>
181                         <dependencies>
182                             <dependency>
183                                 <groupId>io.swagger</groupId>
184                                 <artifactId>swagger-hibernate-validations</artifactId>
185                                 <version>1.5.6</version>
186                             </dependency>
187                         </dependencies>
188                     </plugin>
189                 </plugins>
190             </build>
191         </profile>
192     </profiles>
193 </project>