#!/bin/bash
#
# lib/cinder_plugins/sheepdog
# Configure the sheepdog driver

# Enable with:
#
#   CINDER_DRIVER=sheepdog

# Dependencies:
#
# - ``functions`` file
# - ``cinder`` configurations

# configure_cinder_driver - make configuration changes, including those to other services

# Save trace setting
_XTRACE_CINDER_SHEEPDOG=$(set +o | grep xtrace)
set +o xtrace


# Defaults
# --------

# Set up default directories


# Entry Points
# ------------

# configure_cinder_driver - Set config files, create data dirs, etc
function configure_cinder_driver {
    iniset $CINDER_CONF DEFAULT volume_driver "cinder.volume.drivers.sheepdog.SheepdogDriver"
}

# Restore xtrace
$_XTRACE_CINDER_SHEEPDOG

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