Release policy/apex-pdp
[policy/apex-pdp.git] / packages / apex-pdp-package-full / pom.xml
1 <!--
2   ============LICENSE_START=======================================================
3    Copyright (C) 2018 Ericsson. All rights reserved.
4    Modifications Copyright (C) 2019-2020, 2022 Nordix Foundation
5    Modifications Copyright (C) 2019-2020, 2022 Bell Canada.
6    Modifications Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
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
20   SPDX-License-Identifier: Apache-2.0
21   ============LICENSE_END=========================================================
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/xsd/maven-4.0.0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26     <parent>
27         <groupId>org.onap.policy.apex-pdp.packages</groupId>
28         <artifactId>apex-packages</artifactId>
29         <version>2.9.1</version>
30     </parent>
31
32     <artifactId>apex-pdp-package-full</artifactId>
33     <packaging>pom</packaging>
34     <name>${project.artifactId}</name>
35     <description>[${project.parent.artifactId}] packaging, with all optional functionality, clients, servlets, and examples included</description>
36
37     <properties>
38         <install.package.name>${project.artifactId}</install.package.name>
39     </properties>
40
41     <dependencies>
42         <dependency>
43             <groupId>org.onap.policy.apex-pdp.services</groupId>
44             <artifactId>services-engine</artifactId>
45             <version>${project.version}</version>
46         </dependency>
47         <dependency>
48             <groupId>org.onap.policy.apex-pdp.services</groupId>
49             <artifactId>services-onappf</artifactId>
50             <version>${project.version}</version>
51         </dependency>
52
53         <!-- Plugins for Context Distribution -->
54         <dependency>
55             <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId>
56             <artifactId>plugins-context-distribution-hazelcast</artifactId>
57             <version>${project.version}</version>
58         </dependency>
59         <dependency>
60             <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId>
61             <artifactId>plugins-context-distribution-infinispan</artifactId>
62             <version>${project.version}</version>
63         </dependency>
64
65         <!-- Plugins for Context Locking -->
66         <dependency>
67             <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId>
68             <artifactId>plugins-context-locking-hazelcast</artifactId>
69             <version>${project.version}</version>
70         </dependency>
71         <dependency>
72             <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId>
73             <artifactId>plugins-context-locking-curator</artifactId>
74             <version>${project.version}</version>
75         </dependency>
76
77         <!-- Plugins for Context Schemas -->
78         <dependency>
79             <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-schema</groupId>
80             <artifactId>plugins-context-schema-avro</artifactId>
81             <version>${project.version}</version>
82         </dependency>
83         <dependency>
84             <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-schema</groupId>
85             <artifactId>plugins-context-schema-json</artifactId>
86             <version>${project.version}</version>
87         </dependency>
88
89         <!-- Plugins for Executors -->
90         <dependency>
91             <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
92             <artifactId>plugins-executor-java</artifactId>
93             <version>${project.version}</version>
94         </dependency>
95         <dependency>
96             <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
97             <artifactId>plugins-executor-javascript</artifactId>
98             <version>${project.version}</version>
99         </dependency>
100         <dependency>
101             <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
102             <artifactId>plugins-executor-jruby</artifactId>
103             <version>${project.version}</version>
104         </dependency>
105         <!-- Jython support disabled due to security concerns -->
106         <!-- dependency>
107             <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
108             <artifactId>plugins-executor-jython</artifactId>
109             <version>${project.version}</version>
110         </dependency-->
111         <dependency>
112             <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
113             <artifactId>plugins-executor-mvel</artifactId>
114             <version>${project.version}</version>
115         </dependency>
116
117         <!-- Plugins for event carrier technologies -->
118         <dependency>
119             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
120             <artifactId>plugins-event-carrier-kafka</artifactId>
121             <version>${project.version}</version>
122         </dependency>
123         <dependency>
124             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
125             <artifactId>plugins-event-carrier-jms</artifactId>
126             <version>${project.version}</version>
127         </dependency>
128         <dependency>
129             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
130             <artifactId>plugins-event-carrier-restclient</artifactId>
131             <version>${project.version}</version>
132         </dependency>
133         <dependency>
134             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
135             <artifactId>plugins-event-carrier-restserver</artifactId>
136             <version>${project.version}</version>
137         </dependency>
138         <dependency>
139             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
140             <artifactId>plugins-event-carrier-restrequestor</artifactId>
141             <version>${project.version}</version>
142         </dependency>
143         <dependency>
144             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
145             <artifactId>plugins-event-carrier-grpc</artifactId>
146             <version>${project.version}</version>
147         </dependency>
148         <!-- Benchmark test event generator -->
149         <dependency>
150             <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
151             <artifactId>performance-benchmark-test</artifactId>
152             <version>${project.version}</version>
153         </dependency>
154
155         <!-- Plugins for event protocols -->
156         <dependency>
157             <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId>
158             <artifactId>plugins-event-protocol-jms</artifactId>
159             <version>${project.version}</version>
160         </dependency>
161
162         <!-- Authoring and Editors -->
163         <dependency>
164             <groupId>org.onap.policy.apex-pdp.auth</groupId>
165             <artifactId>cli-editor</artifactId>
166             <version>${project.version}</version>
167         </dependency>
168
169         <!-- Tools -->
170         <dependency>
171             <groupId>org.onap.policy.apex-pdp.tools</groupId>
172             <artifactId>simple-wsclient</artifactId>
173             <version>${project.version}</version>
174         </dependency>
175         <dependency>
176             <groupId>org.onap.policy.apex-pdp.tools</groupId>
177             <artifactId>model-generator</artifactId>
178             <version>${project.version}</version>
179         </dependency>
180
181         <!-- Test Data used by examples -->
182         <dependency>
183             <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
184             <artifactId>integration-common</artifactId>
185             <version>${project.version}</version>
186         </dependency>
187
188         <!-- Sample Examples -->
189         <dependency>
190             <groupId>org.onap.policy.apex-pdp.examples</groupId>
191             <artifactId>examples-aadm</artifactId>
192             <version>${project.version}</version>
193         </dependency>
194         <dependency>
195             <groupId>org.onap.policy.apex-pdp.examples</groupId>
196             <artifactId>examples-adaptive</artifactId>
197             <version>${project.version}</version>
198         </dependency>
199         <dependency>
200             <groupId>org.onap.policy.apex-pdp.examples</groupId>
201             <artifactId>examples-myfirstpolicy</artifactId>
202             <version>${project.version}</version>
203         </dependency>
204         <dependency>
205             <groupId>org.onap.policy.apex-pdp.examples</groupId>
206             <artifactId>examples-pcvs</artifactId>
207             <version>${project.version}</version>
208         </dependency>
209         <dependency>
210             <groupId>org.onap.policy.apex-pdp.examples</groupId>
211             <artifactId>examples-decisionmaker</artifactId>
212             <version>${project.version}</version>
213         </dependency>
214         <dependency>
215             <groupId>org.onap.policy.apex-pdp.examples</groupId>
216             <artifactId>examples-periodic</artifactId>
217             <version>${project.version}</version>
218         </dependency>
219         <dependency>
220             <groupId>org.onap.policy.apex-pdp.examples</groupId>
221             <artifactId>examples-onap-vcpe</artifactId>
222             <version>${project.version}</version>
223         </dependency>
224         <dependency>
225             <groupId>org.onap.policy.apex-pdp.examples</groupId>
226             <artifactId>examples-onap-bbs</artifactId>
227             <version>${project.version}</version>
228         </dependency>
229         <dependency>
230             <groupId>org.onap.policy.apex-pdp.examples</groupId>
231             <artifactId>examples-grpc</artifactId>
232             <version>${project.version}</version>
233         </dependency>
234     </dependencies>
235
236     <build>
237         <filters>
238             <filter>src/main/resources/properties/db.properties</filter>
239         </filters>
240         <resources>
241             <resource>
242                 <directory>src/main/resources/META-INF</directory>
243                 <filtering>true</filtering>
244                 <includes>
245                     <include>**/*.xml</include>
246                 </includes>
247             </resource>
248         </resources>
249         <plugins>
250             <!-- Copy required resources and examples -->
251             <plugin>
252                 <groupId>org.apache.maven.plugins</groupId>
253                 <artifactId>maven-dependency-plugin</artifactId>
254                 <executions>
255                     <execution>
256                         <id>unpack-etc-examples</id>
257                         <phase>package</phase>
258                         <goals>
259                             <goal>unpack</goal>
260                         </goals>
261                         <configuration>
262                             <artifactItems>
263                                 <artifactItem>
264                                     <groupId>org.onap.policy.apex-pdp.services</groupId>
265                                     <artifactId>services-onappf</artifactId>
266                                     <version>${project.version}</version>
267                                     <type>jar</type>
268                                     <overWrite>false</overWrite>
269                                     <outputDirectory>${project.build.directory}/etc/onappf</outputDirectory>
270                                     <includes>config/*</includes>
271                                 </artifactItem>
272                                 <artifactItem>
273                                     <groupId>org.onap.policy.apex-pdp.auth</groupId>
274                                     <artifactId>cli-editor</artifactId>
275                                     <version>${project.version}</version>
276                                     <type>jar</type>
277                                     <overWrite>false</overWrite>
278                                     <outputDirectory>${project.build.directory}</outputDirectory>
279                                     <includes>etc/**/*,examples/**/*</includes>
280                                 </artifactItem>
281                                 <artifactItem>
282                                     <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
283                                     <artifactId>integration-common</artifactId>
284                                     <version>${project.version}</version>
285                                     <type>jar</type>
286                                     <overWrite>false</overWrite>
287                                     <outputDirectory>${project.build.directory}</outputDirectory>
288                                     <includes>etc/**/*,examples/**/*</includes>
289                                 </artifactItem>
290                                 <artifactItem>
291                                     <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
292                                     <artifactId>performance-benchmark-test</artifactId>
293                                     <version>${project.version}</version>
294                                     <type>jar</type>
295                                     <overWrite>false</overWrite>
296                                     <outputDirectory>${project.build.directory}</outputDirectory>
297                                     <includes>examples/**/*</includes>
298                                 </artifactItem>
299                                 <artifactItem>
300                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
301                                     <artifactId>examples-aadm</artifactId>
302                                     <version>${project.version}</version>
303                                     <type>jar</type>
304                                     <overWrite>false</overWrite>
305                                     <outputDirectory>${project.build.directory}</outputDirectory>
306                                     <includes>etc/**/*,examples/**/*</includes>
307                                 </artifactItem>
308                                 <artifactItem>
309                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
310                                     <artifactId>examples-adaptive</artifactId>
311                                     <version>${project.version}</version>
312                                     <type>jar</type>
313                                     <overWrite>false</overWrite>
314                                     <outputDirectory>${project.build.directory}</outputDirectory>
315                                     <includes>etc/**/*,examples/**/*</includes>
316                                 </artifactItem>
317                                 <artifactItem>
318                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
319                                     <artifactId>examples-myfirstpolicy</artifactId>
320                                     <version>${project.version}</version>
321                                     <type>jar</type>
322                                     <overWrite>false</overWrite>
323                                     <outputDirectory>${project.build.directory}</outputDirectory>
324                                     <includes>etc/**/*,examples/**/*</includes>
325                                 </artifactItem>
326                                 <artifactItem>
327                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
328                                     <artifactId>examples-pcvs</artifactId>
329                                     <version>${project.version}</version>
330                                     <type>jar</type>
331                                     <overWrite>false</overWrite>
332                                     <outputDirectory>${project.build.directory}</outputDirectory>
333                                     <includes>etc/**/*,examples/**/*</includes>
334                                 </artifactItem>
335                                 <artifactItem>
336                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
337                                     <artifactId>examples-decisionmaker</artifactId>
338                                     <version>${project.version}</version>
339                                     <type>jar</type>
340                                     <overWrite>false</overWrite>
341                                     <outputDirectory>${project.build.directory}</outputDirectory>
342                                     <includes>etc/**/*,examples/**/*</includes>
343                                 </artifactItem>
344                                 <artifactItem>
345                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
346                                     <artifactId>examples-decisionmaker</artifactId>
347                                     <version>${project.version}</version>
348                                     <type>jar</type>
349                                     <overWrite>false</overWrite>
350                                     <outputDirectory>${project.build.directory}/examples/models/DecisionMaker</outputDirectory>
351                                     <includes>*PolicyModel.json</includes>
352                                 </artifactItem>
353                                 <artifactItem>
354                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
355                                     <artifactId>examples-periodic</artifactId>
356                                     <version>${project.version}</version>
357                                     <type>jar</type>
358                                     <overWrite>false</overWrite>
359                                     <outputDirectory>${project.build.directory}</outputDirectory>
360                                     <includes>etc/**/*,examples/**/*</includes>
361                                 </artifactItem>
362                                 <artifactItem>
363                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
364                                     <artifactId>examples-periodic</artifactId>
365                                     <version>${project.version}</version>
366                                     <type>jar</type>
367                                     <overWrite>false</overWrite>
368                                     <outputDirectory>${project.build.directory}/examples/models/Periodic</outputDirectory>
369                                     <includes>PeriodicPolicyModel.json</includes>
370                                 </artifactItem>
371                                 <artifactItem>
372                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
373                                     <artifactId>examples-onap-vcpe</artifactId>
374                                     <version>${project.version}</version>
375                                     <type>jar</type>
376                                     <overWrite>false</overWrite>
377                                     <outputDirectory>${project.build.directory}</outputDirectory>
378                                     <includes>etc/**/*,examples/**/*</includes>
379                                 </artifactItem>
380                                 <artifactItem>
381                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
382                                     <artifactId>examples-onap-vcpe</artifactId>
383                                     <version>${project.version}</version>
384                                     <type>jar</type>
385                                     <overWrite>false</overWrite>
386                                     <outputDirectory>${project.build.directory}/examples/models/ONAPvCPE</outputDirectory>
387                                     <includes>ONAPvCPEPolicyModel.json</includes>
388                                 </artifactItem>
389                                 <artifactItem>
390                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
391                                     <artifactId>examples-onap-bbs</artifactId>
392                                     <version>${project.version}</version>
393                                     <type>jar</type>
394                                     <overWrite>false</overWrite>
395                                     <outputDirectory>${project.build.directory}</outputDirectory>
396                                     <includes>etc/**/*,examples/**/*</includes>
397                                 </artifactItem>
398                                 <artifactItem>
399                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
400                                     <artifactId>examples-onap-bbs</artifactId>
401                                     <version>${project.version}</version>
402                                     <type>jar</type>
403                                     <overWrite>false</overWrite>
404                                     <outputDirectory>${project.build.directory}/examples/models/ONAPBBS</outputDirectory>
405                                     <includes>NomadicONTPolicyModel.json</includes>
406                                 </artifactItem>
407                                 <artifactItem>
408                                     <groupId>org.onap.policy.apex-pdp.tools</groupId>
409                                     <artifactId>tools-common</artifactId>
410                                     <version>${project.version}</version>
411                                     <type>jar</type>
412                                     <overWrite>false</overWrite>
413                                     <outputDirectory>${project.build.directory}/etc</outputDirectory>
414                                     <includes>/app-version.txt</includes>
415                                 </artifactItem>
416                                 <artifactItem>
417                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
418                                     <artifactId>examples-grpc</artifactId>
419                                     <version>${project.version}</version>
420                                     <type>jar</type>
421                                     <overWrite>false</overWrite>
422                                     <outputDirectory>${project.build.directory}</outputDirectory>
423                                     <includes>etc/**/*,examples/**/*</includes>
424                                 </artifactItem>
425                                 <artifactItem>
426                                     <groupId>org.onap.policy.apex-pdp.examples</groupId>
427                                     <artifactId>examples-grpc</artifactId>
428                                     <version>${project.version}</version>
429                                     <type>jar</type>
430                                     <overWrite>false</overWrite>
431                                     <outputDirectory>${project.build.directory}/examples/models/APEXgRPC</outputDirectory>
432                                     <includes>APEXgRPCPolicy.json</includes>
433                                 </artifactItem>
434                             </artifactItems>
435                             <overWriteReleases>true</overWriteReleases>
436                             <overWriteSnapshots>true</overWriteSnapshots>
437                         </configuration>
438                     </execution>
439                     <execution>
440                         <id>copy-fat-jars</id>
441                         <phase>package</phase>
442                         <goals>
443                             <goal>copy</goal>
444                         </goals>
445                         <configuration>
446                             <artifactItems>
447                                 <artifactItem>
448                                     <groupId>org.onap.policy.apex-pdp.tools</groupId>
449                                     <artifactId>simple-wsclient</artifactId>
450                                     <version>${project.version}</version>
451                                     <type>jar</type>
452                                     <classifier>jar-with-dependencies</classifier>
453                                     <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
454                                 </artifactItem>
455                             </artifactItems>
456                             <overWriteReleases>true</overWriteReleases>
457                             <overWriteSnapshots>true</overWriteSnapshots>
458                         </configuration>
459                     </execution>
460
461                 </executions>
462             </plugin>
463
464             <!-- Build the tar ball -->
465             <plugin>
466                 <groupId>org.apache.maven.plugins</groupId>
467                 <artifactId>maven-assembly-plugin</artifactId>
468                 <executions>
469                     <execution>
470                         <id>generate-complete-tar</id>
471                         <phase>package</phase>
472                         <goals>
473                             <goal>single</goal>
474                         </goals>
475                         <configuration>
476                             <descriptors>
477                                 <descriptor>src/main/package/tarball/assembly.xml</descriptor>
478                             </descriptors>
479                             <finalName>${project.artifactId}-${project.version}</finalName>
480                             <appendAssemblyId>false</appendAssemblyId>
481                         </configuration>
482                     </execution>
483                 </executions>
484             </plugin>
485         </plugins>
486     </build>
487     <profiles>
488         <profile>
489             <id>only-eclipse</id>
490             <activation>
491                 <property>
492                     <name>m2e.version</name>
493                 </property>
494             </activation>
495             <build>
496                 <pluginManagement>
497                     <plugins>
498                         <plugin>
499                             <groupId>org.eclipse.m2e</groupId>
500                             <artifactId>lifecycle-mapping</artifactId>
501                             <configuration>
502                                 <lifecycleMappingMetadata>
503                                     <pluginExecutions>
504                                         <pluginExecution>
505                                             <pluginExecutionFilter>
506                                                 <groupId>org.apache.maven.plugins</groupId>
507                                                 <artifactId>maven-dependency-plugin</artifactId>
508                                                 <versionRange>[2.0,)</versionRange>
509                                                 <goals>
510                                                     <goal>unpack</goal>
511                                                     <goal>copy</goal>
512                                                 </goals>
513                                             </pluginExecutionFilter>
514                                             <action>
515                                                 <ignore />
516                                             </action>
517                                         </pluginExecution>
518                                     </pluginExecutions>
519                                 </lifecycleMappingMetadata>
520                             </configuration>
521                         </plugin>
522                     </plugins>
523                 </pluginManagement>
524             </build>
525         </profile>
526     </profiles>
527 </project>