#!/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"

    echo "$CINDER_NFS_SERVERPATH" | tee "$CINDER_CONF_DIR/nfs-shares-$be_name.conf"
}


# Restore xtrace
$_XTRACE_CINDER_NFS

# Local variables:
# mode: shell-script
# End:
