| <!-- |
| ============LICENSE_START======================================================= |
| Copyright (C) 2018 Ericsson. All rights reserved. |
| ================================================================================ |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| SPDX-License-Identifier: Apache-2.0 |
| ============LICENSE_END========================================================= |
| --> |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <parent> |
| <groupId>org.onap.policy.apex-pdp.packages</groupId> |
| <artifactId>packages</artifactId> |
| <version>2.0.0-SNAPSHOT</version> |
| </parent> |
| |
| <artifactId>apex-pdp-package-full</artifactId> |
| <name>${project.artifactId}</name> |
| <description>[${project.parent.artifactId}] packaging, with all optional functionality, clients, servlets, and examples included</description> |
| |
| <properties> |
| <install.package.name>${project.artifactId}</install.package.name> |
| </properties> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.services</groupId> |
| <artifactId>services-engine</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for Context Distribution --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId> |
| <artifactId>plugins-context-distribution-hazelcast</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-distribution</groupId> |
| <artifactId>plugins-context-distribution-infinispan</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for Context Locking --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId> |
| <artifactId>plugins-context-locking-hazelcast</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-locking</groupId> |
| <artifactId>plugins-context-locking-curator</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for Context Schemas --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-context.plugins-context-schema</groupId> |
| <artifactId>plugins-context-schema-avro</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for Executors --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId> |
| <artifactId>plugins-executor-java</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId> |
| <artifactId>plugins-executor-javascript</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId> |
| <artifactId>plugins-executor-jruby</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId> |
| <artifactId>plugins-executor-jython</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-executor</groupId> |
| <artifactId>plugins-executor-mvel</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for Persistence of Models over JPA --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence.plugins-persistence-jpa</groupId> |
| <artifactId>plugins-persistence-jpa-eclipselink</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-persistence.plugins-persistence-jpa</groupId> |
| <artifactId>plugins-persistence-jpa-hibernate</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for event carrier technologies --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> |
| <artifactId>plugins-event-carrier-kafka</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> |
| <artifactId>plugins-event-carrier-websocket</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> |
| <artifactId>plugins-event-carrier-jms</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> |
| <artifactId>plugins-event-carrier-restclient</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> |
| <artifactId>plugins-event-carrier-restserver</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-carrier</groupId> |
| <artifactId>plugins-event-carrier-restrequestor</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Plugins for event protocols --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId> |
| <artifactId>plugins-event-protocol-xml</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.plugins.plugins-event.plugins-event-protocol</groupId> |
| <artifactId>plugins-event-protocol-jms</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Authoring and Editors --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.auth</groupId> |
| <artifactId>cli-editor</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Test Data used by examples --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.context</groupId> |
| <artifactId>context-test-utils</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId> |
| <artifactId>integration-common</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| |
| <!-- Sample Examples --> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>aadm</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>adaptive</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>myfirstpolicy</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>pcvs</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>examples-decisionmaker</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>examples-periodic</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>examples-onap-vcpe</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <plugins> |
| <!-- Copy required resources and examples --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>unpack-etc-examples</id> |
| <phase>package</phase> |
| <goals> |
| <goal>unpack</goal> |
| </goals> |
| <configuration> |
| <artifactItems> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.auth</groupId> |
| <artifactId>cli-editor</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}</outputDirectory> |
| <includes>etc/**/*,examples/**/*</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.testsuites.integration</groupId> |
| <artifactId>integration-common</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}</outputDirectory> |
| <includes>etc/**/*,examples/**/*</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>aadm</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}</outputDirectory> |
| <includes>etc/**/*,examples/**/*</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>adaptive</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}</outputDirectory> |
| <includes>etc/**/*,examples/**/*</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>myfirstpolicy</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}</outputDirectory> |
| <includes>etc/**/*,examples/**/*</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>pcvs</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}</outputDirectory> |
| <includes>etc/**/*,examples/**/*</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>examples-decisionmaker</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}/examples/models/DecisionMaker</outputDirectory> |
| <includes>/DecisionMakerPolicyModel.json</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>examples-periodic</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}/examples/models/Periodic</outputDirectory> |
| <includes>/PeriodicPolicyModel.json</includes> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.onap.policy.apex-pdp.examples</groupId> |
| <artifactId>examples-onap-vcpe</artifactId> |
| <version>${project.version}</version> |
| <type>jar</type> |
| <overWrite>false</overWrite> |
| <outputDirectory>${project.build.directory}/examples/models/ONAPvCPE</outputDirectory> |
| <includes>/ONAPvCPEPolicyModel.json</includes> |
| </artifactItem> |
| </artifactItems> |
| <overWriteReleases>true</overWriteReleases> |
| <overWriteSnapshots>true</overWriteSnapshots> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Build the tar ball --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>generate-complete-tar</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| <configuration> |
| <descriptors> |
| <descriptor>src/main/package/tarball/assembly.xml</descriptor> |
| </descriptors> |
| <finalName>${project.artifactId}-${project.version}</finalName> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <configuration> |
| <tasks> |
| <untar |
| src="${project.build.directory}/${project.artifactId}-${project.version}-tarball.tar.gz" |
| dest="${project.build.directory}/install_hierarchy" compression="gzip" /> |
| </tasks> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>fix-permissions</id> |
| <phase>package</phase> |
| <configuration> |
| <tasks> |
| <chmod file="${project.build.directory}/install_hierarchy/bin/*" perm="755" /> |
| </tasks> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <!-- Build the dpkg distribution --> |
| <plugin> |
| <groupId>org.vafer</groupId> |
| <artifactId>jdeb</artifactId> |
| <version>1.5</version> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>jdeb</goal> |
| </goals> |
| <configuration> |
| <deb>${project.build.directory}/${project.artifactId}-${project.version}.deb</deb> |
| <controlDir>${basedir}/src/main/package/control</controlDir> |
| <dataSet> |
| <!-- Copy the Apex run time configuration --> |
| <data> |
| <src>${project.build.directory}/install_hierarchy/lib</src> |
| <type>directory</type> |
| <dst>lib</dst> |
| <mapper> |
| <type>perm</type> |
| <prefix>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/lib</prefix> |
| <filemode>755</filemode> |
| </mapper> |
| </data> |
| <data> |
| <src>${project.build.directory}/install_hierarchy/bin</src> |
| <type>directory</type> |
| <dst>etc</dst> |
| <mapper> |
| <type>perm</type> |
| <prefix>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/bin</prefix> |
| </mapper> |
| </data> |
| <data> |
| <src>${project.build.directory}/install_hierarchy/etc</src> |
| <type>directory</type> |
| <dst>etc</dst> |
| <mapper> |
| <type>perm</type> |
| <prefix>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/etc</prefix> |
| </mapper> |
| </data> |
| <data> |
| <src>${project.build.directory}/install_hierarchy/examples</src> |
| <type>directory</type> |
| <dst>etc</dst> |
| <mapper> |
| <type>perm</type> |
| <prefix>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/examples</prefix> |
| </mapper> |
| </data> |
| </dataSet> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| <profiles> |
| <profile> |
| <id>Linux</id> |
| <activation> |
| <os> |
| <family>Linux</family> |
| </os> |
| </activation> |
| <build> |
| <plugins> |
| <!-- Build the rpm distribution --> |
| <!-- Skiping RPM Build for now, due to rpmbuild package not available on Jenkins servers --> |
| <!-- <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>rpm-maven-plugin</artifactId> |
| <version>2.2.0</version> |
| <extensions>true</extensions> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>rpm</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <name>${project.artifactId}</name> |
| <copyright>2015 Ericsson AB All rights reserved</copyright> |
| <distribution>${project.parent.artifactId}</distribution> |
| <group>ERI-APEX</group> |
| <packager>Ericsson</packager> |
| <prefix>/opt/app/policy/apex-pdp</prefix> |
| <changelogFile>src/rpm/changelog</changelogFile> |
| <needarch>noarch</needarch> |
| <targetVendor>redhat</targetVendor> |
| <targetOS>linux</targetOS> |
| <version>${project.version}</version> |
| <defineStatements> |
| <defineStatement>install_dir /opt/app/policy/apex-pdp</defineStatement> |
| </defineStatements> |
| <mappings> |
| <mapping> |
| <directory>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/lib</directory> |
| <username>root</username> |
| <groupname>root</groupname> |
| <sources> |
| <source> |
| <location>${project.build.directory}/install_hierarchy/lib</location> |
| </source> |
| </sources> |
| </mapping> |
| <mapping> |
| <directory>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/bin</directory> |
| <username>root</username> |
| <groupname>root</groupname> |
| <sources> |
| <source> |
| <location>${project.build.directory}/install_hierarchy/bin</location> |
| </source> |
| </sources> |
| </mapping> |
| <mapping> |
| <directory>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/etc</directory> |
| <username>root</username> |
| <groupname>root</groupname> |
| <sources> |
| <source> |
| <location>${project.build.directory}/install_hierarchy/etc</location> |
| </source> |
| </sources> |
| </mapping> |
| <mapping> |
| <directory>/opt/app/policy/apex-pdp/${project.artifactId}-${project.version}/examples</directory> |
| <username>root</username> |
| <groupname>root</groupname> |
| <sources> |
| <source> |
| <location>${project.build.directory}/install_hierarchy/examples</location> |
| </source> |
| </sources> |
| </mapping> |
| </mappings> |
| <preinstallScriptlet> |
| <scriptFile>src/main/package/control/preinst</scriptFile> |
| </preinstallScriptlet> |
| <postinstallScriptlet> |
| <scriptFile>src/main/package/control/postinst</scriptFile> |
| </postinstallScriptlet> |
| <preremoveScriptlet> |
| <scriptFile>src/main/package/control/prerm</scriptFile> |
| </preremoveScriptlet> |
| <postremoveScriptlet> |
| <scriptFile>src/main/package/control/postrm</scriptFile> |
| </postremoveScriptlet> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>exec</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <executable>sh</executable> |
| <arguments> |
| <argument>-c</argument> |
| <argument>cp \ |
| ${project.build.directory}/rpm/${project.artifactId}/RPMS/noarch/${project.artifactId}-${project.version}*.noarch.rpm \ |
| \ |
| ${project.build.directory}/${project.artifactId}-${project.version}.rpm</argument> |
| </arguments> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <version>3.0.0</version> |
| <executions> |
| <execution> |
| <id>attach-artifacts</id> |
| <phase>package</phase> |
| <goals> |
| <goal>attach-artifact</goal> |
| </goals> |
| <configuration> |
| <artifacts> |
| <artifact> |
| <file>${project.build.directory}/${project.artifactId}-${project.version}.rpm</file> |
| <type>rpm</type> |
| </artifact> |
| </artifacts> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> --> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <id>only-eclipse</id> |
| <activation> |
| <property> |
| <name>m2e.version</name> |
| </property> |
| </activation> |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.eclipse.m2e</groupId> |
| <artifactId>lifecycle-mapping</artifactId> |
| <configuration> |
| <lifecycleMappingMetadata> |
| <pluginExecutions> |
| <pluginExecution> |
| <pluginExecutionFilter> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <versionRange>${maven-dependency-plugin.version}</versionRange> |
| <goals> |
| <goal>unpack</goal> |
| <goal>copy</goal> |
| </goals> |
| </pluginExecutionFilter> |
| <action> |
| <ignore /> |
| </action> |
| </pluginExecution> |
| </pluginExecutions> |
| </lifecycleMappingMetadata> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| </profile> |
| </profiles> |
| </project> |