blob: 4208c4861ed500b3a07370b68a493ec611df3e86 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
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.
-->
<features name="karaf-cellar-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
<repository>mvn:org.apache.jclouds.karaf/jclouds-karaf/${jclouds.version}/xml/features</repository>
<repository>mvn:io.fabric8.kubernetes/kubernetes-karaf/${fabric8.kubernetes-client.version}/xml/features</repository>
<feature name="cellar-core" description="Karaf clustering core" version="${project.version}">
<feature>aries-proxy</feature>
<feature>shell</feature>
<configfile finalname="${karaf.etc}/org.apache.karaf.cellar.groups.cfg">mvn:org.apache.karaf.cellar/apache-karaf-cellar/${project.version}/cfg/groups</configfile>
<configfile finalname="${karaf.etc}/org.apache.karaf.cellar.node.cfg">mvn:org.apache.karaf.cellar/apache-karaf-cellar/${project.version}/cfg/node</configfile>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.core/${project.version}</bundle>
</feature>
<feature name="hazelcast" description="In memory data grid" version="${hazelcast.version}">
<configfile finalname="${karaf.etc}/hazelcast.xml">mvn:org.apache.karaf.cellar/apache-karaf-cellar/${project.version}/xml/hazelcast</configfile>
<feature>transaction</feature>
<bundle>mvn:javax.cache/cache-api/1.1.0</bundle>
<bundle>mvn:com.eclipsesource.minimal-json/minimal-json/0.9.2</bundle>
<bundle>mvn:com.hazelcast/hazelcast-all/${hazelcast.version}</bundle>
</feature>
<feature name="cellar-hazelcast" description="Cellar implementation based on Hazelcast" version="${project.version}">
<feature version="${hazelcast.version}">hazelcast</feature>
<feature version="${project.version}">cellar-core</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast/${project.version}</bundle>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.utils/${project.version}</bundle>
<capability>
karaf.cellar.provider;provider:=hazelcast
</capability>
</feature>
<feature name="cellar-config" description="ConfigAdmin cluster support" version="${project.version}">
<conditional>
<condition>config</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.config/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-features" description="Karaf features cluster support" version="${project.version}">
<conditional>
<condition>feature</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.features/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-kar" description="Karaf kar cluster support" version="${project.version}">
<conditional>
<condition>kar</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.kar/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-bundle" description="Bundle cluster support" version="${project.version}">
<conditional>
<condition>bundle</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.bundle/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-shell" description="Cellar shell support" version="${project.version}">
<conditional>
<condition>shell</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.shell/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar" description="Karaf clustering" version="${project.version}">
<feature dependency="true">cellar-hazelcast</feature>
<feature>cellar-shell</feature>
<feature>cellar-config</feature>
<feature>cellar-bundle</feature>
<feature>cellar-features</feature>
<feature>cellar-kar</feature>
<requirement>
karaf.cellar.provider
</requirement>
</feature>
<feature name="cellar-dosgi" description="DOSGi support" version="${project.version}">
<feature dependency="true">cellar-hazelcast</feature>
<bundle start-level="40">mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.dosgi/${project.version}</bundle>
</feature>
<feature name="cellar-obr" description="OBR cluster support" version="${project.version}">
<conditional>
<condition>obr</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.obr/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-eventadmin" description="OSGi events broadcasting in clusters" version="${project.version}">
<conditional>
<condition>eventadmin</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.event/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-cloud" description="Cloud blobstore support in clusters" version="${project.version}">
<feature dependency="true">cellar-hazelcast</feature>
<feature version="${jclouds.version}">jclouds</feature>
<!-- Adding S3 as the default Blobstore -->
<feature>jclouds-aws-s3</feature>
<bundle>mvn:joda-time/joda-time/${joda-time.version}</bundle>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.cloud/${project.version}</bundle>
</feature>
<feature name="cellar-kubernetes" description="Cellar Kubernetes support" version="${project.version}">
<feature>cellar-core</feature>
<feature>kubernetes-client</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.kubernetes/${project.version}</bundle>
</feature>
<feature name="cellar-dns" description="Cellar DNS support" version="${project.version}">
<feature>cellar-core</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.dns/${project.version}</bundle>
</feature>
<feature name="cellar-etcd" description="Cellar Etcd discovery support" version="${project.version}">
<feature>cellar-core</feature>
<bundle>mvn:com.netflix.feign/feign-core/${netflix.feign.version}</bundle>
<bundle>mvn:com.netflix.feign/feign-slf4j/${netflix.feign.version}</bundle>
<bundle>mvn:com.netflix.feign/feign-gson/${netflix.feign.version}</bundle>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.etcd/${project.version}</bundle>
</feature>
<feature name="cellar-webconsole" description="Cellar plugin for Karaf WebConsole" version="${project.version}">
<conditional>
<condition>webconsole</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.webconsole/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-http-balancer" description="Cellar HTTP request balancer" version="${project.version}">
<feature dependency="true">cellar-hazelcast</feature>
<feature>http</feature>
<feature>http-whiteboard</feature>
<bundle>mvn:org.apache.karaf.cellar.http/org.apache.karaf.cellar.http.balancer/${project.version}</bundle>
</feature>
<feature name="cellar-log" description="Cellar central log support" version="${project.version}">
<conditional>
<condition>log</condition>
<feature dependency="true">cellar-hazelcast</feature>
<bundle>mvn:org.apache.karaf.cellar/org.apache.karaf.cellar.log/${project.version}</bundle>
</conditional>
</feature>
<feature name="cellar-documentation" description="Documentation of Karaf Cellar sub-project in HTML" version="${project.version}">
<feature>war</feature>
<bundle>mvn:org.apache.karaf.cellar/manual/${project.version}</bundle>
</feature>
</features>