Created Proper Feature File for AD-SAL 16/7916/4
authorMathieu Lemay <mlemay@inocybe.com>
Wed, 11 Jun 2014 18:09:39 +0000 (14:09 -0400)
committerMathieu Lemay <mlemay@inocybe.com>
Mon, 30 Jun 2014 13:20:45 +0000 (09:20 -0400)
PatchSet2: Brought in the base-features dependencies
   to the opendaylight-karaf pom file so
   features-adsal doesn't break for lack of it
   still getting the error:

dopendaylight-user@root>feature:install odl-adsal-all
'org.opendaylight.controller.logging.bridge.internal.LogListenerImpl@281cf63e' is removed as a LogListener, since it threw an exception.
Error executing command: Could not start bundle mvn:org.opendaylight.controller/sal.implementation/0.4.2-SNAPSHOT in feature(s) odl-adsal-core-0.8.1-SNAPSHOT: Unresolved constraint in bundle org.opendaylight.controller.sal.implementation [81]: Unable to resolve 81.0: missing requirement [81.0] osgi.wiring.package; (&(osgi.wiring.package=org.eclipse.osgi.framework.console)(version>=1.1.0)(!(version>=2.0.0)))

PatchSet3:  Rebased and fixed the commons.lang.version
to be commons.lang3.version.  Still getting the error
from Patch3.

PatchSet4: Fixed.

Change-Id: I8190b4bbc52fb1c3202570b5f77477e4a0f30c48
Signed-off-by: Mathieu Lemay <mlemay@inocybe.com>
Signed-off-by: Ed Warnicke <eaw@cisco.com>
features/adsal/pom.xml [new file with mode: 0644]
features/adsal/src/main/resources/features.xml [new file with mode: 0644]
opendaylight/distribution/opendaylight-karaf/pom.xml
pom.xml

diff --git a/features/adsal/pom.xml b/features/adsal/pom.xml
new file mode 100644 (file)
index 0000000..0ccb17a
--- /dev/null
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.opendaylight.controller</groupId>
+    <artifactId>commons.opendaylight</artifactId>
+    <version>1.4.2-SNAPSHOT</version>
+    <relativePath>../../opendaylight/commons/opendaylight</relativePath>
+  </parent>
+  <artifactId>features-adsal</artifactId>
+  <version>${sal.version}</version>
+  <packaging>pom</packaging>
+  <name>Features :: AD-SAL Features</name>
+  <description>AD-SAL Features POM</description>
+  <properties>
+    <features.file>features.xml</features.file>
+  </properties>
+  <dependencies>
+    <dependency>
+      <groupId>org.opendaylight.controller</groupId>
+      <artifactId>base-features</artifactId>
+      <version>${project.parent.version}</version>
+      <classifier>features</classifier>
+      <type>xml</type>
+      <scope>runtime</scope>
+    </dependency>
+  </dependencies>
+  <build>
+    <resources>
+      <resource>
+        <filtering>true</filtering>
+        <directory>src/main/resources</directory>
+      </resource>
+    </resources>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>filter</id>
+            <goals>
+              <goal>resources</goal>
+            </goals>
+            <phase>generate-resources</phase>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-artifacts</id>
+            <goals>
+              <goal>attach-artifact</goal>
+            </goals>
+            <phase>package</phase>
+            <configuration>
+              <artifacts>
+                <artifact>
+                  <file>${project.build.directory}/classes/${features.file}</file>
+                  <type>xml</type>
+                  <classifier>features</classifier>
+                </artifact>
+              </artifacts>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/features/adsal/src/main/resources/features.xml b/features/adsal/src/main/resources/features.xml
new file mode 100644 (file)
index 0000000..f955315
--- /dev/null
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<features name="adsal-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
+   <feature name="odl-adsal-all" description="OpenDaylight AD-SAL All Features" version="${sal.version}">
+      <feature version="${sal.version}">odl-adsal-core</feature>
+      <feature version="${sal.networkconfiguration.version}">odl-adsal-networkconfiguration</feature>
+      <feature version="${sal.connection.version}">odl-adsal-connection</feature>
+      <feature version="${clustering.services.version}">odl-adsal-clustering</feature>
+      <feature version="${configuration.version}">odl-adsal-configuration</feature>
+   </feature>
+   <feature name="odl-adsal-core" description="OpenDaylight :: AD-SAL :: Core" version="${sal.version}">
+      <feature>base-felix-dm</feature>
+      <feature>base-dummy-console</feature>
+      <feature version="${project.version}">odl-adsal-thirdparty</feature>
+      <bundle start="true" start-level="35">mvn:org.apache.commons/commons-lang3/${commons.lang3.version}</bundle>
+  <!--    <bundle>mvn:org.osgi/org.osgi.compendium/${osgi.compendium.version}</bundle> -->
+      <bundle>mvn:org.opendaylight.controller/sal/${sal.version}</bundle>
+      <bundle>mvn:org.opendaylight.controller/sal.implementation/${sal.implementation.version}</bundle>
+   </feature>
+   <feature name="odl-adsal-networkconfiguration" description="OpenDaylight :: AD-SAL :: Network Configuration" version="${sal.networkconfiguration.version}">
+      <bundle>mvn:org.opendaylight.controller/sal.networkconfiguration/${sal.networkconfiguration.version}</bundle>
+      <bundle>mvn:org.opendaylight.controller/sal.networkconfiguration.implementation/${sal.networkconfiguration.version}</bundle>
+   </feature>
+   <feature name="odl-adsal-connection" description="OpenDaylight :: AD-SAL :: Connection" version="${sal.connection.version}">
+      <feature>odl-adsal-core</feature>
+      <bundle>mvn:org.opendaylight.controller/sal.connection/${sal.connection.version}</bundle>
+      <bundle>mvn:org.opendaylight.controller/sal.connection.implementation/${sal.connection.version}</bundle>
+   </feature>
+   <feature name="odl-adsal-clustering" description="OpenDaylight :: AD-SAL :: Clustering" version="${clustering.services.version}">
+      <feature>transaction</feature>
+      <feature>base-felix-dm</feature>
+      <feature>base-eclipselink-persistence</feature>
+      <feature version="${sal.version}">odl-adsal-core</feature>
+      <bundle>mvn:org.opendaylight.controller/clustering.services/${clustering.services.version}</bundle>
+      <bundle>mvn:org.opendaylight.controller/clustering.services-implementation/${clustering.services_implementation.version}</bundle>
+      <bundle>mvn:org.opendaylight.controller/clustering.stub/${clustering.stub.version}</bundle>
+   </feature>
+   <feature name="odl-adsal-configuration" description="OpenDaylight :: AD-SAL :: Configuration" version="${configuration.version}">
+      <feature version="${sal.version}">odl-adsal-core</feature>
+      <feature version="${clustering.services.version}">odl-adsal-clustering</feature>
+      <bundle>mvn:org.opendaylight.controller/configuration/${configuration.version}</bundle>
+      <bundle>mvn:org.opendaylight.controller/configuration.implementation/${configuration.implementation.version}</bundle>
+   </feature>
+   <feature name="odl-adsal-thirdparty" description="OpenDaylight :: AD-SAL :: Third-Party Depenencies" version="${project.version}">
+      <bundle>mvn:org.opendaylight.controller/logging.bridge/${logging.bridge.version}</bundle>
+   </feature>
+</features>
index 8a23a6b5e60e64a6baaf20fd9d7d9712894f57dd..d8f6ba1526fca74843e50276e025b96b06237f13 100644 (file)
       <version>${karaf.version}</version>
       <type>kar</type>
     </dependency>
+    <dependency>
+      <groupId>org.opendaylight.controller</groupId>
+      <artifactId>base-features</artifactId>
+      <version>${project.version}</version>
+      <type>kar</type>
+    </dependency>
     <dependency>
       <groupId>org.opendaylight.controller</groupId>
       <artifactId>karaf.branding</artifactId>
     <dependency>
       <groupId>org.opendaylight.controller</groupId>
       <artifactId>base-features</artifactId>
-      <version>${project.version}</version>
-      <type>kar</type>
+      <version>${project.parent.version}</version>
+      <classifier>features</classifier>
+      <type>xml</type>
       <scope>runtime</scope>
     </dependency>
+    <!-- scope is compile so all features (there is only one) are installed
+            into startup.properties and the feature repo itself is not installed -->
     <dependency>
       <groupId>org.opendaylight.controller</groupId>
       <artifactId>config-features</artifactId>
       <type>xml</type>
       <scope>runtime</scope>
     </dependency>
-    <!--<dependency>
-      <groupId>org.opendaylight.controller</groupId>
-      <artifactId>base-features</artifactId>
-      <version>${project.version}</version>
-      <classifier>features</classifier>
-      <type>xml</type>
-      <scope>runtime</scope>
-    </dependency>-->
-    <!-- <dependency>
+    <dependency>
       <groupId>org.opendaylight.controller</groupId>
-      <artifactId>controller-features</artifactId>
-      <version>${project.version}</version>
+      <artifactId>features-adsal</artifactId>
+      <version>${sal.version}</version>
       <classifier>features</classifier>
       <type>xml</type>
       <scope>runtime</scope>
     </dependency>
-  -->
     <dependency>
       <groupId>org.opendaylight.controller</groupId>
       <artifactId>mdsal-features</artifactId>
diff --git a/pom.xml b/pom.xml
index c54d9a930f28ad39ad680f30314508248bd2eea5..012d9399b8db54c98ed45eae48cecd13d660bc87 100644 (file)
--- a/pom.xml
+++ b/pom.xml
     <!-- Karaf Distribution -->
     <module>features/base</module>
     <module>features/controller</module>
+    <module>features/adsal</module>
     <module>opendaylight/dummy-console</module>
     <module>opendaylight/karaf-branding</module>
     <module>opendaylight/distribution/opendaylight-karaf</module>