Correct configuration setting using NUMBER_FAKE_NOVA_COMPUTE

In Change-Id Ia3843818014f7c6c7526ef3aa9676bbddb8a85ca the 'host'
setting used for each of the fake compute hosts was accidentally named
'nhost' ('\nhost' was edited poorly), so the setting doesn't actually do
anything: you create multiple nova-compute processes they think they are
all on the same host and only one hypervisor and resource provider is
created.

With the correction in place, the wait_for_compute function needs to be
updated to be aware of the fact that the hostnames on the compute
services will have a numeric prefix when the fake virt driver is used.

Change-Id: I5e8430d170c0b1c4f195ebe510aff8be59e4a3bc
This commit is contained in:
Chris Dent 2018-02-07 18:35:40 +00:00
parent fbdefacc1d
commit ac475bbb2a
2 changed files with 7 additions and 2 deletions

View File

@ -446,7 +446,12 @@ function wait_for_compute {
ID=""
while [[ "\$ID" == "" ]]; do
sleep 1
if [[ "$VIRT_DRIVER" = 'fake' ]]; then
# When using the fake driver the compute hostnames have a suffix of 1 to NUMBER_FAKE_NOVA_COMPUTE
ID=\$(openstack --os-cloud devstack-admin --os-region "$REGION_NAME" compute service list --host `hostname`1 --service nova-compute -c ID -f value)
else
ID=\$(openstack --os-cloud devstack-admin --os-region "$REGION_NAME" compute service list --host `hostname` --service nova-compute -c ID -f value)
fi
done
EOF
time_stop "wait_for_service"

View File

@ -877,7 +877,7 @@ function start_nova_compute {
# creating or modifying real configurations. Each fake
# gets its own configuration and own log file.
local fake_conf="${NOVA_FAKE_CONF}-${i}"
iniset $fake_conf DEFAULT nhost "${HOSTNAME}${i}"
iniset $fake_conf DEFAULT host "${HOSTNAME}${i}"
run_process "n-cpu-${i}" "$NOVA_BIN_DIR/nova-compute --config-file $NOVA_CPU_CONF --config-file $fake_conf"
done
else