devstack/extras.d
Sam Hague 09b56b1c31 Add options to configure provider network mappings for
OpenDaylight

OpenDaylight needs to know the physical network mapping
used with vlan tenant isolation. This is similar to how
the bridge_mappings cofig is used to map the physical
network to the bridge,
i.e. bridge_mappings=physnet1:br-eth1,physnet2:br-eth2.

OpenDaylight needs the physical network device itself:
provider_mappings=physnet1:eth1,physnet2:eth2.

OpenDaylight needs the mapping because the device port is
used when pushing flows. The neutron API's provide the
physical provider network value for example as physnet1.

DocImpact:
Use of VLANs with ML2 and the OpenDaylight mechanism driver
requires OpenDaylight Helium or newer to be installed.

Closes-Bug: #1315492
Change-Id: If7af9ce5735b01c35315a54c79355ca87b72c4b4
2014-05-20 18:35:52 +00:00
..
50-ironic.sh Integration testing preparation for Ironic 2014-03-14 13:44:00 -07: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-sahara.sh Rename all Savanna usages to Sahara 2014-03-12 22:25:20 +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 options to configure provider network mappings for 2014-05-20 18:35:52 +00:00
80-tempest.sh Complete moving Keystone setup out of keystone_data.sh 2014-03-10 15:17:30 -05: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.