Files
devstack/lib/nova_plugins/hypervisor-fake
Balazs Gibizer f8b3c902be [nova-fake-virt]Restore compute restartability
Since the stable-compute-uuid nova feature the compute nodes created via
  VIRT_DRIVER=fake
cannot be restarted as these computes are not writing the compute_id
file to disk at first startup. Therefore any subsequent restart will
fail as nova-compute will refuse to start due to the missing compute_id
file but having a service already in the DB.

After this patch fake-virt uses a variant of the fake virt driver that
actually writes compute_id file to disk. To allow multiple fake computes
running on the same machine each compute now has a separate state_path
created so each can store a separate compute_id file.

Signed-off-by: Balazs Gibizer <gibi@redhat.com>
Change-Id: I813cab3c89554d1e319b2b3e5c3affd8ec5d887e
2025-09-26 16:59:50 +02:00

69 lines
1.5 KiB
Bash

#!/bin/bash
#
# lib/nova_plugins/hypervisor-fake
# Configure the fake hypervisor
# Enable with:
# VIRT_DRIVER=fake
# Dependencies:
# ``functions`` file
# ``nova`` configuration
# install_nova_hypervisor - install any external requirements
# configure_nova_hypervisor - make configuration changes, including those to other services
# start_nova_hypervisor - start any external services
# stop_nova_hypervisor - stop any external services
# cleanup_nova_hypervisor - remove transient data and cache
# Save trace setting
_XTRACE_VIRTFAKE=$(set +o | grep xtrace)
set +o xtrace
# Defaults
# --------
# Entry Points
# ------------
# clean_nova_hypervisor - Clean up an installation
function cleanup_nova_hypervisor {
# This function intentionally left blank
:
}
# configure_nova_hypervisor - Set config files, create data dirs, etc
function configure_nova_hypervisor {
iniset $NOVA_CONF DEFAULT compute_driver "fake.FakeDriverWithoutFakeNodes"
# Disable arbitrary limits
iniset $NOVA_CONF quota driver nova.quota.NoopQuotaDriver
}
# install_nova_hypervisor() - Install external components
function install_nova_hypervisor {
# This function intentionally left blank
:
}
# start_nova_hypervisor - Start any required external services
function start_nova_hypervisor {
# This function intentionally left blank
:
}
# stop_nova_hypervisor - Stop any external services
function stop_nova_hypervisor {
# This function intentionally left blank
:
}
# Restore xtrace
$_XTRACE_VIRTFAKE
# Local variables:
# mode: shell-script
# End: