devstack/extras.d
Kyle Mestery d44517dfcf Add support for configuring OVS to work with OpenDaylight
This adds support for running OpenDaylight as an OpenStack Neutron plugin
under devstack. This entails downloading the latest version of OpenDaylight,
configuring it, and running it as a service under devstack. This code also
includes pieces which configure Open vSwitch on each devstack node to point
at OpenDaylight as their OpenFlow and OVSDB control interface. This is
required for compute hosts, which will not be running any Neutron software
on them at all. This post-devstack configuration is handled in the extras
directory because of the fact there is no Neutron code running on the compute
hosts themselves.

Closes-bug: #1273917

Change-Id: I696e7c7fe63c835f90c56105775def305a702877
2014-03-06 16:19:10 +00:00
..
50-ironic.sh Fix hook script for Ironic 2014-02-12 11:04:15 +02:00
70-gantt.sh Add support for Gantt 2014-01-30 14:47:50 -07:00
70-marconi.sh Add marconi support to devstack 2013-11-27 11:09:21 +01:00
70-savanna.sh Improve savanna keystone auth configuration 2014-02-20 01:56:17 +04:00
70-trove.sh Renamed file 70-trove to 70-trove.sh 2014-01-29 15:27:18 +00:00
80-opendaylight.sh Add support for configuring OVS to work with OpenDaylight 2014-03-06 16:19:10 +00:00
80-tempest.sh Add new stack phase: post-extra 2013-11-07 12:35:38 -08:00
README.md Add new stack phase: post-extra 2013-11-07 12:35:38 -08:00

Extras Hooks

The extras.d directory contains project dispatch scripts that are called at specific times by stack.sh, unstack.sh and clean.sh. These hooks are used to install, configure and start additional projects during a DevStack run without any modifications to the base DevStack scripts.

When stack.sh reaches one of the hook points it sources the scripts in extras.d that end with .sh. To control the order that the scripts are sourced their names start with a two digit sequence number. DevStack reserves the sequence numbers 00 through 09 and 90 through 99 for its own use.

The scripts are sourced at the beginning of each script that calls them. The entire stack.sh variable space is available. The scripts are sourced with one or more arguments, the first of which defines the hook phase:

source | stack | unstack | clean

source: always called first in any of the scripts, used to set the
    initial defaults in a lib/* script or similar

stack: called by stack.sh.  There are four possible values for
    the second arg to distinguish the phase stack.sh is in:

    arg 2:  install | post-config | extra | post-extra

unstack: called by unstack.sh

clean: called by clean.sh.  Remember, clean.sh also calls unstack.sh
    so that work need not be repeated.