From ee45352eee3b68e861c1f4e38cc4d411be1fbf15 Mon Sep 17 00:00:00 2001 From: wuyuting Date: Tue, 24 Nov 2015 17:01:44 +0800 Subject: [PATCH] Declare multiattach is True in RBD driver An RBD volume can be attached to multi instances, however, this feature is not declared in RBD driver. As a result, if a user create a multi-attached volume using RBD as backend, they will be failed. In this commit, we declared multiattach is True in RBD driver. Change-Id: I70c2c0528d9c00629f9cf34d79262a5bf4750e34 Closes-Bug: #1519227 --- cinder/tests/unit/test_rbd.py | 6 ++++-- cinder/volume/drivers/rbd.py | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cinder/tests/unit/test_rbd.py b/cinder/tests/unit/test_rbd.py index f0c5556733d..0cfc129c057 100644 --- a/cinder/tests/unit/test_rbd.py +++ b/cinder/tests/unit/test_rbd.py @@ -721,7 +721,8 @@ class RBDTestCase(test.TestCase): storage_protocol='ceph', total_capacity_gb=27, free_capacity_gb=26, - reserved_percentage=0) + reserved_percentage=0, + multiattach=True) actual = self.driver.get_volume_stats(True) client.cluster.mon_command.assert_called_once_with( @@ -746,7 +747,8 @@ class RBDTestCase(test.TestCase): storage_protocol='ceph', total_capacity_gb='unknown', free_capacity_gb='unknown', - reserved_percentage=0) + reserved_percentage=0, + multiattach=True) actual = self.driver.get_volume_stats(True) client.cluster.mon_command.assert_called_once_with( diff --git a/cinder/volume/drivers/rbd.py b/cinder/volume/drivers/rbd.py index 3711c08d9f8..c54aecbe29f 100644 --- a/cinder/volume/drivers/rbd.py +++ b/cinder/volume/drivers/rbd.py @@ -383,6 +383,7 @@ class RBDDriver(driver.TransferVD, driver.ExtendVD, 'total_capacity_gb': 'unknown', 'free_capacity_gb': 'unknown', 'reserved_percentage': 0, + 'multiattach': True, } backend_name = self.configuration.safe_get('volume_backend_name') stats['volume_backend_name'] = backend_name or 'RBD'