Break all the application part of odl-openflowplugin-app-topology 70/73870/1
authorAnil Vishnoi <vishnoianil@gmail.com>
Tue, 10 Jul 2018 07:44:27 +0000 (00:44 -0700)
committerAnil Vishnoi <vishnoianil@gmail.com>
Tue, 10 Jul 2018 08:02:01 +0000 (01:02 -0700)
feature to their own feature, so that user can
load the required module only.

Currently odl-openflowplugin-app-topology, bundles following 3 apps
(1) lldp-speaker
(2) topology-lldp-discovery
(3) topology-manager

This patch adds 3 new features that bundles these apps in their
own features

(1) lldp-speaker -> odl-openflowplugin-app-lldp-speaker
(2) topology-lldp-discovery  -> odl-openflowplugin-app-topology-lldp-discovery
(3) topology-manager  ->odl-openflowplugin-app-topology-manager

old-openflowplugin-app-topology feature is still retained for backward
compatibility.

In general projects installs the odl-openflowplugin-flow-service-rest feature
that loads up the following bundles
(1) odl-openflowplugin-southbound
(2) odl-openflowplugin-app-config-pusher
(3) odl-openflowplugin-app-topology
(4) odl-openflowplugin-app-forwardingrules-manager
(5) odl-openflowplugin-app-reconciliation-framework

Apart from odl-openflowplugin-app-topology, rest all features bundle only single
application. So now if user want to install specific bundle from
odl-openfowplugin-app-topology, then user needs to install all these feature
seperately as there is no aggregated feature that provides different varient to user.
For example, if user don't want to use lldp based discovery, but they need topology service
, they need to install following features explictly:

(1) odl-openflowplugin-southbound
(2) odl-openflowplugin-app-config-pusher
(3) odl-openflowplugin-app-topology-manager
(4) odl-openflowplugin-app-forwardingrules-manager
(5) odl-openflowplugin-app-reconciliation-framework

Change-Id: I00ef8e62ce80377512dc8fa059e43e815caa581a
JIRA: OPNFLWPLUG-1024
Signed-off-by: Anil Vishnoi <vishnoianil@gmail.com>
features-aggregator/features-openflowplugin/pom.xml
features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml [new file with mode: 0644]
features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml [new file with mode: 0644]
features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml [new file with mode: 0644]
features-aggregator/pom.xml

index cd94bd9554848b5631dfb44f13672487107d8216..2d463408428e9564f909278de0e1128a7a090080 100644 (file)
             <type>xml</type>
             <classifier>features</classifier>
         </dependency>
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>odl-openflowplugin-app-lldp-speaker</artifactId>
+            <version>${project.version}</version>
+            <type>xml</type>
+            <classifier>features</classifier>
+        </dependency>
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>odl-openflowplugin-app-topology-lldp-discovery</artifactId>
+            <version>${project.version}</version>
+            <type>xml</type>
+            <classifier>features</classifier>
+        </dependency>
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>odl-openflowplugin-app-topology-manager</artifactId>
+            <version>${project.version}</version>
+            <type>xml</type>
+            <classifier>features</classifier>
+        </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
             <artifactId>odl-openflowplugin-drop-test</artifactId>
diff --git a/features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml b/features-aggregator/odl-openflowplugin-app-lldp-speaker/pom.xml
new file mode 100644 (file)
index 0000000..40d771f
--- /dev/null
@@ -0,0 +1,36 @@
+<?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/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>single-feature-parent</artifactId>
+        <version>3.1.2</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.opendaylight.openflowplugin</groupId>
+    <artifactId>odl-openflowplugin-app-lldp-speaker</artifactId>
+    <packaging>feature</packaging>
+    <version>0.7.0-SNAPSHOT</version>
+
+    <name>OpenDaylight :: Openflow Plugin :: Application - LLDP Speaker</name>
+
+    <dependencies>
+        <!-- feature dependencies -->
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>odl-openflowplugin-southbound</artifactId>
+            <version>${project.version}</version>
+            <classifier>features</classifier>
+            <type>xml</type>
+        </dependency>
+
+        <dependency>
+            <groupId>org.opendaylight.openflowplugin.applications</groupId>
+            <artifactId>lldp-speaker</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+    </dependencies>
+
+</project>
diff --git a/features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml b/features-aggregator/odl-openflowplugin-app-topology-lldp-discovery/pom.xml
new file mode 100644 (file)
index 0000000..95f8f1e
--- /dev/null
@@ -0,0 +1,36 @@
+<?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/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>single-feature-parent</artifactId>
+        <version>3.1.2</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.opendaylight.openflowplugin</groupId>
+    <artifactId>odl-openflowplugin-app-topology-lldp-discovery</artifactId>
+    <packaging>feature</packaging>
+    <version>0.7.0-SNAPSHOT</version>
+
+    <name>OpenDaylight :: Openflow Plugin :: Application - Topology LLDP Discovery</name>
+
+    <dependencies>
+        <!-- feature dependencies -->
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>odl-openflowplugin-southbound</artifactId>
+            <version>${project.version}</version>
+            <classifier>features</classifier>
+            <type>xml</type>
+        </dependency>
+
+        <dependency>
+            <groupId>org.opendaylight.openflowplugin.applications</groupId>
+            <artifactId>topology-lldp-discovery</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+    </dependencies>
+
+</project>
diff --git a/features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml b/features-aggregator/odl-openflowplugin-app-topology-manager/pom.xml
new file mode 100644 (file)
index 0000000..f6de371
--- /dev/null
@@ -0,0 +1,36 @@
+<?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/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.opendaylight.odlparent</groupId>
+        <artifactId>single-feature-parent</artifactId>
+        <version>3.1.2</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.opendaylight.openflowplugin</groupId>
+    <artifactId>odl-openflowplugin-app-topology-manager</artifactId>
+    <packaging>feature</packaging>
+    <version>0.7.0-SNAPSHOT</version>
+
+    <name>OpenDaylight :: Openflow Plugin :: Application - Topology Manager</name>
+
+    <dependencies>
+        <!-- feature dependencies -->
+        <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>odl-openflowplugin-southbound</artifactId>
+            <version>${project.version}</version>
+            <classifier>features</classifier>
+            <type>xml</type>
+        </dependency>
+
+        <dependency>
+            <groupId>org.opendaylight.openflowplugin.applications</groupId>
+            <artifactId>topology-manager</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+
+    </dependencies>
+
+</project>
index a35ab1903ee09a81ce0f7e7e7eccd40110bcbe62..6bc61e18b7f316cd0c798c2c9593b837af52a56d 100644 (file)
@@ -23,6 +23,9 @@
         <module>odl-openflowplugin-app-table-miss-enforcer</module>
         <module>odl-openflowplugin-app-config-pusher</module>
         <module>odl-openflowplugin-app-topology</module>
+        <module>odl-openflowplugin-app-lldp-speaker</module>
+        <module>odl-openflowplugin-app-topology-lldp-discovery</module>
+        <module>odl-openflowplugin-app-topology-manager</module>
         <module>odl-openflowplugin-app-bulk-o-matic</module>
         <module>odl-openflowplugin-app-notifications</module>
         <module>odl-openflowplugin-app-forwardingrules-manager</module>