Added support for fake drivers as Cinder backend
FakeLoggingVolumeDriver will be used for functional Cinder tests to prevent dependencies on any storage. FakeGateDriver is based on LVM and will be used to run Tempest tests for such features like CG's, replication, etc. Depends-On: I383bcdb531c7d52c0fdbb6875de73f1274a92854 Change-Id: I2dc8ea416f5eb3fcc9d2e959533497e464220ff5
This commit is contained in:
parent
adcf0c50cd
commit
447f141d4f
47
lib/cinder_backends/fake
Normal file
47
lib/cinder_backends/fake
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# lib/cinder_backends/fake
|
||||||
|
# Configure the Fake backend
|
||||||
|
|
||||||
|
# Enable with:
|
||||||
|
#
|
||||||
|
# CINDER_ENABLED_BACKENDS+=,fake:fake
|
||||||
|
|
||||||
|
# Dependencies:
|
||||||
|
#
|
||||||
|
# - ``functions`` file
|
||||||
|
# - ``cinder`` configurations
|
||||||
|
|
||||||
|
# CINDER_CONF
|
||||||
|
|
||||||
|
# clean_cinder_backend_fake - called from clean_cinder()
|
||||||
|
# configure_cinder_backend_fake - called from configure_cinder()
|
||||||
|
# init_cinder_backend_fake - called from init_cinder()
|
||||||
|
|
||||||
|
|
||||||
|
# Save trace setting
|
||||||
|
_XTRACE_CINDER_FAKE=$(set +o | grep xtrace)
|
||||||
|
set +o xtrace
|
||||||
|
|
||||||
|
|
||||||
|
function cleanup_cinder_backend_fake {
|
||||||
|
local be_name=$1
|
||||||
|
}
|
||||||
|
|
||||||
|
function configure_cinder_backend_fake {
|
||||||
|
local be_name=$1
|
||||||
|
|
||||||
|
iniset $CINDER_CONF $be_name volume_backend_name $be_name
|
||||||
|
iniset $CINDER_CONF $be_name volume_driver "cinder.tests.fake_driver.FakeLoggingVolumeDriver"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function init_cinder_backend_fake {
|
||||||
|
local be_name=$1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Restore xtrace
|
||||||
|
$_XTRACE_CINDER_FAKE
|
||||||
|
|
||||||
|
# mode: shell-script
|
||||||
|
# End:
|
74
lib/cinder_backends/fake_gate
Normal file
74
lib/cinder_backends/fake_gate
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# lib/cinder_backends/lvm
|
||||||
|
# Configure the LVM backend
|
||||||
|
|
||||||
|
# Enable with:
|
||||||
|
#
|
||||||
|
# CINDER_ENABLED_BACKENDS+=,fake_gate:lvmname
|
||||||
|
|
||||||
|
# Dependencies:
|
||||||
|
#
|
||||||
|
# - ``functions`` file
|
||||||
|
# - ``cinder`` configurations
|
||||||
|
|
||||||
|
# CINDER_CONF
|
||||||
|
# DATA_DIR
|
||||||
|
# VOLUME_GROUP_NAME
|
||||||
|
|
||||||
|
# clean_cinder_backend_lvm - called from clean_cinder()
|
||||||
|
# configure_cinder_backend_lvm - called from configure_cinder()
|
||||||
|
# init_cinder_backend_lvm - called from init_cinder()
|
||||||
|
|
||||||
|
|
||||||
|
# Save trace setting
|
||||||
|
_XTRACE_CINDER_LVM=$(set +o | grep xtrace)
|
||||||
|
set +o xtrace
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: resurrect backing device...need to know how to set values
|
||||||
|
#VOLUME_BACKING_DEVICE=${VOLUME_BACKING_DEVICE:-}
|
||||||
|
|
||||||
|
# Entry Points
|
||||||
|
# ------------
|
||||||
|
|
||||||
|
# cleanup_cinder_backend_lvm - Delete volume group and remove backing file
|
||||||
|
# cleanup_cinder_backend_lvm $be_name
|
||||||
|
function cleanup_cinder_backend_lvm {
|
||||||
|
local be_name=$1
|
||||||
|
|
||||||
|
# Campsite rule: leave behind a volume group at least as clean as we found it
|
||||||
|
clean_lvm_volume_group $VOLUME_GROUP_NAME-$be_name
|
||||||
|
clean_lvm_filter
|
||||||
|
}
|
||||||
|
|
||||||
|
# configure_cinder_backend_lvm - Set config files, create data dirs, etc
|
||||||
|
# configure_cinder_backend_lvm $be_name
|
||||||
|
function configure_cinder_backend_lvm {
|
||||||
|
local be_name=$1
|
||||||
|
|
||||||
|
iniset $CINDER_CONF $be_name volume_backend_name $be_name
|
||||||
|
iniset $CINDER_CONF $be_name volume_driver "cinder.tests.fake_driver.FakeGateDriver"
|
||||||
|
iniset $CINDER_CONF $be_name volume_group $VOLUME_GROUP_NAME-$be_name
|
||||||
|
iniset $CINDER_CONF $be_name iscsi_helper "$CINDER_ISCSI_HELPER"
|
||||||
|
iniset $CINDER_CONF $be_name lvm_type "$CINDER_LVM_TYPE"
|
||||||
|
|
||||||
|
if [[ "$CINDER_VOLUME_CLEAR" == "non" ]]; then
|
||||||
|
iniset $CINDER_CONF $be_name volume_clear none
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# init_cinder_backend_lvm - Initialize volume group
|
||||||
|
# init_cinder_backend_lvm $be_name
|
||||||
|
function init_cinder_backend_lvm {
|
||||||
|
local be_name=$1
|
||||||
|
|
||||||
|
# Start with a clean volume group
|
||||||
|
init_lvm_volume_group $VOLUME_GROUP_NAME-$be_name $VOLUME_BACKING_FILE_SIZE
|
||||||
|
}
|
||||||
|
|
||||||
|
# Restore xtrace
|
||||||
|
$_XTRACE_CINDER_LVM
|
||||||
|
|
||||||
|
# mode: shell-script
|
||||||
|
# End:
|
Loading…
Reference in New Issue
Block a user