Discussion:
[Libstoragemgmt-devel] [PATCH] add POOLS as support capability
Ma Shimiao
2014-04-01 02:54:58 UTC
Permalink
Signed-off-by: Ma Shimiao <***@cn.fujitsu.com>
---
lsm/lsm/_data.py | 9 +++++----
lsm/lsm/ibmv7k.py | 1 +
lsm/lsm/nstor.py | 1 +
lsm/lsm/ontap.py | 1 +
lsm/lsm/targetd.py | 1 +
5 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/lsm/lsm/_data.py b/lsm/lsm/_data.py
index f3523f8..05f50bd 100644
--- a/lsm/lsm/_data.py
+++ b/lsm/lsm/_data.py
@@ -1483,10 +1483,11 @@ class Capabilities(IData):
EXPORT_CUSTOM_PATH = 124

#Pool
- POOL_CREATE = 130
- POOL_CREATE_FROM_DISKS = 131
- POOL_CREATE_FROM_VOLUMES = 132
- POOL_CREATE_FROM_POOL = 133
+ POOLS = 130
+ POOL_CREATE = 131
+ POOL_CREATE_FROM_DISKS = 132
+ POOL_CREATE_FROM_VOLUMES = 133
+ POOL_CREATE_FROM_POOL = 134

POOL_CREATE_DISK_RAID_0 = 140
POOL_CREATE_DISK_RAID_1 = 141
diff --git a/lsm/lsm/ibmv7k.py b/lsm/lsm/ibmv7k.py
index 37c3243..99c0940 100644
--- a/lsm/lsm/ibmv7k.py
+++ b/lsm/lsm/ibmv7k.py
@@ -418,6 +418,7 @@ class IbmV7k(IStorageAreaNetwork):
cap.set(Capabilities.INITIATORS_GRANTED_TO_VOLUME)
cap.set(Capabilities.VOLUME_INITIATOR_GRANT)
cap.set(Capabilities.VOLUME_INITIATOR_REVOKE)
+ cap.set(Capabilities.POOLS)
return cap

def plugin_info(self, flags=0):
diff --git a/lsm/lsm/nstor.py b/lsm/lsm/nstor.py
index 172fe43..616046d 100644
--- a/lsm/lsm/nstor.py
+++ b/lsm/lsm/nstor.py
@@ -205,6 +205,7 @@ class NexentaStor(INfs, IStorageAreaNetwork):
def capabilities(self, system, flags=0):
c = Capabilities()

+ c.set(Capabilities.POOLS)
#Array wide
# c.set(Capabilities.BLOCK_SUPPORT)
c.set(Capabilities.FS_SUPPORT)
diff --git a/lsm/lsm/ontap.py b/lsm/lsm/ontap.py
index d52b3e4..40424bb 100644
--- a/lsm/lsm/ontap.py
+++ b/lsm/lsm/ontap.py
@@ -471,6 +471,7 @@ class Ontap(IStorageAreaNetwork, INfs):
cap.set(Capabilities.EXPORT_FS)
cap.set(Capabilities.EXPORT_REMOVE)
cap.set(Capabilities.EXPORT_CUSTOM_PATH)
+ cap.set(Capabilities.POOLS)
return cap

@handle_ontap_errors
diff --git a/lsm/lsm/targetd.py b/lsm/lsm/targetd.py
index 3f0a5cf..7c51980 100644
--- a/lsm/lsm/targetd.py
+++ b/lsm/lsm/targetd.py
@@ -126,6 +126,7 @@ class TargetdStorage(IStorageAreaNetwork, INfs):
cap.set(Capabilities.EXPORTS)
cap.set(Capabilities.EXPORT_FS)
cap.set(Capabilities.EXPORT_REMOVE)
+ cap.set(Capabilities.POOLS)
return cap

@handle_errors
--
1.8.3.1
Tony Asleson
2014-04-02 19:40:50 UTC
Permalink
Pool listing was always considered a mandatory operation, thus the
reason it didn't have a capability flag. Actually all the methods in
the IPlugin class fall into this category.

If we would like to change this to everything is a capability then
please submit patch that has both C & python updates.

Thanks,
Tony
Post by Ma Shimiao
---
lsm/lsm/_data.py | 9 +++++----
lsm/lsm/ibmv7k.py | 1 +
lsm/lsm/nstor.py | 1 +
lsm/lsm/ontap.py | 1 +
lsm/lsm/targetd.py | 1 +
5 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/lsm/lsm/_data.py b/lsm/lsm/_data.py
index f3523f8..05f50bd 100644
--- a/lsm/lsm/_data.py
+++ b/lsm/lsm/_data.py
EXPORT_CUSTOM_PATH = 124
#Pool
- POOL_CREATE = 130
- POOL_CREATE_FROM_DISKS = 131
- POOL_CREATE_FROM_VOLUMES = 132
- POOL_CREATE_FROM_POOL = 133
+ POOLS = 130
+ POOL_CREATE = 131
+ POOL_CREATE_FROM_DISKS = 132
+ POOL_CREATE_FROM_VOLUMES = 133
+ POOL_CREATE_FROM_POOL = 134
POOL_CREATE_DISK_RAID_0 = 140
POOL_CREATE_DISK_RAID_1 = 141
diff --git a/lsm/lsm/ibmv7k.py b/lsm/lsm/ibmv7k.py
index 37c3243..99c0940 100644
--- a/lsm/lsm/ibmv7k.py
+++ b/lsm/lsm/ibmv7k.py
cap.set(Capabilities.INITIATORS_GRANTED_TO_VOLUME)
cap.set(Capabilities.VOLUME_INITIATOR_GRANT)
cap.set(Capabilities.VOLUME_INITIATOR_REVOKE)
+ cap.set(Capabilities.POOLS)
return cap
diff --git a/lsm/lsm/nstor.py b/lsm/lsm/nstor.py
index 172fe43..616046d 100644
--- a/lsm/lsm/nstor.py
+++ b/lsm/lsm/nstor.py
c = Capabilities()
+ c.set(Capabilities.POOLS)
#Array wide
# c.set(Capabilities.BLOCK_SUPPORT)
c.set(Capabilities.FS_SUPPORT)
diff --git a/lsm/lsm/ontap.py b/lsm/lsm/ontap.py
index d52b3e4..40424bb 100644
--- a/lsm/lsm/ontap.py
+++ b/lsm/lsm/ontap.py
cap.set(Capabilities.EXPORT_FS)
cap.set(Capabilities.EXPORT_REMOVE)
cap.set(Capabilities.EXPORT_CUSTOM_PATH)
+ cap.set(Capabilities.POOLS)
return cap
@handle_ontap_errors
diff --git a/lsm/lsm/targetd.py b/lsm/lsm/targetd.py
index 3f0a5cf..7c51980 100644
--- a/lsm/lsm/targetd.py
+++ b/lsm/lsm/targetd.py
cap.set(Capabilities.EXPORTS)
cap.set(Capabilities.EXPORT_FS)
cap.set(Capabilities.EXPORT_REMOVE)
+ cap.set(Capabilities.POOLS)
return cap
@handle_errors
MaShimiao
2014-04-03 01:43:40 UTC
Permalink
Post by Tony Asleson
Pool listing was always considered a mandatory operation, thus the
reason it didn't have a capability flag. Actually all the methods in
the IPlugin class fall into this category.
If we would like to change this to everything is a capability then
please submit patch that has both C & python updates.
OK, I will resubmit V2 patch.
Post by Tony Asleson
Thanks,
Tony
Post by Ma Shimiao
---
lsm/lsm/_data.py | 9 +++++----
lsm/lsm/ibmv7k.py | 1 +
lsm/lsm/nstor.py | 1 +
lsm/lsm/ontap.py | 1 +
lsm/lsm/targetd.py | 1 +
5 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/lsm/lsm/_data.py b/lsm/lsm/_data.py
index f3523f8..05f50bd 100644
--- a/lsm/lsm/_data.py
+++ b/lsm/lsm/_data.py
EXPORT_CUSTOM_PATH = 124
#Pool
- POOL_CREATE = 130
- POOL_CREATE_FROM_DISKS = 131
- POOL_CREATE_FROM_VOLUMES = 132
- POOL_CREATE_FROM_POOL = 133
+ POOLS = 130
+ POOL_CREATE = 131
+ POOL_CREATE_FROM_DISKS = 132
+ POOL_CREATE_FROM_VOLUMES = 133
+ POOL_CREATE_FROM_POOL = 134
POOL_CREATE_DISK_RAID_0 = 140
POOL_CREATE_DISK_RAID_1 = 141
diff --git a/lsm/lsm/ibmv7k.py b/lsm/lsm/ibmv7k.py
index 37c3243..99c0940 100644
--- a/lsm/lsm/ibmv7k.py
+++ b/lsm/lsm/ibmv7k.py
cap.set(Capabilities.INITIATORS_GRANTED_TO_VOLUME)
cap.set(Capabilities.VOLUME_INITIATOR_GRANT)
cap.set(Capabilities.VOLUME_INITIATOR_REVOKE)
+ cap.set(Capabilities.POOLS)
return cap
diff --git a/lsm/lsm/nstor.py b/lsm/lsm/nstor.py
index 172fe43..616046d 100644
--- a/lsm/lsm/nstor.py
+++ b/lsm/lsm/nstor.py
c = Capabilities()
+ c.set(Capabilities.POOLS)
#Array wide
# c.set(Capabilities.BLOCK_SUPPORT)
c.set(Capabilities.FS_SUPPORT)
diff --git a/lsm/lsm/ontap.py b/lsm/lsm/ontap.py
index d52b3e4..40424bb 100644
--- a/lsm/lsm/ontap.py
+++ b/lsm/lsm/ontap.py
cap.set(Capabilities.EXPORT_FS)
cap.set(Capabilities.EXPORT_REMOVE)
cap.set(Capabilities.EXPORT_CUSTOM_PATH)
+ cap.set(Capabilities.POOLS)
return cap
@handle_ontap_errors
diff --git a/lsm/lsm/targetd.py b/lsm/lsm/targetd.py
index 3f0a5cf..7c51980 100644
--- a/lsm/lsm/targetd.py
+++ b/lsm/lsm/targetd.py
cap.set(Capabilities.EXPORTS)
cap.set(Capabilities.EXPORT_FS)
cap.set(Capabilities.EXPORT_REMOVE)
+ cap.set(Capabilities.POOLS)
return cap
@handle_errors
------------------------------------------------------------------------------
_______________________________________________
Libstoragemgmt-devel mailing list
https://lists.sourceforge.net/lists/listinfo/libstoragemgmt-devel
.
--
Ma Shimiao
Nanjing Fujitsu Nanda Software Tech. Co., Ltd.(FNST)
No. 6 Wenzhu Road, Nanjing, 210012, China
TEL:+86+25-86630566-8529
FUJITSU INTERNAL:79955-8529
EMail:***@cn.fujitsu.com
Loading...