add Karaf target platform and verify (#1396)

* add Karaf target platform

PR: https://github.com/eclipse/smarthome/pull/1396
Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
This commit is contained in:
Markus Rathgeb 2016-04-18 10:24:48 +02:00 коммит произвёл Kai Kreuzer
Родитель 1e348f4bcb
Коммит 8484160501
6 изменённых файлов: 228 добавлений и 11 удалений

2
.gitignore поставляемый
Просмотреть файл

@ -17,4 +17,4 @@ bundles/model/antlr-generator-3.2.0-patch.jar
bundles/storage/org.eclipse.smarthome.storage.mapdb.test/userdata/mapdb/storage.mapdb
bundles/storage/org.eclipse.smarthome.storage.mapdb.test/userdata/mapdb/storage.mapdb.p
bundles/storage/org.eclipse.smarthome.storage.mapdb.test/userdata/mapdb/storage.mapdb.t
features/karaf/src/main/history
features/karaf*/src/main/history

35
features/karaf-tp/pom.xml Normal file
Просмотреть файл

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.smarthome</groupId>
<artifactId>features</artifactId>
<version>0.8.0-SNAPSHOT</version>
</parent>
<artifactId>karaf-tp</artifactId>
<packaging>feature</packaging>
<name>Eclipse SmartHome Karaf Target Platform Feature</name>
<build>
<plugins>
<plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<version>${karaf.version}</version>
<extensions>true</extensions>
<configuration>
<startLevel>60</startLevel>
<aggregateFeatures>true</aggregateFeatures>
<checkDependencyChange>true</checkDependencyChange>
<failOnDependencyChange>false</failOnDependencyChange>
<logDependencyChanges>true</logDependencyChanges>
<overwriteChangedDependencies>true</overwriteChangedDependencies>
</configuration>
</plugin>
</plugins>
</build>
</project>

Просмотреть файл

@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<features name="${project.artifactId}-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.4.0">
<feature name="esh-tp" description="Eclipse SmartHome Target Platform" version="${project.version}">
<feature>scr</feature>
<feature>eventadmin</feature>
<feature dependency="true">esh-tp-apache-commons</feature>
<feature dependency="true">esh-tp-httpclient</feature>
<feature dependency="true">esh-tp-jax-rs</feature>
<feature dependency="true">esh-tp-jax-rs-provider-swagger</feature>
<feature dependency="true">esh-tp-jupnp</feature>
<feature dependency="true">esh-tp-jmdns</feature>
<feature dependency="true">esh-tp-paho</feature>
<feature dependency="true">esh-tp-xtext</feature>
<bundle dependency="true">mvn:com.google.code.gson/gson/2.3.1</bundle>
<bundle dependency="true">mvn:io.swagger/swagger-annotations/1.5.5</bundle>
</feature>
<feature name="esh-tp-apache-commons" version="${project.version}">
<bundle dependency="true">mvn:commons-codec/commons-codec/1.6</bundle>
<bundle dependency="true">mvn:commons-collections/commons-collections/3.2.1</bundle>
<bundle dependency="true">mvn:org.apache.commons/commons-collections4/4.1</bundle>
<bundle dependency="true">mvn:org.apache.commons/commons-exec/1.1</bundle>
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_7</bundle>
<bundle dependency="true">mvn:commons-io/commons-io/2.2</bundle>
<bundle dependency="true">mvn:commons-lang/commons-lang/2.6</bundle>
<bundle dependency="true">mvn:org.apache.commons/commons-lang3/3.4</bundle>
<bundle dependency="true">mvn:commons-net/commons-net/3.2</bundle>
</feature>
<feature name="esh-tp-httpclient" version="${project.version}">
<capability>esh.tp;feature=httpclient;version=4.2.3</capability>
<bundle dependency="true">mvn:org.apache.httpcomponents/httpcore-osgi/4.2.3</bundle>
<bundle>mvn:org.apache.httpcomponents/httpclient-osgi/4.2.3</bundle>
</feature>
<feature name="esh-tp-jax-rs" version="${project.version}">
<capability>esh.tp;feature=jax-rs;version=5.3</capability>
<feature>esh-tp-jax-rs-min</feature>
<feature>esh-tp-jax-rs-provider-gson</feature>
</feature>
<feature name="esh-tp-jax-rs-min" version="${project.version}">
<capability>esh.tp;feature=jax-rs-min;version=5.3</capability>
<feature dependency="true">http</feature>
<bundle dependency="true">mvn:com.eclipsesource.jaxrs/jersey-min/2.22.1</bundle>
<bundle>mvn:com.eclipsesource.jaxrs/publisher/5.3</bundle>
</feature>
<feature name="esh-tp-jax-rs-provider-gson" version="${project.version}">
<capability>esh.tp;feature=jax-rs-provider-gson;version=2.3</capability>
<feature dependency="true">esh-tp-jax-rs-min</feature>
<bundle dependency="true">mvn:com.google.code.gson/gson/2.3.1</bundle>
<bundle>mvn:com.eclipsesource.jaxrs/provider-gson/2.3</bundle>
</feature>
<feature name="esh-tp-jax-rs-provider-swagger" version="${project.version}">
<capability>esh.tp;feature=jax-rs-provider-swagger;version=2.3</capability>
<feature dependency="true">esh-tp-jax-rs-min</feature>
<bundle>mvn:de.maggu2810.thirdparty.modified.com.eclipsesource.jaxrs/swagger-all/1.5.5.sp1</bundle>
<bundle>mvn:com.eclipsesource.jaxrs/provider-swagger/1.1</bundle>
</feature>
<feature name="esh-tp-jupnp" description=" UPnP/DLNA library for Java" version="${project.version}">
<capability>esh.tp;feature=jupnp;version=2.2.0</capability>
<feature dependency="true">http</feature>
<feature dependency="true">esh-tp-httpclient</feature>
<bundle>mvn:org.jupnp/org.jupnp/2.2.0</bundle>
</feature>
<feature name="esh-tp-jmdns" description="An implemenation of multi-cast DNS in Java." version="${project.version}">
<capability>esh.tp;feature=jmdns;version=3.5.0</capability>
<bundle>mvn:org.jmdns/jmdns/3.5.0</bundle>
</feature>
<feature name="esh-tp-paho" description="MQTT v3 Client" version="${project.version}">
<capability>esh.tp;feature=paho;version=1.0.2</capability>
<bundle>mvn:org.eclipse.paho/org.eclipse.paho.client.mqttv3/1.0.2</bundle>
</feature>
<feature name="esh-tp-xtext" description="Xtext - Language Engineering Made Easy" version="${project.version}">
<capability>esh.tp;feature=xtext;version=2.9.2</capability>
<bundle>mvn:org.eclipse.xtext/org.eclipse.xtext/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.common/2.11.0-v20150805-0538</bundle>
<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.ecore/2.11.1-v20150805-0538</bundle>
<bundle dependency="true">mvn:org.eclipse.emf/org.eclipse.emf.ecore.xmi/2.11.1-v20150805-0538</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.common.types/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.lib/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.smap/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.util/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.xtend/org.eclipse.xtend.lib/2.9.2</bundle>
<bundle dependency="true">mvn:org.eclipse.xtend/org.eclipse.xtend.lib.macro/2.9.2</bundle>
<bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax-inject/1_2</bundle>
<!--<bundle dependency="true">mvn:com.google.inject/guice/3.0</bundle>-->
<!--<bundle dependency="true">mvn:com.google.guava/guava/14.0.1</bundle>-->
<!--<bundle dependency="true">wrap:mvn:org.antlr/antlr-runtime/3.2</bundle>-->
<!--<bundle dependency="true">wrap:mvn:aopalliance/aopalliance/1.0</bundle>-->
<bundle dependency="true">mvn:de.maggu2810.p2redist/com.google.inject/3.0.0.v201312141243</bundle>
<bundle dependency="true">mvn:de.maggu2810.p2redist/com.google.guava/10.0.1.v201203051515</bundle>
<bundle dependency="true">mvn:de.maggu2810.p2redist/org.antlr.runtime/3.2.0.v201101311130</bundle>
<bundle dependency="true">mvn:de.maggu2810.p2redist/org.eclipse.equinox.common/3.7.0.v20150402-1709</bundle>
<bundle dependency="true">mvn:de.maggu2810.p2redist/org.eclipse.equinox.registry/3.6.0.v20150318-1503</bundle>
<bundle dependency="true">mvn:de.maggu2810.p2redist/org.eclipse.equinox.supplement/1.6.0.v20141009-1504</bundle>
<!-- Add ASM package -->
<!-- org.eclipse.xtext.common.types is using Require-Bundle -->
<bundle dependency="true">mvn:de.maggu2810.requirebundle.fix/org.objectweb.asm/5.0.2</bundle>
<bundle dependency="true" start-level="20">mvn:org.ow2.asm/asm-all/5.0.2</bundle>
</feature>
</features>

Просмотреть файл

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.smarthome</groupId>
<artifactId>features</artifactId>
<version>0.8.0-SNAPSHOT</version>
</parent>
<artifactId>karaf-verify</artifactId>
<packaging>feature</packaging>
<name>Eclipse SmartHome Karaf Feature Verification</name>
<dependencies>
<dependency>
<groupId>org.apache.karaf.features</groupId>
<artifactId>framework</artifactId>
<version>${karaf.version}</version>
<type>kar</type>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<version>${karaf.version}</version>
<extensions>true</extensions>
<executions>
<execution>
<id>verify-esh</id>
<!--<phase>process-resources</phase>-->
<goals>
<goal>verify</goal>
</goals>
<configuration>
<descriptors>
<descriptor>mvn:org.apache.karaf.features/framework/${karaf.version}/xml/features</descriptor>
<descriptor>mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features</descriptor>
<descriptor>mvn:${project.groupId}/karaf-tp/${project.version}/xml/features</descriptor>
<descriptor>mvn:${project.groupId}/karaf/${project.version}/xml/features</descriptor>
</descriptors>
<distribution>org.apache.karaf.features:framework</distribution>
<javase>1.8</javase>
<framework>
<feature>framework</feature>
</framework>
<features>
<feature>esh-*</feature>
</features>
<verifyTransitive>false</verifyTransitive>
<ignoreMissingConditions>true</ignoreMissingConditions>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

Просмотреть файл

@ -3,14 +3,9 @@
<feature name="esh-base" description="ESH" version="${project.version}">
<details>ESH base bundles</details>
<feature>esh-tp-base</feature>
<feature dependency="true">esh-tp-commons</feature>
<feature dependency="true">esh-tp-xtext</feature>
<feature dependency="true">esh-tp</feature>
<requirement>esh.tp;filter:="(&amp;(feature=xtext)(version&gt;=2.9.2)(!(version&gt;=2.9.3)))"</requirement>
<requirement>esh.tp;filter:="(feature=jax-rs)"</requirement>
<bundle>mvn:org.eclipse.smarthome.config/org.eclipse.smarthome.config.core/${project.version}</bundle>
<bundle>mvn:org.eclipse.smarthome.config/org.eclipse.smarthome.config.discovery/${project.version}</bundle>
<bundle>mvn:org.eclipse.smarthome.config/org.eclipse.smarthome.config.dispatch/${project.version}</bundle>
@ -152,21 +147,18 @@
<feature name="esh-io-transport-mdns" version="${project.version}">
<feature>esh-base</feature>
<feature dependency="true">esh-tp-jmdns</feature>
<requirement>esh.tp;filter:="(feature=jmdns)"</requirement>
<bundle>mvn:org.eclipse.smarthome.io/org.eclipse.smarthome.io.transport.mdns/${project.version}</bundle>
</feature>
<feature name="esh-io-transport-mqtt" version="${project.version}">
<feature>esh-base</feature>
<feature dependency="true">esh-tp-paho</feature>
<requirement>esh.tp;filter:="(feature=paho)"</requirement>
<bundle>mvn:org.eclipse.smarthome.io/org.eclipse.smarthome.io.transport.mqtt/${project.version}</bundle>
</feature>
<feature name="esh-io-transport-upnp" version="${project.version}">
<feature>esh-base</feature>
<feature dependency="true">esh-tp-jupnp</feature>
<requirement>esh.tp;filter:="(feature=jupnp)"</requirement>
<bundle>mvn:org.eclipse.smarthome.io/org.eclipse.smarthome.io.transport.upnp/${project.version}</bundle>
</feature>

Просмотреть файл

@ -28,6 +28,8 @@
<module>org.eclipse.smarthome.feature.designer</module>
<module>org.eclipse.smarthome.feature.test</module>
<module>karaf</module>
<module>karaf-tp</module>
<module>karaf-verify</module>
</modules>
</project>