2 ============LICENSE_START=======================================================
3 Copyright (C) 2018 Ericsson. All rights reserved.
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
9 http://www.apache.org/licenses/LICENSE-2.0
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.
17 SPDX-License-Identifier: Apache-2.0
18 ============LICENSE_END=========================================================
20 <project xmlns="http://maven.apache.org/POM/4.0.0" 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>
24 <groupId>org.onap.policy.apex-pdp.packages</groupId>
25 <artifactId>packages</artifactId>
26 <version>2.1.0-SNAPSHOT</version>
29 <artifactId>apex-pdp-package-full</artifactId>
30 <name>${project.artifactId}</name>
31 <description>[${project.parent.artifactId}] packaging, with all optional functionality, clients, servlets, and examples included</description>
34 <install.package.name>${project.artifactId}</install.package.name>
39 <groupId>org.onap.policy.apex-pdp.services</groupId>
40 <artifactId>services-engine</artifactId>
41 <version>${project.version}</version>
44 <groupId>org.onap.policy.apex-pdp.services</groupId>
45 <artifactId>services-onappf</artifactId>
46 <version>${project.version}</version>
48 <!-- Client Servlet applications -->
50 <groupId>org.onap.policy.apex-pdp.client</groupId>
51 <artifactId>client-full</artifactId>
53 <version>${project.version}</version>
56 <groupId>org.onap.policy.apex-pdp.client</groupId>
57 <artifactId>client-editor</artifactId>
59 <version>${project.version}</version>
62 <groupId>org.onap.policy.apex-pdp.client</groupId>
63 <artifactId>client-deployment</artifactId>
65 <version>${project.version}</version>
68 <groupId>org.onap.policy.apex-pdp.client</groupId>
69 <artifactId>client-monitoring</artifactId>
71 <version>${project.version}</version>
74 <!-- Plugins for Context Distribution -->
76 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId>
77 <artifactId>plugins-context-distribution-hazelcast</artifactId>
78 <version>${project.version}</version>
81 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId>
82 <artifactId>plugins-context-distribution-infinispan</artifactId>
83 <version>${project.version}</version>
86 <!-- Plugins for Context Locking -->
88 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId>
89 <artifactId>plugins-context-locking-hazelcast</artifactId>
90 <version>${project.version}</version>
93 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId>
94 <artifactId>plugins-context-locking-curator</artifactId>
95 <version>${project.version}</version>
98 <!-- Plugins for Context Schemas -->
100 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-schema</groupId>
101 <artifactId>plugins-context-schema-avro</artifactId>
102 <version>${project.version}</version>
105 <!-- Plugins for Executors -->
107 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
108 <artifactId>plugins-executor-java</artifactId>
109 <version>${project.version}</version>
112 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
113 <artifactId>plugins-executor-javascript</artifactId>
114 <version>${project.version}</version>
117 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
118 <artifactId>plugins-executor-jruby</artifactId>
119 <version>${project.version}</version>
122 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
123 <artifactId>plugins-executor-jython</artifactId>
124 <version>${project.version}</version>
127 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
128 <artifactId>plugins-executor-mvel</artifactId>
129 <version>${project.version}</version>
132 <!-- Plugins for Persistence of Models over JPA -->
134 <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence.plugins-persistence-jpa</groupId>
135 <artifactId>plugins-persistence-jpa-eclipselink</artifactId>
136 <version>${project.version}</version>
139 <!-- Plugins for event carrier technologies -->
141 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
142 <artifactId>plugins-event-carrier-kafka</artifactId>
143 <version>${project.version}</version>
146 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
147 <artifactId>plugins-event-carrier-websocket</artifactId>
148 <version>${project.version}</version>
151 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
152 <artifactId>plugins-event-carrier-jms</artifactId>
153 <version>${project.version}</version>
156 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
157 <artifactId>plugins-event-carrier-restclient</artifactId>
158 <version>${project.version}</version>
161 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
162 <artifactId>plugins-event-carrier-restserver</artifactId>
163 <version>${project.version}</version>
166 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
167 <artifactId>plugins-event-carrier-restrequestor</artifactId>
168 <version>${project.version}</version>
171 <!-- Benchmark test event generator -->
173 <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
174 <artifactId>performance-benchmark-test</artifactId>
175 <version>${project.version}</version>
178 <!-- Plugins for event protocols -->
180 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId>
181 <artifactId>plugins-event-protocol-xml</artifactId>
182 <version>${project.version}</version>
185 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId>
186 <artifactId>plugins-event-protocol-jms</artifactId>
187 <version>${project.version}</version>
190 <!-- Authoring and Editors -->
192 <groupId>org.onap.policy.apex-pdp.auth</groupId>
193 <artifactId>cli-editor</artifactId>
194 <version>${project.version}</version>
199 <groupId>org.onap.policy.apex-pdp.tools</groupId>
200 <artifactId>simple-wsclient</artifactId>
201 <version>${project.version}</version>
204 <groupId>org.onap.policy.apex-pdp.tools</groupId>
205 <artifactId>model-generator</artifactId>
206 <version>${project.version}</version>
209 <!-- Test Data used by examples -->
211 <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
212 <artifactId>integration-common</artifactId>
213 <version>${project.version}</version>
216 <!-- Sample Examples -->
218 <groupId>org.onap.policy.apex-pdp.examples</groupId>
219 <artifactId>examples-aadm</artifactId>
220 <version>${project.version}</version>
223 <groupId>org.onap.policy.apex-pdp.examples</groupId>
224 <artifactId>examples-adaptive</artifactId>
225 <version>${project.version}</version>
228 <groupId>org.onap.policy.apex-pdp.examples</groupId>
229 <artifactId>examples-myfirstpolicy</artifactId>
230 <version>${project.version}</version>
233 <groupId>org.onap.policy.apex-pdp.examples</groupId>
234 <artifactId>examples-pcvs</artifactId>
235 <version>${project.version}</version>
238 <groupId>org.onap.policy.apex-pdp.examples</groupId>
239 <artifactId>examples-decisionmaker</artifactId>
240 <version>${project.version}</version>
243 <groupId>org.onap.policy.apex-pdp.examples</groupId>
244 <artifactId>examples-periodic</artifactId>
245 <version>${project.version}</version>
248 <groupId>org.onap.policy.apex-pdp.examples</groupId>
249 <artifactId>examples-onap-vcpe</artifactId>
250 <version>${project.version}</version>
253 <groupId>org.onap.policy.apex-pdp.examples</groupId>
254 <artifactId>examples-servlet</artifactId>
256 <version>${project.version}</version>
262 <!-- Copy required resources and examples -->
264 <groupId>org.apache.maven.plugins</groupId>
265 <artifactId>maven-dependency-plugin</artifactId>
268 <id>unpack-etc-examples</id>
269 <phase>package</phase>
276 <groupId>org.onap.policy.apex-pdp.services</groupId>
277 <artifactId>services-onappf</artifactId>
278 <version>${project.version}</version>
280 <overWrite>false</overWrite>
281 <outputDirectory>${project.build.directory}/etc/onappf</outputDirectory>
282 <includes>config/*</includes>
285 <groupId>org.onap.policy.apex-pdp.auth</groupId>
286 <artifactId>cli-editor</artifactId>
287 <version>${project.version}</version>
289 <overWrite>false</overWrite>
290 <outputDirectory>${project.build.directory}</outputDirectory>
291 <includes>etc/**/*,examples/**/*</includes>
294 <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
295 <artifactId>integration-common</artifactId>
296 <version>${project.version}</version>
298 <overWrite>false</overWrite>
299 <outputDirectory>${project.build.directory}</outputDirectory>
300 <includes>etc/**/*,examples/**/*</includes>
303 <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
304 <artifactId>performance-benchmark-test</artifactId>
305 <version>${project.version}</version>
307 <overWrite>false</overWrite>
308 <outputDirectory>${project.build.directory}</outputDirectory>
309 <includes>examples/**/*</includes>
312 <groupId>org.onap.policy.apex-pdp.examples</groupId>
313 <artifactId>examples-aadm</artifactId>
314 <version>${project.version}</version>
316 <overWrite>false</overWrite>
317 <outputDirectory>${project.build.directory}</outputDirectory>
318 <includes>etc/**/*,examples/**/*</includes>
321 <groupId>org.onap.policy.apex-pdp.examples</groupId>
322 <artifactId>examples-adaptive</artifactId>
323 <version>${project.version}</version>
325 <overWrite>false</overWrite>
326 <outputDirectory>${project.build.directory}</outputDirectory>
327 <includes>etc/**/*,examples/**/*</includes>
330 <groupId>org.onap.policy.apex-pdp.examples</groupId>
331 <artifactId>examples-myfirstpolicy</artifactId>
332 <version>${project.version}</version>
334 <overWrite>false</overWrite>
335 <outputDirectory>${project.build.directory}</outputDirectory>
336 <includes>etc/**/*,examples/**/*</includes>
339 <groupId>org.onap.policy.apex-pdp.examples</groupId>
340 <artifactId>examples-pcvs</artifactId>
341 <version>${project.version}</version>
343 <overWrite>false</overWrite>
344 <outputDirectory>${project.build.directory}</outputDirectory>
345 <includes>etc/**/*,examples/**/*</includes>
348 <groupId>org.onap.policy.apex-pdp.examples</groupId>
349 <artifactId>examples-decisionmaker</artifactId>
350 <version>${project.version}</version>
352 <overWrite>false</overWrite>
353 <outputDirectory>${project.build.directory}</outputDirectory>
354 <includes>etc/**/*,examples/**/*</includes>
357 <groupId>org.onap.policy.apex-pdp.examples</groupId>
358 <artifactId>examples-decisionmaker</artifactId>
359 <version>${project.version}</version>
361 <overWrite>false</overWrite>
362 <outputDirectory>${project.build.directory}/examples/models/DecisionMaker</outputDirectory>
363 <includes>*PolicyModel.json</includes>
366 <groupId>org.onap.policy.apex-pdp.examples</groupId>
367 <artifactId>examples-periodic</artifactId>
368 <version>${project.version}</version>
370 <overWrite>false</overWrite>
371 <outputDirectory>${project.build.directory}</outputDirectory>
372 <includes>etc/**/*,examples/**/*</includes>
375 <groupId>org.onap.policy.apex-pdp.examples</groupId>
376 <artifactId>examples-periodic</artifactId>
377 <version>${project.version}</version>
379 <overWrite>false</overWrite>
380 <outputDirectory>${project.build.directory}/examples/models/Periodic</outputDirectory>
381 <includes>PeriodicPolicyModel.json</includes>
384 <groupId>org.onap.policy.apex-pdp.examples</groupId>
385 <artifactId>examples-onap-vcpe</artifactId>
386 <version>${project.version}</version>
388 <overWrite>false</overWrite>
389 <outputDirectory>${project.build.directory}</outputDirectory>
390 <includes>etc/**/*,examples/**/*</includes>
393 <groupId>org.onap.policy.apex-pdp.examples</groupId>
394 <artifactId>examples-onap-vcpe</artifactId>
395 <version>${project.version}</version>
397 <overWrite>false</overWrite>
398 <outputDirectory>${project.build.directory}/examples/models/ONAPvCPE</outputDirectory>
399 <includes>ONAPvCPEPolicyModel.json</includes>
402 <groupId>org.onap.policy.apex-pdp.examples</groupId>
403 <artifactId>examples-servlet</artifactId>
404 <version>${project.version}</version>
406 <overWrite>false</overWrite>
407 <outputDirectory>${project.build.directory}/examples/servlet</outputDirectory>
408 <includes>readme_examples-servlet.txt</includes>
411 <groupId>org.onap.policy.apex-pdp.tools</groupId>
412 <artifactId>tools-common</artifactId>
413 <version>${project.version}</version>
415 <overWrite>false</overWrite>
416 <outputDirectory>${project.build.directory}/etc</outputDirectory>
417 <includes>/app-version.txt</includes>
420 <overWriteReleases>true</overWriteReleases>
421 <overWriteSnapshots>true</overWriteSnapshots>
425 <id>copy-fat-jars</id>
426 <phase>package</phase>
433 <groupId>org.onap.policy.apex-pdp.tools</groupId>
434 <artifactId>simple-wsclient</artifactId>
435 <version>${project.version}</version>
437 <classifier>jar-with-dependencies</classifier>
438 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
441 <groupId>org.onap.policy.apex-pdp.client</groupId>
442 <artifactId>client-monitoring</artifactId>
443 <version>${project.version}</version>
444 <classifier>monitoring</classifier>
445 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
448 <groupId>org.onap.policy.apex-pdp.client</groupId>
449 <artifactId>client-editor</artifactId>
450 <version>${project.version}</version>
451 <classifier>editor</classifier>
452 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
455 <groupId>org.onap.policy.apex-pdp.client</groupId>
456 <artifactId>client-deployment</artifactId>
457 <version>${project.version}</version>
458 <classifier>deployment</classifier>
459 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
462 <groupId>org.onap.policy.apex-pdp.client</groupId>
463 <artifactId>client-full</artifactId>
464 <version>${project.version}</version>
465 <classifier>full</classifier>
466 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
469 <overWriteReleases>true</overWriteReleases>
470 <overWriteSnapshots>true</overWriteSnapshots>
477 <!-- Build the tar ball -->
479 <groupId>org.apache.maven.plugins</groupId>
480 <artifactId>maven-assembly-plugin</artifactId>
483 <id>generate-complete-tar</id>
484 <phase>package</phase>
490 <descriptor>src/main/package/tarball/assembly.xml</descriptor>
492 <finalName>${project.artifactId}-${project.version}</finalName>
498 <artifactId>maven-antrun-plugin</artifactId>
501 <phase>package</phase>
505 src="${project.build.directory}/${project.artifactId}-${project.version}-tarball.tar.gz"
506 dest="${project.build.directory}/install_hierarchy" compression="gzip" />
514 <id>fix-permissions</id>
515 <phase>package</phase>
518 <chmod file="${project.build.directory}/install_hierarchy/bin/*" perm="755" />
527 <!-- Build the dpkg distribution -->
529 <groupId>org.vafer</groupId>
530 <artifactId>jdeb</artifactId>
531 <version>1.5</version>
534 <phase>package</phase>
539 <deb>${project.build.directory}/${project.artifactId}-${project.version}.deb</deb>
540 <controlDir>${basedir}/src/main/package/control</controlDir>
542 <!-- Copy the Apex run time configuration -->
544 <src>${project.build.directory}/install_hierarchy/lib</src>
545 <type>directory</type>
549 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/lib</prefix>
550 <filemode>755</filemode>
554 <src>${project.build.directory}/install_hierarchy/bin</src>
555 <type>directory</type>
559 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/bin</prefix>
563 <src>${project.build.directory}/install_hierarchy/etc</src>
564 <type>directory</type>
568 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/etc</prefix>
572 <src>${project.build.directory}/install_hierarchy/war</src>
573 <type>directory</type>
577 <prefix>/opt/app/policy/${install.package.name}-${project.version}/war</prefix>
581 <src>${project.build.directory}/install_hierarchy/examples</src>
582 <type>directory</type>
586 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/examples</prefix>
601 <family>Linux</family>
606 <!-- Build the rpm distribution -->
607 <!-- Skiping RPM Build for now, due to rpmbuild package not available on Jenkins servers -->
609 <groupId>org.codehaus.mojo</groupId>
610 <artifactId>rpm-maven-plugin</artifactId>
611 <version>2.2.0</version>
612 <extensions>true</extensions>
615 <phase>package</phase>
622 <name>${project.artifactId}</name>
623 <copyright>2015 Ericsson AB All rights reserved</copyright>
624 <distribution>${project.parent.artifactId}</distribution>
625 <group>ERI-APEX</group>
626 <packager>Ericsson</packager>
627 <prefix>/opt/app/policy/apex-pdp</prefix>
628 <changelogFile>src/rpm/changelog</changelogFile>
629 <needarch>noarch</needarch>
630 <targetVendor>redhat</targetVendor>
631 <targetOS>linux</targetOS>
632 <version>${project.version}</version>
634 <defineStatement>install_dir /opt/app/policy/apex-pdp</defineStatement>
638 <directory>/opt/app/policy/${project.artifactId}-${project.version}/lib</directory>
639 <username>root</username>
640 <groupname>root</groupname>
643 <location>${project.build.directory}/install_hierarchy/lib</location>
648 <directory>/opt/app/policy/${project.artifactId}-${project.version}/bin</directory>
649 <username>root</username>
650 <groupname>root</groupname>
653 <location>${project.build.directory}/install_hierarchy/bin</location>
658 <directory>/opt/app/policy/${project.artifactId}-${project.version}/etc</directory>
659 <username>root</username>
660 <groupname>root</groupname>
663 <location>${project.build.directory}/install_hierarchy/etc</location>
668 <directory>/opt/app/policy/${install.package.name}-${project.version}/war</directory>
669 <username>root</username>
670 <groupname>root</groupname>
673 <location>${project.build.directory}/install_hierarchy/war</location>
678 <directory>/opt/app/policy/${project.artifactId}-${project.version}/examples</directory>
679 <username>root</username>
680 <groupname>root</groupname>
683 <location>${project.build.directory}/install_hierarchy/examples</location>
688 <preinstallScriptlet>
689 <scriptFile>src/main/package/control/preinst</scriptFile>
690 </preinstallScriptlet>
691 <postinstallScriptlet>
692 <scriptFile>src/main/package/control/postinst</scriptFile>
693 </postinstallScriptlet>
695 <scriptFile>src/main/package/control/prerm</scriptFile>
696 </preremoveScriptlet>
697 <postremoveScriptlet>
698 <scriptFile>src/main/package/control/postrm</scriptFile>
699 </postremoveScriptlet>
703 <groupId>org.codehaus.mojo</groupId>
704 <artifactId>exec-maven-plugin</artifactId>
707 <phase>package</phase>
714 <executable>sh</executable>
716 <argument>-c</argument>
718 ${project.build.directory}/rpm/${project.artifactId}/RPMS/noarch/${project.artifactId}-${project.version}*.noarch.rpm \
720 ${project.build.directory}/${project.artifactId}-${project.version}.rpm</argument>
725 <groupId>org.codehaus.mojo</groupId>
726 <artifactId>build-helper-maven-plugin</artifactId>
727 <version>3.0.0</version>
730 <id>attach-artifacts</id>
731 <phase>package</phase>
733 <goal>attach-artifact</goal>
738 <file>${project.build.directory}/${project.artifactId}-${project.version}.rpm</file>
750 <id>only-eclipse</id>
753 <name>m2e.version</name>
760 <groupId>org.eclipse.m2e</groupId>
761 <artifactId>lifecycle-mapping</artifactId>
763 <lifecycleMappingMetadata>
766 <pluginExecutionFilter>
767 <groupId>org.apache.maven.plugins</groupId>
768 <artifactId>maven-dependency-plugin</artifactId>
769 <versionRange>[2.0,)</versionRange>
774 </pluginExecutionFilter>
780 </lifecycleMappingMetadata>
792 <name>apexSite</name>
795 <distributionManagement>
797 <id>${project.artifactId}-site</id>
798 <url>${apex.adsite.prefix}/modules/${project.parent.artifactId}/${project.artifactId}/</url>
800 </distributionManagement>