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 <!-- Client Servlet applications -->
46 <groupId>org.onap.policy.apex-pdp.client</groupId>
47 <artifactId>client-full</artifactId>
49 <version>${project.version}</version>
52 <groupId>org.onap.policy.apex-pdp.client</groupId>
53 <artifactId>client-editor</artifactId>
55 <version>${project.version}</version>
58 <groupId>org.onap.policy.apex-pdp.client</groupId>
59 <artifactId>client-deployment</artifactId>
61 <version>${project.version}</version>
64 <groupId>org.onap.policy.apex-pdp.client</groupId>
65 <artifactId>client-monitoring</artifactId>
67 <version>${project.version}</version>
70 <!-- Plugins for Context Distribution -->
72 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId>
73 <artifactId>plugins-context-distribution-hazelcast</artifactId>
74 <version>${project.version}</version>
77 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId>
78 <artifactId>plugins-context-distribution-infinispan</artifactId>
79 <version>${project.version}</version>
82 <!-- Plugins for Context Locking -->
84 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId>
85 <artifactId>plugins-context-locking-hazelcast</artifactId>
86 <version>${project.version}</version>
89 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId>
90 <artifactId>plugins-context-locking-curator</artifactId>
91 <version>${project.version}</version>
94 <!-- Plugins for Context Schemas -->
96 <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-schema</groupId>
97 <artifactId>plugins-context-schema-avro</artifactId>
98 <version>${project.version}</version>
101 <!-- Plugins for Executors -->
103 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
104 <artifactId>plugins-executor-java</artifactId>
105 <version>${project.version}</version>
108 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
109 <artifactId>plugins-executor-javascript</artifactId>
110 <version>${project.version}</version>
113 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
114 <artifactId>plugins-executor-jruby</artifactId>
115 <version>${project.version}</version>
118 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
119 <artifactId>plugins-executor-jython</artifactId>
120 <version>${project.version}</version>
123 <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId>
124 <artifactId>plugins-executor-mvel</artifactId>
125 <version>${project.version}</version>
128 <!-- Plugins for Persistence of Models over JPA -->
130 <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence.plugins-persistence-jpa</groupId>
131 <artifactId>plugins-persistence-jpa-eclipselink</artifactId>
132 <version>${project.version}</version>
135 <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence.plugins-persistence-jpa</groupId>
136 <artifactId>plugins-persistence-jpa-hibernate</artifactId>
137 <version>${project.version}</version>
140 <!-- Plugins for event carrier technologies -->
142 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
143 <artifactId>plugins-event-carrier-kafka</artifactId>
144 <version>${project.version}</version>
147 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
148 <artifactId>plugins-event-carrier-websocket</artifactId>
149 <version>${project.version}</version>
152 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
153 <artifactId>plugins-event-carrier-jms</artifactId>
154 <version>${project.version}</version>
157 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
158 <artifactId>plugins-event-carrier-restclient</artifactId>
159 <version>${project.version}</version>
162 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
163 <artifactId>plugins-event-carrier-restserver</artifactId>
164 <version>${project.version}</version>
167 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId>
168 <artifactId>plugins-event-carrier-restrequestor</artifactId>
169 <version>${project.version}</version>
172 <!-- Benchmark test event generator -->
174 <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
175 <artifactId>performance-benchmark-test</artifactId>
176 <version>${project.version}</version>
179 <!-- Plugins for event protocols -->
181 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId>
182 <artifactId>plugins-event-protocol-xml</artifactId>
183 <version>${project.version}</version>
186 <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId>
187 <artifactId>plugins-event-protocol-jms</artifactId>
188 <version>${project.version}</version>
191 <!-- Authoring and Editors -->
193 <groupId>org.onap.policy.apex-pdp.auth</groupId>
194 <artifactId>cli-editor</artifactId>
195 <version>${project.version}</version>
200 <groupId>org.onap.policy.apex-pdp.tools</groupId>
201 <artifactId>simple-wsclient</artifactId>
202 <version>${project.version}</version>
205 <groupId>org.onap.policy.apex-pdp.tools</groupId>
206 <artifactId>model-generator</artifactId>
207 <version>${project.version}</version>
210 <!-- Test Data used by examples -->
212 <groupId>org.onap.policy.apex-pdp.context</groupId>
213 <artifactId>context-test-utils</artifactId>
214 <version>${project.version}</version>
217 <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
218 <artifactId>integration-common</artifactId>
219 <version>${project.version}</version>
222 <!-- Sample Examples -->
224 <groupId>org.onap.policy.apex-pdp.examples</groupId>
225 <artifactId>examples-aadm</artifactId>
226 <version>${project.version}</version>
229 <groupId>org.onap.policy.apex-pdp.examples</groupId>
230 <artifactId>examples-adaptive</artifactId>
231 <version>${project.version}</version>
234 <groupId>org.onap.policy.apex-pdp.examples</groupId>
235 <artifactId>examples-myfirstpolicy</artifactId>
236 <version>${project.version}</version>
239 <groupId>org.onap.policy.apex-pdp.examples</groupId>
240 <artifactId>examples-pcvs</artifactId>
241 <version>${project.version}</version>
244 <groupId>org.onap.policy.apex-pdp.examples</groupId>
245 <artifactId>examples-decisionmaker</artifactId>
246 <version>${project.version}</version>
249 <groupId>org.onap.policy.apex-pdp.examples</groupId>
250 <artifactId>examples-periodic</artifactId>
251 <version>${project.version}</version>
254 <groupId>org.onap.policy.apex-pdp.examples</groupId>
255 <artifactId>examples-onap-vcpe</artifactId>
256 <version>${project.version}</version>
259 <groupId>org.onap.policy.apex-pdp.examples</groupId>
260 <artifactId>examples-servlet</artifactId>
262 <version>${project.version}</version>
268 <!-- Copy required resources and examples -->
270 <groupId>org.apache.maven.plugins</groupId>
271 <artifactId>maven-dependency-plugin</artifactId>
274 <id>unpack-etc-examples</id>
275 <phase>package</phase>
282 <groupId>org.onap.policy.apex-pdp.auth</groupId>
283 <artifactId>cli-editor</artifactId>
284 <version>${project.version}</version>
286 <overWrite>false</overWrite>
287 <outputDirectory>${project.build.directory}</outputDirectory>
288 <includes>etc/**/*,examples/**/*</includes>
291 <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
292 <artifactId>integration-common</artifactId>
293 <version>${project.version}</version>
295 <overWrite>false</overWrite>
296 <outputDirectory>${project.build.directory}</outputDirectory>
297 <includes>etc/**/*,examples/**/*</includes>
300 <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
301 <artifactId>performance-benchmark-test</artifactId>
302 <version>${project.version}</version>
304 <overWrite>false</overWrite>
305 <outputDirectory>${project.build.directory}</outputDirectory>
306 <includes>examples/**/*</includes>
309 <groupId>org.onap.policy.apex-pdp.examples</groupId>
310 <artifactId>examples-aadm</artifactId>
311 <version>${project.version}</version>
313 <overWrite>false</overWrite>
314 <outputDirectory>${project.build.directory}</outputDirectory>
315 <includes>etc/**/*,examples/**/*</includes>
318 <groupId>org.onap.policy.apex-pdp.examples</groupId>
319 <artifactId>examples-adaptive</artifactId>
320 <version>${project.version}</version>
322 <overWrite>false</overWrite>
323 <outputDirectory>${project.build.directory}</outputDirectory>
324 <includes>etc/**/*,examples/**/*</includes>
327 <groupId>org.onap.policy.apex-pdp.examples</groupId>
328 <artifactId>examples-myfirstpolicy</artifactId>
329 <version>${project.version}</version>
331 <overWrite>false</overWrite>
332 <outputDirectory>${project.build.directory}</outputDirectory>
333 <includes>etc/**/*,examples/**/*</includes>
336 <groupId>org.onap.policy.apex-pdp.examples</groupId>
337 <artifactId>examples-pcvs</artifactId>
338 <version>${project.version}</version>
340 <overWrite>false</overWrite>
341 <outputDirectory>${project.build.directory}</outputDirectory>
342 <includes>etc/**/*,examples/**/*</includes>
345 <groupId>org.onap.policy.apex-pdp.examples</groupId>
346 <artifactId>examples-decisionmaker</artifactId>
347 <version>${project.version}</version>
349 <overWrite>false</overWrite>
350 <outputDirectory>${project.build.directory}</outputDirectory>
351 <includes>etc/**/*,examples/**/*</includes>
354 <groupId>org.onap.policy.apex-pdp.examples</groupId>
355 <artifactId>examples-decisionmaker</artifactId>
356 <version>${project.version}</version>
358 <overWrite>false</overWrite>
359 <outputDirectory>${project.build.directory}/examples/models/DecisionMaker</outputDirectory>
360 <includes>DecisionMakerPolicyModel.json</includes>
363 <groupId>org.onap.policy.apex-pdp.examples</groupId>
364 <artifactId>examples-periodic</artifactId>
365 <version>${project.version}</version>
367 <overWrite>false</overWrite>
368 <outputDirectory>${project.build.directory}</outputDirectory>
369 <includes>etc/**/*,examples/**/*</includes>
372 <groupId>org.onap.policy.apex-pdp.examples</groupId>
373 <artifactId>examples-periodic</artifactId>
374 <version>${project.version}</version>
376 <overWrite>false</overWrite>
377 <outputDirectory>${project.build.directory}/examples/models/Periodic</outputDirectory>
378 <includes>PeriodicPolicyModel.json</includes>
381 <groupId>org.onap.policy.apex-pdp.examples</groupId>
382 <artifactId>examples-onap-vcpe</artifactId>
383 <version>${project.version}</version>
385 <overWrite>false</overWrite>
386 <outputDirectory>${project.build.directory}</outputDirectory>
387 <includes>etc/**/*,examples/**/*</includes>
390 <groupId>org.onap.policy.apex-pdp.examples</groupId>
391 <artifactId>examples-onap-vcpe</artifactId>
392 <version>${project.version}</version>
394 <overWrite>false</overWrite>
395 <outputDirectory>${project.build.directory}/examples/models/ONAPvCPE</outputDirectory>
396 <includes>ONAPvCPEPolicyModel.json</includes>
399 <groupId>org.onap.policy.apex-pdp.examples</groupId>
400 <artifactId>examples-servlet</artifactId>
401 <version>${project.version}</version>
403 <overWrite>false</overWrite>
404 <outputDirectory>${project.build.directory}/examples/servlet</outputDirectory>
405 <includes>readme_examples-servlet.txt</includes>
408 <groupId>org.onap.policy.apex-pdp.tools</groupId>
409 <artifactId>tools-common</artifactId>
410 <version>${project.version}</version>
412 <overWrite>false</overWrite>
413 <outputDirectory>${project.build.directory}/etc</outputDirectory>
414 <includes>/app-version.txt</includes>
417 <overWriteReleases>true</overWriteReleases>
418 <overWriteSnapshots>true</overWriteSnapshots>
422 <id>copy-fat-jars</id>
423 <phase>package</phase>
430 <groupId>org.onap.policy.apex-pdp.tools</groupId>
431 <artifactId>simple-wsclient</artifactId>
432 <version>${project.version}</version>
434 <classifier>jar-with-dependencies</classifier>
435 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
438 <groupId>org.onap.policy.apex-pdp.client</groupId>
439 <artifactId>client-monitoring</artifactId>
440 <version>${project.version}</version>
441 <classifier>monitoring</classifier>
442 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
445 <groupId>org.onap.policy.apex-pdp.client</groupId>
446 <artifactId>client-editor</artifactId>
447 <version>${project.version}</version>
448 <classifier>editor</classifier>
449 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
452 <groupId>org.onap.policy.apex-pdp.client</groupId>
453 <artifactId>client-deployment</artifactId>
454 <version>${project.version}</version>
455 <classifier>deployment</classifier>
456 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
459 <groupId>org.onap.policy.apex-pdp.client</groupId>
460 <artifactId>client-full</artifactId>
461 <version>${project.version}</version>
462 <classifier>full</classifier>
463 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
466 <overWriteReleases>true</overWriteReleases>
467 <overWriteSnapshots>true</overWriteSnapshots>
474 <!-- Build the tar ball -->
476 <groupId>org.apache.maven.plugins</groupId>
477 <artifactId>maven-assembly-plugin</artifactId>
480 <id>generate-complete-tar</id>
481 <phase>package</phase>
487 <descriptor>src/main/package/tarball/assembly.xml</descriptor>
489 <finalName>${project.artifactId}-${project.version}</finalName>
495 <artifactId>maven-antrun-plugin</artifactId>
498 <phase>package</phase>
502 src="${project.build.directory}/${project.artifactId}-${project.version}-tarball.tar.gz"
503 dest="${project.build.directory}/install_hierarchy" compression="gzip" />
511 <id>fix-permissions</id>
512 <phase>package</phase>
515 <chmod file="${project.build.directory}/install_hierarchy/bin/*" perm="755" />
524 <!-- Build the dpkg distribution -->
526 <groupId>org.vafer</groupId>
527 <artifactId>jdeb</artifactId>
528 <version>1.5</version>
531 <phase>package</phase>
536 <deb>${project.build.directory}/${project.artifactId}-${project.version}.deb</deb>
537 <controlDir>${basedir}/src/main/package/control</controlDir>
539 <!-- Copy the Apex run time configuration -->
541 <src>${project.build.directory}/install_hierarchy/lib</src>
542 <type>directory</type>
546 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/lib</prefix>
547 <filemode>755</filemode>
551 <src>${project.build.directory}/install_hierarchy/bin</src>
552 <type>directory</type>
556 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/bin</prefix>
560 <src>${project.build.directory}/install_hierarchy/etc</src>
561 <type>directory</type>
565 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/etc</prefix>
569 <src>${project.build.directory}/install_hierarchy/war</src>
570 <type>directory</type>
574 <prefix>/opt/app/policy/${install.package.name}-${project.version}/war</prefix>
578 <src>${project.build.directory}/install_hierarchy/examples</src>
579 <type>directory</type>
583 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/examples</prefix>
598 <family>Linux</family>
603 <!-- Build the rpm distribution -->
604 <!-- Skiping RPM Build for now, due to rpmbuild package not available on Jenkins servers -->
606 <groupId>org.codehaus.mojo</groupId>
607 <artifactId>rpm-maven-plugin</artifactId>
608 <version>2.2.0</version>
609 <extensions>true</extensions>
612 <phase>package</phase>
619 <name>${project.artifactId}</name>
620 <copyright>2015 Ericsson AB All rights reserved</copyright>
621 <distribution>${project.parent.artifactId}</distribution>
622 <group>ERI-APEX</group>
623 <packager>Ericsson</packager>
624 <prefix>/opt/app/policy/apex-pdp</prefix>
625 <changelogFile>src/rpm/changelog</changelogFile>
626 <needarch>noarch</needarch>
627 <targetVendor>redhat</targetVendor>
628 <targetOS>linux</targetOS>
629 <version>${project.version}</version>
631 <defineStatement>install_dir /opt/app/policy/apex-pdp</defineStatement>
635 <directory>/opt/app/policy/${project.artifactId}-${project.version}/lib</directory>
636 <username>root</username>
637 <groupname>root</groupname>
640 <location>${project.build.directory}/install_hierarchy/lib</location>
645 <directory>/opt/app/policy/${project.artifactId}-${project.version}/bin</directory>
646 <username>root</username>
647 <groupname>root</groupname>
650 <location>${project.build.directory}/install_hierarchy/bin</location>
655 <directory>/opt/app/policy/${project.artifactId}-${project.version}/etc</directory>
656 <username>root</username>
657 <groupname>root</groupname>
660 <location>${project.build.directory}/install_hierarchy/etc</location>
665 <directory>/opt/app/policy/${install.package.name}-${project.version}/war</directory>
666 <username>root</username>
667 <groupname>root</groupname>
670 <location>${project.build.directory}/install_hierarchy/war</location>
675 <directory>/opt/app/policy/${project.artifactId}-${project.version}/examples</directory>
676 <username>root</username>
677 <groupname>root</groupname>
680 <location>${project.build.directory}/install_hierarchy/examples</location>
685 <preinstallScriptlet>
686 <scriptFile>src/main/package/control/preinst</scriptFile>
687 </preinstallScriptlet>
688 <postinstallScriptlet>
689 <scriptFile>src/main/package/control/postinst</scriptFile>
690 </postinstallScriptlet>
692 <scriptFile>src/main/package/control/prerm</scriptFile>
693 </preremoveScriptlet>
694 <postremoveScriptlet>
695 <scriptFile>src/main/package/control/postrm</scriptFile>
696 </postremoveScriptlet>
700 <groupId>org.codehaus.mojo</groupId>
701 <artifactId>exec-maven-plugin</artifactId>
704 <phase>package</phase>
711 <executable>sh</executable>
713 <argument>-c</argument>
715 ${project.build.directory}/rpm/${project.artifactId}/RPMS/noarch/${project.artifactId}-${project.version}*.noarch.rpm \
717 ${project.build.directory}/${project.artifactId}-${project.version}.rpm</argument>
722 <groupId>org.codehaus.mojo</groupId>
723 <artifactId>build-helper-maven-plugin</artifactId>
724 <version>3.0.0</version>
727 <id>attach-artifacts</id>
728 <phase>package</phase>
730 <goal>attach-artifact</goal>
735 <file>${project.build.directory}/${project.artifactId}-${project.version}.rpm</file>
747 <id>only-eclipse</id>
750 <name>m2e.version</name>
757 <groupId>org.eclipse.m2e</groupId>
758 <artifactId>lifecycle-mapping</artifactId>
760 <lifecycleMappingMetadata>
763 <pluginExecutionFilter>
764 <groupId>org.apache.maven.plugins</groupId>
765 <artifactId>maven-dependency-plugin</artifactId>
766 <versionRange>[2.0,)</versionRange>
771 </pluginExecutionFilter>
777 </lifecycleMappingMetadata>
789 <name>apexSite</name>
792 <distributionManagement>
794 <id>${project.artifactId}-site</id>
795 <url>${apex.adsite.prefix}/modules/${project.parent.artifactId}/${project.artifactId}/</url>
797 </distributionManagement>