| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ~ Licensed to the Apache Software Foundation (ASF) under one or more |
| ~ contributor license agreements. See the NOTICE file distributed with |
| ~ this work for additional information regarding copyright ownership. |
| ~ The ASF licenses this file to You 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. |
| --> |
| |
| <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.apache.unomi</groupId> |
| <artifactId>unomi-root</artifactId> |
| <version>3.1.0-SNAPSHOT</version> |
| </parent> |
| <artifactId>unomi</artifactId> |
| <version>3.1.0-SNAPSHOT</version> |
| <name>Apache Unomi :: Distribution Package</name> |
| <description>Packaged distributions of the Apache Unomi Context Server</description> |
| <packaging>pom</packaging> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-bom</artifactId> |
| <version>${project.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <properties> |
| <appendedResourcesDirectory>${basedir}/../etc/appended-resources</appendedResourcesDirectory> |
| <maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format> |
| </properties> |
| |
| <dependencies> |
| <!-- Standard Apache Karaf Features --> |
| <dependency> |
| <groupId>org.apache.karaf.features</groupId> |
| <artifactId>framework</artifactId> |
| <type>kar</type> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.karaf.features</groupId> |
| <artifactId>framework</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.karaf.features</groupId> |
| <artifactId>standard</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.karaf.features</groupId> |
| <artifactId>spring</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.karaf.features</groupId> |
| <artifactId>enterprise</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.karaf.features</groupId> |
| <artifactId>specs</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| |
| <!-- Additional Apache Unomi features --> |
| <dependency> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-kar</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-router-karaf-feature</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-groovy-actions</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>cdp-graphql-feature</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-distribution</artifactId> |
| <classifier>features</classifier> |
| <type>xml</type> |
| <scope>runtime</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <resources> |
| <resource> |
| <directory>${project.basedir}/..</directory> |
| <filtering>false</filtering> |
| <includes> |
| <include>README*</include> |
| <include>RELEASE*</include> |
| <include>DISCLAIMER*</include> |
| </includes> |
| </resource> |
| <resource> |
| <directory>${project.basedir}/src/main/resources</directory> |
| </resource> |
| </resources> |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>buildnumber-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>validate</phase> |
| <goals> |
| <goal>create</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <doCheck>false</doCheck> |
| <doUpdate>false</doUpdate> |
| <shortRevisionLength>8</shortRevisionLength> |
| <revisionOnScmFailure>unknown</revisionOnScmFailure> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>process-resources</id> |
| <goals> |
| <goal>resources</goal> |
| </goals> |
| <configuration> |
| <resources> |
| <resource> |
| <directory>${project.basedir}/src/main/resources</directory> |
| <filtering>true</filtering> |
| <includes> |
| <include>BUILD</include> |
| </includes> |
| </resource> |
| <resource> |
| <directory>${project.basedir}/src/main/resources</directory> |
| <filtering>false</filtering> |
| <excludes> |
| <exclude>BUILD</exclude> |
| </excludes> |
| </resource> |
| </resources> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-dependency-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>copy</id> |
| <phase>package</phase> |
| <goals> |
| <goal>copy</goal> |
| </goals> |
| <configuration> |
| <artifactItems> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-web-servlets</artifactId> |
| <classifier>unomicfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.web.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-persistence-elasticsearch-core</artifactId> |
| <classifier>elasticsearchcfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.persistence.elasticsearch.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-persistence-opensearch-core</artifactId> |
| <version>${project.version}</version> |
| <classifier>opensearchcfg</classifier> |
| <type>cfg</type> |
| <outputDirectory> |
| ${project.build.directory}/assembly/etc |
| </outputDirectory> |
| <destFileName>org.apache.unomi.persistence.opensearch.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-services</artifactId> |
| <classifier>clustercfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.cluster.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-services</artifactId> |
| <classifier>servicescfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.services.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-plugins-request</artifactId> |
| <classifier>requestcfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.plugins.request.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-plugins-base</artifactId> |
| <classifier>pluginsbasecfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.plugins.base.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-groovy-actions-services</artifactId> |
| <classifier>groovyactionscfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.groovy.actions.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-plugins-mail</artifactId> |
| <classifier>mailcfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.plugins.mail.cfg</destFileName> |
| </artifactItem> |
| <artifactItem> |
| <groupId>org.apache.unomi</groupId> |
| <artifactId>unomi-router-core</artifactId> |
| <classifier>routercfg</classifier> |
| <type>cfg</type> |
| <outputDirectory>${project.build.directory}/assembly/etc</outputDirectory> |
| <destFileName>org.apache.unomi.router.cfg</destFileName> |
| </artifactItem> |
| </artifactItems> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-remote-resources-plugin</artifactId> |
| <configuration> |
| <skip>true</skip> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.karaf.tooling</groupId> |
| <artifactId>karaf-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>install-kar</id> |
| <phase>compile</phase> |
| <goals> |
| <goal>assembly</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>package</id> |
| <goals> |
| <goal>archive</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>verify-feature</id> |
| <phase>process-resources</phase> |
| <goals> |
| <goal>verify</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <startupBundles> |
| <bundle>mvn:org.apache.unomi/log4j-extension/${project.version}</bundle> |
| </startupBundles> |
| <startupFeatures> |
| <feature>eventadmin</feature> |
| </startupFeatures> |
| <bootFeatures> |
| <feature>wrap</feature> |
| <feature>shell</feature> |
| <feature>feature</feature> |
| <feature>jaas</feature> |
| <feature>ssh</feature> |
| <feature>bundle</feature> |
| <feature>config</feature> |
| <feature>deployer</feature> |
| <feature>diagnostic</feature> |
| <feature>instance</feature> |
| <feature>kar</feature> |
| <feature>log</feature> |
| <feature>package</feature> |
| <feature>service</feature> |
| <feature>system</feature> |
| <feature>http</feature> |
| <feature>war</feature> |
| <feature>http-whiteboard</feature> |
| <feature>cxf-jaxrs</feature> |
| <feature>aries-blueprint</feature> |
| <feature>shell-compat</feature> |
| <feature>unomi-base</feature> |
| <feature>unomi-startup</feature> |
| </bootFeatures> |
| <installedFeatures> |
| <feature>wrapper</feature> |
| <feature>cxf-commands</feature> |
| <feature>unomi-persistence-elasticsearch</feature> |
| <feature>unomi-persistence-opensearch</feature> |
| <feature>unomi-services</feature> |
| <feature>unomi-router-karaf-feature</feature> |
| <feature>unomi-groovy-actions</feature> |
| <feature>unomi-web-applications</feature> |
| <feature>unomi-rest-ui</feature> |
| <feature>unomi-healthcheck</feature> |
| <feature>cdp-graphql-feature</feature> |
| <feature>unomi-distribution-elasticsearch</feature> |
| <feature>unomi-distribution-opensearch</feature> |
| </installedFeatures> |
| <javase>17</javase> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>net.nicoulaj.maven.plugins</groupId> |
| <artifactId>checksum-maven-plugin</artifactId> |
| <version>1.7</version> |
| <executions> |
| <execution> |
| <id>package-release-checksum</id> |
| <goals> |
| <goal>files</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <algorithms> |
| <algorithm>SHA-512</algorithm> |
| </algorithms> |
| <csvSummary>false</csvSummary> |
| <fileSets> |
| <fileSet> |
| <directory>${project.build.directory}</directory> |
| <includes> |
| <include>${project.artifactId}-${project.version}.zip</include> |
| <include>${project.artifactId}-${project.version}.tar*</include> |
| </includes> |
| </fileSet> |
| </fileSets> |
| <failIfNoFiles>false</failIfNoFiles><!-- usually, no file to do checksum: don't consider error --> |
| </configuration> |
| </plugin> |
| |
| <!-- Create a dummy JAR just for caching, this is a workaround to avoid Maven Build cache issues --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>create-dummy-jar</id> |
| <phase>package</phase> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| <configuration> |
| <archive> |
| <manifest> |
| <addDefaultImplementationEntries>true</addDefaultImplementationEntries> |
| </manifest> |
| </archive> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Ensure the dummy jar is NOT deployed --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-deploy-plugin</artifactId> |
| <configuration> |
| <skip>true</skip> |
| </configuration> |
| </plugin> |
| |
| </plugins> |
| </build> |
| |
| <profiles> |
| <profile> |
| <id>src</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>src</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| <configuration> |
| <descriptors> |
| <descriptor>src/main/descriptors/src.xml</descriptor> |
| </descriptors> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| </project> |