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.2.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>
259 <groupId>org.onap.policy.apex-pdp.examples</groupId>
260 <artifactId>examples-onap-bbs</artifactId>
261 <version>${project.version}</version>
267 <!-- Copy required resources and examples -->
269 <groupId>org.apache.maven.plugins</groupId>
270 <artifactId>maven-dependency-plugin</artifactId>
273 <id>unpack-etc-examples</id>
274 <phase>package</phase>
281 <groupId>org.onap.policy.apex-pdp.services</groupId>
282 <artifactId>services-onappf</artifactId>
283 <version>${project.version}</version>
285 <overWrite>false</overWrite>
286 <outputDirectory>${project.build.directory}/etc/onappf</outputDirectory>
287 <includes>config/*</includes>
290 <groupId>org.onap.policy.apex-pdp.auth</groupId>
291 <artifactId>cli-editor</artifactId>
292 <version>${project.version}</version>
294 <overWrite>false</overWrite>
295 <outputDirectory>${project.build.directory}</outputDirectory>
296 <includes>etc/**/*,examples/**/*</includes>
299 <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId>
300 <artifactId>integration-common</artifactId>
301 <version>${project.version}</version>
303 <overWrite>false</overWrite>
304 <outputDirectory>${project.build.directory}</outputDirectory>
305 <includes>etc/**/*,examples/**/*</includes>
308 <groupId>org.onap.policy.apex-pdp.testsuites.performance</groupId>
309 <artifactId>performance-benchmark-test</artifactId>
310 <version>${project.version}</version>
312 <overWrite>false</overWrite>
313 <outputDirectory>${project.build.directory}</outputDirectory>
314 <includes>examples/**/*</includes>
317 <groupId>org.onap.policy.apex-pdp.examples</groupId>
318 <artifactId>examples-aadm</artifactId>
319 <version>${project.version}</version>
321 <overWrite>false</overWrite>
322 <outputDirectory>${project.build.directory}</outputDirectory>
323 <includes>etc/**/*,examples/**/*</includes>
326 <groupId>org.onap.policy.apex-pdp.examples</groupId>
327 <artifactId>examples-adaptive</artifactId>
328 <version>${project.version}</version>
330 <overWrite>false</overWrite>
331 <outputDirectory>${project.build.directory}</outputDirectory>
332 <includes>etc/**/*,examples/**/*</includes>
335 <groupId>org.onap.policy.apex-pdp.examples</groupId>
336 <artifactId>examples-myfirstpolicy</artifactId>
337 <version>${project.version}</version>
339 <overWrite>false</overWrite>
340 <outputDirectory>${project.build.directory}</outputDirectory>
341 <includes>etc/**/*,examples/**/*</includes>
344 <groupId>org.onap.policy.apex-pdp.examples</groupId>
345 <artifactId>examples-pcvs</artifactId>
346 <version>${project.version}</version>
348 <overWrite>false</overWrite>
349 <outputDirectory>${project.build.directory}</outputDirectory>
350 <includes>etc/**/*,examples/**/*</includes>
353 <groupId>org.onap.policy.apex-pdp.examples</groupId>
354 <artifactId>examples-decisionmaker</artifactId>
355 <version>${project.version}</version>
357 <overWrite>false</overWrite>
358 <outputDirectory>${project.build.directory}</outputDirectory>
359 <includes>etc/**/*,examples/**/*</includes>
362 <groupId>org.onap.policy.apex-pdp.examples</groupId>
363 <artifactId>examples-decisionmaker</artifactId>
364 <version>${project.version}</version>
366 <overWrite>false</overWrite>
367 <outputDirectory>${project.build.directory}/examples/models/DecisionMaker</outputDirectory>
368 <includes>*PolicyModel.json</includes>
371 <groupId>org.onap.policy.apex-pdp.examples</groupId>
372 <artifactId>examples-periodic</artifactId>
373 <version>${project.version}</version>
375 <overWrite>false</overWrite>
376 <outputDirectory>${project.build.directory}</outputDirectory>
377 <includes>etc/**/*,examples/**/*</includes>
380 <groupId>org.onap.policy.apex-pdp.examples</groupId>
381 <artifactId>examples-periodic</artifactId>
382 <version>${project.version}</version>
384 <overWrite>false</overWrite>
385 <outputDirectory>${project.build.directory}/examples/models/Periodic</outputDirectory>
386 <includes>PeriodicPolicyModel.json</includes>
389 <groupId>org.onap.policy.apex-pdp.examples</groupId>
390 <artifactId>examples-onap-vcpe</artifactId>
391 <version>${project.version}</version>
393 <overWrite>false</overWrite>
394 <outputDirectory>${project.build.directory}</outputDirectory>
395 <includes>etc/**/*,examples/**/*</includes>
398 <groupId>org.onap.policy.apex-pdp.examples</groupId>
399 <artifactId>examples-onap-vcpe</artifactId>
400 <version>${project.version}</version>
402 <overWrite>false</overWrite>
403 <outputDirectory>${project.build.directory}/examples/models/ONAPvCPE</outputDirectory>
404 <includes>ONAPvCPEPolicyModel.json</includes>
407 <groupId>org.onap.policy.apex-pdp.examples</groupId>
408 <artifactId>examples-onap-bbs</artifactId>
409 <version>${project.version}</version>
411 <overWrite>false</overWrite>
412 <outputDirectory>${project.build.directory}</outputDirectory>
413 <includes>etc/**/*,examples/**/*</includes>
416 <groupId>org.onap.policy.apex-pdp.examples</groupId>
417 <artifactId>examples-onap-bbs</artifactId>
418 <version>${project.version}</version>
420 <overWrite>false</overWrite>
421 <outputDirectory>${project.build.directory}/examples/models/ONAPBBS</outputDirectory>
422 <includes>NomadicONTPolicyModel.json</includes>
425 <groupId>org.onap.policy.apex-pdp.examples</groupId>
426 <artifactId>examples-servlet</artifactId>
427 <version>${project.version}</version>
429 <overWrite>false</overWrite>
430 <outputDirectory>${project.build.directory}/examples/servlet</outputDirectory>
431 <includes>readme_examples-servlet.txt</includes>
434 <groupId>org.onap.policy.apex-pdp.tools</groupId>
435 <artifactId>tools-common</artifactId>
436 <version>${project.version}</version>
438 <overWrite>false</overWrite>
439 <outputDirectory>${project.build.directory}/etc</outputDirectory>
440 <includes>/app-version.txt</includes>
443 <overWriteReleases>true</overWriteReleases>
444 <overWriteSnapshots>true</overWriteSnapshots>
448 <id>copy-fat-jars</id>
449 <phase>package</phase>
456 <groupId>org.onap.policy.apex-pdp.tools</groupId>
457 <artifactId>simple-wsclient</artifactId>
458 <version>${project.version}</version>
460 <classifier>jar-with-dependencies</classifier>
461 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
464 <groupId>org.onap.policy.apex-pdp.client</groupId>
465 <artifactId>client-monitoring</artifactId>
466 <version>${project.version}</version>
467 <classifier>monitoring</classifier>
468 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
471 <groupId>org.onap.policy.apex-pdp.client</groupId>
472 <artifactId>client-editor</artifactId>
473 <version>${project.version}</version>
474 <classifier>editor</classifier>
475 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
478 <groupId>org.onap.policy.apex-pdp.client</groupId>
479 <artifactId>client-deployment</artifactId>
480 <version>${project.version}</version>
481 <classifier>deployment</classifier>
482 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
485 <groupId>org.onap.policy.apex-pdp.client</groupId>
486 <artifactId>client-full</artifactId>
487 <version>${project.version}</version>
488 <classifier>full</classifier>
489 <outputDirectory>${project.build.directory}/lib/applications</outputDirectory>
492 <overWriteReleases>true</overWriteReleases>
493 <overWriteSnapshots>true</overWriteSnapshots>
500 <!-- Build the tar ball -->
502 <groupId>org.apache.maven.plugins</groupId>
503 <artifactId>maven-assembly-plugin</artifactId>
506 <id>generate-complete-tar</id>
507 <phase>package</phase>
513 <descriptor>src/main/package/tarball/assembly.xml</descriptor>
515 <finalName>${project.artifactId}-${project.version}</finalName>
521 <artifactId>maven-antrun-plugin</artifactId>
524 <phase>package</phase>
528 src="${project.build.directory}/${project.artifactId}-${project.version}-tarball.tar.gz"
529 dest="${project.build.directory}/install_hierarchy" compression="gzip" />
537 <id>fix-permissions</id>
538 <phase>package</phase>
541 <chmod file="${project.build.directory}/install_hierarchy/bin/*" perm="755" />
550 <!-- Build the dpkg distribution -->
552 <groupId>org.vafer</groupId>
553 <artifactId>jdeb</artifactId>
554 <version>1.5</version>
557 <phase>package</phase>
562 <deb>${project.build.directory}/${project.artifactId}-${project.version}.deb</deb>
563 <controlDir>${basedir}/src/main/package/control</controlDir>
565 <!-- Copy the Apex run time configuration -->
567 <src>${project.build.directory}/install_hierarchy/lib</src>
568 <type>directory</type>
572 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/lib</prefix>
573 <filemode>755</filemode>
577 <src>${project.build.directory}/install_hierarchy/bin</src>
578 <type>directory</type>
582 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/bin</prefix>
586 <src>${project.build.directory}/install_hierarchy/etc</src>
587 <type>directory</type>
591 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/etc</prefix>
595 <src>${project.build.directory}/install_hierarchy/war</src>
596 <type>directory</type>
600 <prefix>/opt/app/policy/${install.package.name}-${project.version}/war</prefix>
604 <src>${project.build.directory}/install_hierarchy/examples</src>
605 <type>directory</type>
609 <prefix>/opt/app/policy/${project.artifactId}-${project.version}/examples</prefix>
624 <family>Linux</family>
629 <!-- Build the rpm distribution -->
630 <!-- Skiping RPM Build for now, due to rpmbuild package not available on Jenkins servers -->
632 <groupId>org.codehaus.mojo</groupId>
633 <artifactId>rpm-maven-plugin</artifactId>
634 <version>2.2.0</version>
635 <extensions>true</extensions>
638 <phase>package</phase>
645 <name>${project.artifactId}</name>
646 <copyright>2015 Ericsson AB All rights reserved</copyright>
647 <distribution>${project.parent.artifactId}</distribution>
648 <group>ERI-APEX</group>
649 <packager>Ericsson</packager>
650 <prefix>/opt/app/policy/apex-pdp</prefix>
651 <changelogFile>src/rpm/changelog</changelogFile>
652 <needarch>noarch</needarch>
653 <targetVendor>redhat</targetVendor>
654 <targetOS>linux</targetOS>
655 <version>${project.version}</version>
657 <defineStatement>install_dir /opt/app/policy/apex-pdp</defineStatement>
661 <directory>/opt/app/policy/${project.artifactId}-${project.version}/lib</directory>
662 <username>root</username>
663 <groupname>root</groupname>
666 <location>${project.build.directory}/install_hierarchy/lib</location>
671 <directory>/opt/app/policy/${project.artifactId}-${project.version}/bin</directory>
672 <username>root</username>
673 <groupname>root</groupname>
676 <location>${project.build.directory}/install_hierarchy/bin</location>
681 <directory>/opt/app/policy/${project.artifactId}-${project.version}/etc</directory>
682 <username>root</username>
683 <groupname>root</groupname>
686 <location>${project.build.directory}/install_hierarchy/etc</location>
691 <directory>/opt/app/policy/${install.package.name}-${project.version}/war</directory>
692 <username>root</username>
693 <groupname>root</groupname>
696 <location>${project.build.directory}/install_hierarchy/war</location>
701 <directory>/opt/app/policy/${project.artifactId}-${project.version}/examples</directory>
702 <username>root</username>
703 <groupname>root</groupname>
706 <location>${project.build.directory}/install_hierarchy/examples</location>
711 <preinstallScriptlet>
712 <scriptFile>src/main/package/control/preinst</scriptFile>
713 </preinstallScriptlet>
714 <postinstallScriptlet>
715 <scriptFile>src/main/package/control/postinst</scriptFile>
716 </postinstallScriptlet>
718 <scriptFile>src/main/package/control/prerm</scriptFile>
719 </preremoveScriptlet>
720 <postremoveScriptlet>
721 <scriptFile>src/main/package/control/postrm</scriptFile>
722 </postremoveScriptlet>
726 <groupId>org.codehaus.mojo</groupId>
727 <artifactId>exec-maven-plugin</artifactId>
730 <phase>package</phase>
737 <executable>sh</executable>
739 <argument>-c</argument>
741 ${project.build.directory}/rpm/${project.artifactId}/RPMS/noarch/${project.artifactId}-${project.version}*.noarch.rpm \
743 ${project.build.directory}/${project.artifactId}-${project.version}.rpm</argument>
748 <groupId>org.codehaus.mojo</groupId>
749 <artifactId>build-helper-maven-plugin</artifactId>
750 <version>3.0.0</version>
753 <id>attach-artifacts</id>
754 <phase>package</phase>
756 <goal>attach-artifact</goal>
761 <file>${project.build.directory}/${project.artifactId}-${project.version}.rpm</file>
773 <id>only-eclipse</id>
776 <name>m2e.version</name>
783 <groupId>org.eclipse.m2e</groupId>
784 <artifactId>lifecycle-mapping</artifactId>
786 <lifecycleMappingMetadata>
789 <pluginExecutionFilter>
790 <groupId>org.apache.maven.plugins</groupId>
791 <artifactId>maven-dependency-plugin</artifactId>
792 <versionRange>[2.0,)</versionRange>
797 </pluginExecutionFilter>
803 </lifecycleMappingMetadata>
815 <name>apexSite</name>
818 <distributionManagement>
820 <id>${project.artifactId}-site</id>
821 <url>${apex.adsite.prefix}/modules/${project.parent.artifactId}/${project.artifactId}/</url>
823 </distributionManagement>