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