Skip to content

Commit

Permalink
Run Neutron migrations after creating schema
Browse files Browse the repository at this point in the history
Partial-Bug 1207402

This patch executes Neutron DB migrations (based on alembic)
before starting the Neutron services, similar to what happens
for most of other openstack projects managed by devstack.
This will ensure devstack always creates correctly version-stamped
Neutron databases.

Change-Id: Ia941c426a1563bcc4cb5eae64ea30c0bf7677220
  • Loading branch information
salv-orlando committed Aug 6, 2013
1 parent e024bee commit dd64988
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 8 deletions.
10 changes: 3 additions & 7 deletions lib/neutron
Expand Up @@ -367,7 +367,9 @@ function create_neutron_initial_network() {

# init_neutron() - Initialize databases, etc.
function init_neutron() {
:
recreate_database $Q_DB_NAME utf8
# Run Neutron db migrations
$NEUTRON_BIN_DIR/neutron-db-manage --config-file $NEUTRON_CONF --config-file /$Q_PLUGIN_CONF_FILE upgrade head
}

# install_neutron() - Collect source and prepare
Expand Down Expand Up @@ -614,12 +616,6 @@ function _configure_neutron_service() {
cp $NEUTRON_DIR/etc/api-paste.ini $Q_API_PASTE_FILE
cp $NEUTRON_DIR/etc/policy.json $Q_POLICY_FILE

if is_service_enabled $DATABASE_BACKENDS; then
recreate_database $Q_DB_NAME utf8
else
die $LINENO "A database must be enabled in order to use the $Q_PLUGIN Neutron plugin."
fi

# Update either configuration file with plugin
iniset $NEUTRON_CONF DEFAULT core_plugin $Q_PLUGIN_CLASS

Expand Down
5 changes: 4 additions & 1 deletion stack.sh
Expand Up @@ -939,7 +939,10 @@ if is_service_enabled neutron; then
echo_summary "Configuring Neutron"

configure_neutron
init_neutron
# Run init_neutron only on the node hosting the neutron API server
if is_service_enabled $DATABASE_BACKENDS && is_service_enabled q-svc; then
init_neutron
fi
fi

# Some Neutron plugins require network controllers which are not
Expand Down

0 comments on commit dd64988

Please sign in to comment.