diff --git a/devstack/lib/ml2 b/devstack/lib/ml2 index 3dde13ec091..936e8d4b0f5 100644 --- a/devstack/lib/ml2 +++ b/devstack/lib/ml2 @@ -17,3 +17,16 @@ function configure_ml2 { fi done } + +function configure_ml2_extension_drivers { + if is_neutron_legacy_enabled; then + # NOTE(yamamoto): This overwrites what neutron-legacy set, + # with the latest set of drivers. + # While we modifies Q_ML2_PLUGIN_EXT_DRIVERS (via + # neutron_ml2_extension_driver_add calls) in the post-config phase, + # lib/neutron-legcay populates this in "configure_neutron", which is + # before post-config. + # REVISIT(yamamoto): Probably this ought to be in lib/neutron-legcay + iniset /$NEUTRON_CORE_PLUGIN_CONF ml2 extension_drivers ${Q_ML2_PLUGIN_EXT_DRIVERS} + fi +} diff --git a/devstack/plugin.sh b/devstack/plugin.sh index 0d4ce8d01b6..032640cc860 100644 --- a/devstack/plugin.sh +++ b/devstack/plugin.sh @@ -19,6 +19,14 @@ fi if [[ "$1" == "stack" ]]; then case "$2" in install) + if [[ "$NEUTRON_AGENT" == "openvswitch" ]] && \ + [[ "$Q_BUILD_OVS_FROM_GIT" == "True" ]]; then + remove_ovs_packages + compile_ovs True /usr /var + start_new_ovs + fi + ;; + post-config) if is_service_enabled q-flavors neutron-flavors; then configure_flavors fi @@ -30,21 +38,11 @@ if [[ "$1" == "stack" ]]; then fi if is_service_enabled q-dns neutron-dns; then configure_dns_extension + post_config_dns_extension fi if is_service_enabled neutron-segments; then configure_segments_extension fi - if [[ "$NEUTRON_AGENT" == "openvswitch" ]] && \ - [[ "$Q_BUILD_OVS_FROM_GIT" == "True" ]]; then - remove_ovs_packages - compile_ovs True /usr /var - start_new_ovs - fi - ;; - post-config) - if is_service_enabled q-dns neutron-dns; then - post_config_dns_extension - fi if is_service_enabled q-agt neutron-agent; then configure_l2_agent fi @@ -58,6 +56,9 @@ if [[ "$1" == "stack" ]]; then configure_l2_agent configure_l2_agent_sriovnicswitch fi + if [ $NEUTRON_CORE_PLUGIN = ml2 ]; then + configure_ml2_extension_drivers + fi ;; extra) if is_service_enabled q-sriov-agt neutron-sriov-agent; then