When VIRT_DRIVER=fake, n-cpu processes are numbered (ie, n-cpu-1) in
start_nova. However, this scheme is not taken into account when
stopping nova, resulting in leftover n-cpu processes that fail
grenade's stop-base if USE_SCREEN=False. This special cases for the
fake driver in stop_nova_compute and ensures n-cpu(s) is shutdown
correctly.
Change-Id: Icebece9eadc4e10bb12fe4fdd2fa37d5f3983f66
Close-bug: #1378112
| ... | ... |
@@ -755,7 +755,14 @@ function start_nova {
|
| 755 | 755 |
} |
| 756 | 756 |
|
| 757 | 757 |
function stop_nova_compute {
|
| 758 |
- stop_process n-cpu |
|
| 758 |
+ if [ "$VIRT_DRIVER" == "fake" ]; then |
|
| 759 |
+ local i |
|
| 760 |
+ for i in `seq 1 $NUMBER_FAKE_NOVA_COMPUTE`; do |
|
| 761 |
+ stop_process n-cpu-${i}
|
|
| 762 |
+ done |
|
| 763 |
+ else |
|
| 764 |
+ stop_process n-cpu |
|
| 765 |
+ fi |
|
| 759 | 766 |
if is_service_enabled n-cpu && [[ -r $NOVA_PLUGINS/hypervisor-$VIRT_DRIVER ]]; then |
| 760 | 767 |
stop_nova_hypervisor |
| 761 | 768 |
fi |