Refactor rpc backend vhost creation
The creation of the cellsv1 rpc vhost was buried in the restart function, which makes it hard to extend. This breaks it out into a helper method and moves the conditional logic into the nova module itself. Change-Id: Ib0e377aabe45c27bb6ce59ca275ce73085e8b9d2
This commit is contained in:
parent
0fddb35cd8
commit
6f0205b036
1
lib/nova
1
lib/nova
@ -644,6 +644,7 @@ function init_nova_cells {
|
||||
if is_service_enabled n-cell; then
|
||||
cp $NOVA_CONF $NOVA_CELLS_CONF
|
||||
iniset $NOVA_CELLS_CONF database connection `database_connection_url $NOVA_CELLS_DB`
|
||||
rpc_backend_add_vhost child_cell
|
||||
iniset_rpc_backend nova $NOVA_CELLS_CONF DEFAULT child_cell
|
||||
iniset $NOVA_CELLS_CONF DEFAULT dhcpbridge_flagfile $NOVA_CELLS_CONF
|
||||
iniset $NOVA_CELLS_CONF cells enable True
|
||||
|
@ -97,13 +97,20 @@ function restart_rpc_backend {
|
||||
|
||||
break
|
||||
done
|
||||
if is_service_enabled n-cell; then
|
||||
# Add partitioned access for the child cell
|
||||
if [ -z `sudo rabbitmqctl list_vhosts | grep child_cell` ]; then
|
||||
sudo rabbitmqctl add_vhost child_cell
|
||||
sudo rabbitmqctl set_permissions -p child_cell $RABBIT_USERID ".*" ".*" ".*"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# adds a vhost to the rpc backend
|
||||
function rpc_backend_add_vhost {
|
||||
local vhost="$1"
|
||||
if is_service_enabled rabbit; then
|
||||
if [ -z `sudo rabbitmqctl list_vhosts | grep $vhost` ]; then
|
||||
sudo rabbitmqctl add_vhost $vhost
|
||||
sudo rabbitmqctl set_permissions -p $vhost $RABBIT_USERID ".*" ".*" ".*"
|
||||
fi
|
||||
else
|
||||
echo 'RPC backend does not support vhosts'
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user