blob: f3fcbeff192640c34daa8ec57aea6b02d8b24dc0 [file] [log] [blame]
#!/bin/bash
#
# lib/cinder_backends/nfs
# Configure the nfs backend
# Enable with:
#
# CINDER_ENABLED_BACKENDS+=,nfs:<volume-type-name>
# Dependencies:
#
# - ``functions`` file
# - ``cinder`` configurations
# CINDER_CONF
# CINDER_CONF_DIR
# CINDER_NFS_SERVERPATH - contents of nfs shares config file
# configure_cinder_backend_nfs - Configure Cinder for NFS backends
# Save trace setting
_XTRACE_CINDER_NFS=$(set +o | grep xtrace)
set +o xtrace
# Entry Points
# ------------
# configure_cinder_backend_nfs - Set config files, create data dirs, etc
function configure_cinder_backend_nfs {
local be_name=$1
iniset $CINDER_CONF $be_name volume_backend_name $be_name
iniset $CINDER_CONF $be_name volume_driver "cinder.volume.drivers.nfs.NfsDriver"
iniset $CINDER_CONF $be_name nfs_shares_config "$CINDER_CONF_DIR/nfs-shares-$be_name.conf"
iniset $CINDER_CONF $be_name nas_host localhost
iniset $CINDER_CONF $be_name nas_share_path ${NFS_EXPORT_DIR}
iniset $CINDER_CONF $be_name nas_secure_file_operations \
${NFS_SECURE_FILE_OPERATIONS}
iniset $CINDER_CONF $be_name nas_secure_file_permissions \
${NFS_SECURE_FILE_PERMISSIONS}
# NFS snapshot support is currently opt-in only.
iniset $CINDER_CONF $be_name nfs_snapshot_support True
echo "$CINDER_NFS_SERVERPATH" | tee "$CINDER_CONF_DIR/nfs-shares-$be_name.conf"
}
# Restore xtrace
$_XTRACE_CINDER_NFS
# Local variables:
# mode: shell-script
# End: