+1. Building a Karaf Feature and deploying it in an Opendaylight Karaf distribution :
+ 1. This is a new method for Opendaylight distribution wherein there is no defined editions such
+ as Base, Virtualization or SP editions. The end-customer can choose to deploy the required feature
+ based on his/her deployment needs.
+
+ 2. From the root ovsdb/ directory, execute "mvn clean install"
+
+ 3. Next unzip the distribution-karaf-<VERSION_NUMBER>-SNAPSHOT.zip file created from step #2 in
+ the directory ovsdb/distribution/opendaylight-karaf/target like so:
+ "unzip distribution-karaf-<VERSION_NUMBER>-SNAPSHOT.zip"
+
+ 4. Once karaf has started and you see the Opendaylight ascii art in the console, the last step
+ is to start the OVSDB plugin framework with the following command in the karaf console:
+ "feature:install odl-ovsdb-openstack odl-ovsdb-northbound" (without quotation marks).
+
+ Sample output from Karaf console :
+
+ opendaylight-user@root>feature:list | grep -i ovsdb
+ odl-ovsdb-all | 1.0.0-SNAPSHOT | | ovsdb-1.0.0-SNAPSHOT | OpenDaylight :: OVSDB :: all
+ odl-ovsdb-library | 1.0.0-SNAPSHOT | x | ovsdb-1.0.0-SNAPSHOT | OVSDB :: Library
+ odl-ovsdb-schema-openvswitch | 1.0.0-SNAPSHOT | x | ovsdb-1.0.0-SNAPSHOT | OVSDB :: Schema :: Open_vSwitch
+ odl-ovsdb-schema-hardwarevtep | 1.0.0-SNAPSHOT | x | ovsdb-1.0.0-SNAPSHOT | OVSDB :: Schema :: hardware_vtep
+ odl-ovsdb-plugin | 1.0.0-SNAPSHOT | x | ovsdb-1.0.0-SNAPSHOT | OpenDaylight :: OVSDB :: Plugin
+ odl-ovsdb-northbound | 0.6.0-SNAPSHOT | | ovsdb-1.0.0-SNAPSHOT | OpenDaylight :: OVSDB :: Northbound
+ odl-ovsdb-openstack | 1.0.0-SNAPSHOT | x | ovsdb-1.0.0-SNAPSHOT | OpenDaylight :: OVSDB :: OpenStack Network Virtual
+ odl-ovsdb-ovssfc | 0.0.1-SNAPSHOT | | ovsdb-0.0.1-SNAPSHOT | OpenDaylight :: OVSDB :: OVS Service Function Chai
+
+
+2. Building a bundle and deploying it in an Opendaylight Karaf distribution :
+ This method can be used to update and test new code in a bundle. If the bundle of interest is rebuilt as a
+ snapshot with the same version as what it already defined in a feature repo then that new bundle will be used
+ when the feature is loaded in karaf. If karaf is already running with the feature loaded then follow the steps
+ below to load the new bundle:
+
+ 1. Find the bundle id of the bundle you are going to rebuild:
+ - bundle:list -s | grep <bundlename>, i.e. bundle:list -s | grep odl-ovsdb-plugin
+
+ 2. Instruct karaf to watch the new bundle and reload it if it changes:
+ - bundle:watch <id>
+ - The id is the value returned in 1 above.
+ - You can also watch the bundle URL itself:
+ - bundle:watch mvn:org.opendaylight.ovsdb/plugin/1.0.2-SNAPSHOT
+
+ 3. Rebuild bundle.
+ - cd bundle dir, i.e. cd ovsdb/plugin
+ - mvn clean install. This will install the new bundle into the local mvn repo.
+
+ 4. karaf will see the changed bundle and reload it.
+
+
+3. Building an OVSDB based Opendaylight Virtualization edition:
+ 1. This is the legacy way to build and distribute Opendaylight archives. This method was
+ followed in Hydrogen. It might still work in Helium but it is best effort for support.
+ The preferred method for Helium and later is to use karaf.