Release policy/drools-pdp
[policy/drools-pdp.git] / policy-management / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ============LICENSE_START=======================================================
4   ONAP Policy Engine - Drools PDP
5   ================================================================================
6   Copyright (C) 2017-2022 AT&T Intellectual Property. All rights reserved.
7   Modifications Copyright (C) 2020,2023 Nordix Foundation.
8   ================================================================================
9   Licensed under the Apache License, Version 2.0 (the "License");
10   you may not use this file except in compliance with the License.
11   You may obtain a copy of the License at
12
13        http://www.apache.org/licenses/LICENSE-2.0
14
15   Unless required by applicable law or agreed to in writing, software
16   distributed under the License is distributed on an "AS IS" BASIS,
17   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18   See the License for the specific language governing permissions and
19   limitations under the License.
20   ============LICENSE_END=========================================================
21   -->
22
23 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26
27     <parent>
28         <groupId>org.onap.policy.drools-pdp</groupId>
29         <artifactId>drools-pdp</artifactId>
30         <version>2.0.2</version>
31     </parent>
32
33     <artifactId>policy-management</artifactId>
34
35     <name>policy-management</name>
36     <description>Policy Management</description>
37
38     <build>
39         <plugins>
40             <plugin>
41                 <artifactId>maven-assembly-plugin</artifactId>
42                 <executions>
43                     <execution>
44                         <id>zipfile</id>
45                         <goals>
46                             <goal>single</goal>
47                         </goals>
48                         <phase>package</phase>
49                         <configuration>
50                             <attach>true</attach>
51                             <finalName>${project.artifactId}-${project.version}</finalName>
52                             <descriptors>
53                                 <descriptor>src/assembly/assemble_zip.xml</descriptor>
54                             </descriptors>
55                             <appendAssemblyId>false</appendAssemblyId>
56                         </configuration>
57                     </execution>
58                 </executions>
59             </plugin>
60             <plugin>
61                 <groupId>org.apache.maven.plugins</groupId>
62                 <artifactId>maven-dependency-plugin</artifactId>
63                 <executions>
64                     <execution>
65                         <id>copy-dependencies</id>
66                         <goals>
67                             <goal>copy-dependencies</goal>
68                         </goals>
69                         <phase>prepare-package</phase>
70                         <configuration>
71                             <outputDirectory>${project.build.directory}/assembly/lib</outputDirectory>
72                             <overWriteReleases>false</overWriteReleases>
73                             <overWriteSnapshots>true</overWriteSnapshots>
74                             <overWriteIfNewer>true</overWriteIfNewer>
75                             <useRepositoryLayout>false</useRepositoryLayout>
76                             <addParentPoms>false</addParentPoms>
77                             <copyPom>false</copyPom>
78                             <includeScope>runtime</includeScope>
79                         </configuration>
80                     </execution>
81                 </executions>
82             </plugin>
83             <plugin>
84                 <artifactId>maven-resources-plugin</artifactId>
85                 <executions>
86                     <execution>
87                         <id>copy-version</id>
88                         <goals>
89                             <goal>copy-resources</goal>
90                         </goals>
91                         <phase>validate</phase>
92                         <configuration>
93                             <outputDirectory>${basedir}/target/versions</outputDirectory>
94                             <resources>
95                                 <resource>
96                                     <directory>src/main/resources/versions</directory>
97                                     <includes>
98                                         <include>version.properties</include>
99                                     </includes>
100                                     <filtering>true</filtering>
101                                 </resource>
102                             </resources>
103                         </configuration>
104                     </execution>
105                     <execution>
106                         <id>copy-resources</id>
107                         <goals>
108                             <goal>copy-resources</goal>
109                         </goals>
110                         <phase>validate</phase>
111                         <configuration>
112                             <outputDirectory>${basedir}/target/etc/bvc-extensions</outputDirectory>
113                             <resources>
114                                 <resource>
115                                     <directory>src/main/resources/etc/bvc-extensions</directory>
116                                     <includes>
117                                         <include>feature_config_template.cfg</include>
118                                         <include>feature_custom.install</include>
119                                     </includes>
120                                     <filtering>true</filtering>
121                                 </resource>
122                             </resources>
123                         </configuration>
124                     </execution>
125                     <execution>
126                         <id>copy-swagger</id>
127                         <goals>
128                             <goal>copy-resources</goal>
129                         </goals>
130                         <phase>compile</phase>
131                         <configuration>
132                             <outputDirectory>src/main/resources/swagger</outputDirectory>
133                             <resources>
134                                 <resource>
135                                     <directory>${basedir}/target/generated-sources/swagger</directory>
136                                     <includes>
137                                         <include>swagger.json</include>
138                                     </includes>
139                                     <filtering>true</filtering>
140                                 </resource>
141                             </resources>
142                         </configuration>
143                     </execution>
144                 </executions>
145             </plugin>
146             <!-- Controllers interfaces generation -->
147             <plugin>
148                 <groupId>io.swagger.codegen.v3</groupId>
149                 <artifactId>swagger-codegen-maven-plugin</artifactId>
150                 <executions>
151                     <execution>
152                         <id>code-gen</id>
153                         <goals>
154                             <goal>generate</goal>
155                         </goals>
156                         <configuration>
157                             <inputSpec>${project.basedir}/src/main/resources/openapi/openapi.yaml</inputSpec>
158                             <invokerPackage>org.onap.policy.drools.server.restful</invokerPackage>
159                             <modelPackage>org.onap.policy.drools.server.restful.model</modelPackage>
160                             <apiPackage>org.onap.policy.drools.server.restful</apiPackage>
161                             <language>jaxrs-spec</language>
162                             <generateModels>false</generateModels>
163                             <generateSupportingFiles>false</generateSupportingFiles>
164                             <importMappings>
165                                 CoderFilters=org.onap.policy.drools.protocol.coders.EventProtocolCoder.CoderFilters,
166                                 CodingResult=org.onap.policy.drools.server.restful.RestManager.CodingResult,
167                                 ControllerConfiguration=org.onap.policy.drools.protocol.configuration.ControllerConfiguration,
168                                 DroolsController=org.onap.policy.drools.controller.DroolsController,
169                                 JsonProtocolFilter=org.onap.policy.drools.protocol.coders.JsonProtocolFilter,
170                                 PdpdConfiguration=org.onap.policy.drools.protocol.configuration.PdpdConfiguration,
171                                 PolicyController=org.onap.policy.drools.system.PolicyController,
172                                 PolicyControllerFeatureApi=org.onap.policy.drools.features.PolicyControllerFeatureApi,
173                                 PolicyEngine=org.onap.policy.drools.system.PolicyEngine,
174                                 PolicyEngineFeatureApi=org.onap.policy.drools.features.PolicyEngineFeatureApi,
175                                 PolicyTypeController=org.onap.policy.drools.lifecycle.PolicyTypeController,
176                                 Properties=java.util.Properties,
177                                 ProtocolCoderToolset=org.onap.policy.drools.protocol.coders.ProtocolCoderToolset,
178                                 Response=jakarta.ws.rs.core.Response,
179                                 TopicEndpoint=org.onap.policy.common.endpoints.event.comm.TopicEndpoint,
180                                 TopicSink=org.onap.policy.common.endpoints.event.comm.TopicSink,
181                                 TopicSource=org.onap.policy.common.endpoints.event.comm.TopicSource,
182                                 ToscaPolicy=org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy
183                             </importMappings>
184                             <typeMappings>
185                                 <typeMapping>boolean=boolean</typeMapping>
186                             </typeMappings>
187                             <configOptions>
188                                 <sourceFolder>src/gen/java</sourceFolder>
189                                 <dateLibrary>java17</dateLibrary>
190                                 <interfaceOnly>true</interfaceOnly>
191                                 <useTags>true</useTags>
192                                 <skipIfSpecIsUnchanged>false</skipIfSpecIsUnchanged>
193                                 <jakarta>true</jakarta>
194                             </configOptions>
195                         </configuration>
196                     </execution>
197                 </executions>
198             </plugin>
199         </plugins>
200     </build>
201
202     <dependencies>
203         <dependency>
204             <groupId>org.onap.policy.drools-pdp</groupId>
205             <artifactId>policy-core</artifactId>
206             <version>${project.version}</version>
207         </dependency>
208         <dependency>
209             <groupId>org.onap.policy.drools-pdp</groupId>
210             <artifactId>policy-domains</artifactId>
211             <version>${project.version}</version>
212         </dependency>
213
214         <dependency>
215             <groupId>org.onap.policy.common</groupId>
216             <artifactId>policy-endpoints</artifactId>
217             <version>${policy.common.version}</version>
218         </dependency>
219         <dependency>
220             <groupId>org.onap.policy.common</groupId>
221             <artifactId>gson</artifactId>
222             <version>${policy.common.version}</version>
223         </dependency>
224         <dependency>
225             <groupId>org.onap.policy.common</groupId>
226             <artifactId>utils</artifactId>
227             <version>${policy.common.version}</version>
228         </dependency>
229
230         <dependency>
231             <groupId>org.onap.policy.models</groupId>
232             <artifactId>policy-models-pdp</artifactId>
233             <version>${policy.models.version}</version>
234         </dependency>
235
236         <dependency>
237             <groupId>org.eclipse.jetty</groupId>
238             <artifactId>jetty-server</artifactId>
239         </dependency>
240         <dependency>
241             <groupId>org.eclipse.jetty</groupId>
242             <artifactId>jetty-servlet</artifactId>
243         </dependency>
244
245         <dependency>
246             <groupId>com.google.code.gson</groupId>
247             <artifactId>gson</artifactId>
248         </dependency>
249         <dependency>
250             <groupId>com.fatboyindustrial.gson-javatime-serialisers</groupId>
251             <artifactId>gson-javatime-serialisers</artifactId>
252             <version>1.1.2</version>
253         </dependency>
254         <dependency>
255             <groupId>com.jayway.jsonpath</groupId>
256             <artifactId>json-path</artifactId>
257         </dependency>
258         <dependency>
259             <groupId>org.apache.commons</groupId>
260             <artifactId>commons-collections4</artifactId>
261         </dependency>
262
263         <!-- if we don't explicitly specify the version here, we seem to end up
264         with version 1.4 (as a dependency to drools-core). This version is
265         not compatible with 'saClientLibrary' version 1.2.1-oss
266         -->
267         <dependency>
268             <groupId>commons-codec</groupId>
269             <artifactId>commons-codec</artifactId>
270         </dependency>
271         <dependency>
272             <groupId>ch.qos.logback</groupId>
273             <artifactId>logback-classic</artifactId>
274         </dependency>
275         <dependency>
276             <groupId>org.springframework</groupId>
277             <artifactId>spring-test</artifactId>
278             <scope>test</scope>
279         </dependency>
280
281         <!--
282         The following dependencies are for features and drools
283         applications usage
284         -->
285
286         <dependency>
287             <groupId>org.mariadb.jdbc</groupId>
288             <artifactId>mariadb-java-client</artifactId>
289         </dependency>
290         <dependency>
291             <groupId>org.hibernate.orm</groupId>
292             <artifactId>hibernate-core</artifactId>
293         </dependency>
294         <dependency>
295             <groupId>org.hibernate.common</groupId>
296             <artifactId>hibernate-commons-annotations</artifactId>
297         </dependency>
298         <dependency>
299             <groupId>commons-io</groupId>
300             <artifactId>commons-io</artifactId>
301         </dependency>
302         <dependency>
303             <groupId>io.prometheus</groupId>
304             <artifactId>simpleclient_logback</artifactId>
305         </dependency>
306
307         <!-- Swagger v3 annotations -->
308         <dependency>
309             <groupId>io.swagger.core.v3</groupId>
310             <artifactId>swagger-annotations</artifactId>
311         </dependency>
312     </dependencies>
313
314 </project>