BUG-5222: use dependency=true between features 78/47778/2
authorRobert Varga <rovarga@cisco.com>
Mon, 31 Oct 2016 13:06:01 +0000 (14:06 +0100)
committerTom Pantelis <tpanteli@brocade.com>
Mon, 14 Nov 2016 14:12:21 +0000 (14:12 +0000)
This patch marks feature dependencies as such, so karaf
knows not to reinstall them if they are already installed.

Change-Id: I979d85ec9dcf890a246ace63720f5ec194104cc3
Signed-off-by: Robert Varga <rovarga@cisco.com>
common/features/src/main/features/features.xml
model/features/src/main/features/features.xml

index f328c2043d0850651c20dcdc5df360188ee94295..0e6b88cb32e24e4c2a16299cbe2982bd02203cb8 100644 (file)
@@ -7,9 +7,9 @@
  terms of the Eclipse Public License v1.0 which accompanies this distribution,
  and is available at http://www.eclipse.org/legal/epl-v10.html
 -->
-<features name="odl-yangtools-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
+<features name="odl-yangtools-${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.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
+          xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
 
     <repository>mvn:org.opendaylight.odlparent/features-odlparent/{{VERSION}}/xml/features</repository>
     <repository>mvn:org.opendaylight.yangtools/features-yangtools/{{VERSION}}/xml/features</repository>
     </feature>
 
     <feature name='odl-mdsal-dom' version='${project.version}' description='OpenDaylight :: MD-SAL :: DOM'>
-        <feature version='${project.version}'>odl-mdsal-dom-broker</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-dom-broker</feature>
     </feature>
 
     <feature name='odl-mdsal-common' version='${project.version}' description='OpenDaylight :: MD-SAL :: DOM Broker'>
-        <feature version='${yangtools.version}'>odl-yangtools-common</feature>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-common</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-common-api/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-dom-api' version='${project.version}' description='OpenDaylight :: MD-SAL :: DOM API &amp; SPI'>
-        <feature version='${project.version}'>odl-mdsal-common</feature>
-        <feature version='${yangtools.version}'>odl-yangtools-yang-data</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-common</feature>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-yang-data</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-dom-api/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-dom-spi/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-dom-broker' version='${project.version}' description='OpenDaylight :: MD-SAL :: DOM Broker'>
-        <feature version='${yangtools.version}'>odl-yangtools-yang-parser</feature>
-        <feature version='${project.version}'>odl-mdsal-dom-api</feature>
-        <feature version='[3.3.0,4.0.0)'>odl-lmax</feature>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-yang-parser</feature>
+        <feature version='[3.3.0,4.0.0)' dependency="true">odl-lmax</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-dom-api</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-dom-api/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-dom-spi/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-dom-broker/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-binding-base' version='${project.version}' description='OpenDaylight :: MD-SAL :: Binding Base Concepts'>
-        <feature version='${yangtools.version}'>odl-yangtools-common</feature>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-common</feature>
         <bundle>mvn:org.opendaylight.mdsal/yang-binding/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal.model/yang-ext/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-binding-runtime' version='${project.version}' description='OpenDaylight :: MD-SAL :: Binding Generator'>
-        <feature version='${project.version}'>odl-mdsal-binding-base</feature>
-        <feature version='${yangtools.version}'>odl-yangtools-yang-data</feature>
-        <bundle>mvn:org.javassist/javassist/{{VERSION}}</bundle>
-        <bundle>mvn:org.apache.commons/commons-lang3/{{VERSION}}</bundle>
-        <bundle>mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.lib/{{VERSION}}</bundle>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-yang-data</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-binding-base</feature>
+        <bundle dependency="true">mvn:org.javassist/javassist/{{VERSION}}</bundle>
+        <bundle dependency="true">mvn:org.apache.commons/commons-lang3/{{VERSION}}</bundle>
+        <bundle dependency="true">mvn:org.eclipse.xtext/org.eclipse.xtext.xbase.lib/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-binding-generator-api/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-binding-generator-impl/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-binding-generator-util/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-binding-api' version='${project.version}' description='OpenDaylight :: MD-SAL :: Binding Base Concepts'>
-        <feature version='${project.version}'>odl-mdsal-common</feature>
-        <feature version='${project.version}'>odl-mdsal-binding-base</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-common</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-binding-base</feature>
         <bundle>mvn:org.opendaylight.mdsal.model/general-entity/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-binding-api/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-binding-dom-adapter' version='${project.version}' description='OpenDaylight :: MD-SAL :: Binding Generator'>
-        <feature version='${project.version}'>odl-mdsal-binding-runtime</feature>
-        <feature version='${project.version}'>odl-mdsal-binding-api</feature>
-        <feature version='${project.version}'>odl-mdsal-dom-api</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-binding-runtime</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-binding-api</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-dom-api</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-binding-dom-adapter/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-eos-common' version='${project.version}' description='OpenDaylight :: MD-SAL :: EOS :: Common'>
-        <feature version='${yangtools.version}'>odl-yangtools-common</feature>
-        <feature version='${yangtools.version}'>odl-yangtools-yang-data</feature>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-common</feature>
+        <feature version='${yangtools.version}' dependency="true">odl-yangtools-yang-data</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-eos-common-api/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-eos-common-spi/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-eos-dom' version='${project.version}' description='OpenDaylight :: MD-SAL :: EOS :: DOM'>
-        <feature version='${project.version}'>odl-mdsal-eos-common</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-eos-common</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-eos-dom-api/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-eos-binding' version='${project.version}' description='OpenDaylight :: MD-SAL :: EOS :: Binding'>
-        <feature version='${project.version}'>odl-mdsal-eos-dom</feature>
-        <feature version='${project.version}'>odl-mdsal-binding-dom-adapter</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-eos-dom</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-binding-dom-adapter</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-eos-binding-api/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-eos-binding-adapter/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-singleton-common' version='${project.version}' description='OpenDaylight :: MD-SAL :: Singleton :: Common'>
-        <feature version='${project.version}'>odl-mdsal-eos-common</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-eos-common</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-singleton-common-api/{{VERSION}}</bundle>
     </feature>
 
     <feature name='odl-mdsal-singleton-dom' version='${project.version}' description='OpenDaylight :: MD-SAL :: Singleton :: DOM'>
-        <feature version='${project.version}'>odl-mdsal-singleton-common</feature>
-        <feature version='${project.version}'>odl-mdsal-eos-dom</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-singleton-common</feature>
+        <feature version='${project.version}' dependency="true">odl-mdsal-eos-dom</feature>
         <bundle>mvn:org.opendaylight.mdsal/mdsal-singleton-dom-impl/{{VERSION}}</bundle>
     </feature>
 
index 9f729f375c944bb3c2569a8976d594127b604973..5f7812851fa129b575828ced6bd132abfb2b9a25 100644 (file)
@@ -7,14 +7,14 @@
  terms of the Eclipse Public License v1.0 which accompanies this distribution,
  and is available at http://www.eclipse.org/legal/epl-v10.html
 -->
-<features name="odl-mdsal-models-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
+<features name="odl-mdsal-models-${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.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
+          xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0 http://karaf.apache.org/xmlns/features/v1.3.0">
 
     <repository>mvn:org.opendaylight.mdsal/features-mdsal/{{VERSION}}/xml/features</repository>
 
     <feature name='odl-mdsal-models' version='${project.version}' description='OpenDaylight :: MD-SAL :: Models'>
-        <feature version='${mdsal.version}'>odl-mdsal-binding-base</feature>
+        <feature version='${mdsal.version}' dependency="true">odl-mdsal-binding-base</feature>
         <bundle>mvn:org.opendaylight.mdsal.model/iana-afn-safi/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal.model/iana-if-type-2014-05-08/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.mdsal.model/ietf-inet-types/{{VERSION}}</bundle>