summaryrefslogtreecommitdiffstats
path: root/nova/virt
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-10-22 01:24:32 +0000
committerGerrit Code Review <review@openstack.org>2012-10-22 01:24:32 +0000
commit8cb329b2a03f1d04f13c38244477e53ca4a321f0 (patch)
treebed6dbeb3d7a36f4b5562fe1442789174be21712 /nova/virt
parentf1155fc9491070b58ac2908f82a324388ed3c27e (diff)
parentaf51b46b1e08b26c07bd32019e54b9c521cb7813 (diff)
Merge "Allow local rbd user and secret_uuid configuration"
Diffstat (limited to 'nova/virt')
-rw-r--r--nova/virt/libvirt/volume.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/nova/virt/libvirt/volume.py b/nova/virt/libvirt/volume.py
index cf08ea85e..2a018c724 100644
--- a/nova/virt/libvirt/volume.py
+++ b/nova/virt/libvirt/volume.py
@@ -87,10 +87,19 @@ class LibvirtNetVolumeDriver(LibvirtVolumeDriver):
conf.target_bus = "virtio"
conf.serial = connection_info.get('serial')
netdisk_properties = connection_info['data']
- if netdisk_properties.get('auth_enabled'):
- conf.auth_username = netdisk_properties['auth_username']
+ auth_enabled = netdisk_properties.get('auth_enabled')
+ if (conf.source_protocol == 'rbd' and
+ FLAGS.rbd_secret_uuid):
+ conf.auth_secret_uuid = FLAGS.rbd_secret_uuid
+ auth_enabled = True # Force authentication locally
+ if FLAGS.rbd_user:
+ conf.auth_username = FLAGS.rbd_user
+ if auth_enabled:
+ conf.auth_username = (conf.auth_username or
+ netdisk_properties['auth_username'])
conf.auth_secret_type = netdisk_properties['secret_type']
- conf.auth_secret_uuid = netdisk_properties['secret_uuid']
+ conf.auth_secret_uuid = (conf.auth_secret_uuid or
+ netdisk_properties['secret_uuid'])
return conf