Update the StorPool Cinder patches
Catch up with the upstream removal of the use of the Python
"six" library from the StorPool driver.
Change-Id: If8a5d3dcac2a27473f87f57b6802b44dc651ea29
diff --git a/patches/openstack/cinder/sep-sp-clone-volume.patch b/patches/openstack/cinder/sep-sp-clone-volume.patch
index 6e7f90f..8dbbe2e 100644
--- a/patches/openstack/cinder/sep-sp-clone-volume.patch
+++ b/patches/openstack/cinder/sep-sp-clone-volume.patch
@@ -1,7 +1,7 @@
-From 842b39e2e8e73ea2dda84955d3ab99d9efbfa527 Mon Sep 17 00:00:00 2001
+From 609436981cbd13488eb1345d41ebffcd2347d2de Mon Sep 17 00:00:00 2001
From: Peter Penchev <openstack-dev@storpool.com>
Date: Wed, 20 Apr 2022 15:47:39 +0300
-Subject: [PATCH 07/10] StorPool: create_cloned_volume() improvements
+Subject: [PATCH 6/9] StorPool: create_cloned_volume() improvements
If the source and destination volumes are in the same StorPool template
(as defined by either the volume type or the global config setting),
@@ -30,7 +30,7 @@
create mode 100644 releasenotes/notes/storpool-clone-better-dca90f40c9273de9.yaml
diff --git a/cinder/tests/unit/volume/drivers/test_storpool.py b/cinder/tests/unit/volume/drivers/test_storpool.py
-index 24715fa29..95a1ffffd 100644
+index 8792678ed..94074d218 100644
--- a/cinder/tests/unit/volume/drivers/test_storpool.py
+++ b/cinder/tests/unit/volume/drivers/test_storpool.py
@@ -14,6 +14,7 @@
@@ -41,7 +41,7 @@
import re
import sys
from unittest import mock
-@@ -110,13 +111,33 @@ class MockAPI(object):
+@@ -109,13 +110,33 @@ class MockAPI(object):
def snapshotCreate(self, vname, snap):
snapshots[snap['name']] = dict(volumes[vname])
@@ -77,7 +77,7 @@
def volumeDelete(self, name):
del volumes[name]
-@@ -174,6 +195,23 @@ fakeStorPool.spopenstack.AttachDB = MockAttachDB
+@@ -173,6 +194,23 @@ fakeStorPool.spopenstack.AttachDB = MockAttachDB
fakeStorPool.sptypes.VolumeUpdateDesc = MockVolumeUpdateDesc
@@ -101,7 +101,7 @@
@ddt.ddt
class StorPoolTestCase(test.TestCase):
-@@ -265,6 +303,11 @@ class StorPoolTestCase(test.TestCase):
+@@ -264,6 +302,11 @@ class StorPoolTestCase(test.TestCase):
self.assertListEqual(sorted([volumeName(n) for n in names]),
sorted(data['name'] for data in volumes.values()))
@@ -113,7 +113,7 @@
@mock_volume_types
def test_create_delete_volume(self):
self.assertVolumeNames([])
-@@ -277,7 +320,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -276,7 +319,7 @@ class StorPoolTestCase(test.TestCase):
self.assertVolumeNames(('1',))
v = volumes[volumeName('1')]
self.assertEqual(1 * units.Gi, v['size'])
@@ -122,7 +122,7 @@
self.assertEqual(3, v['replication'])
caught = False
-@@ -297,7 +340,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -296,7 +339,7 @@ class StorPoolTestCase(test.TestCase):
self.assertVolumeNames(('1',))
v = volumes[volumeName('1')]
self.assertEqual(2 * units.Gi, v['size'])
@@ -131,7 +131,7 @@
self.assertEqual(3, v['replication'])
self.driver.create_volume({'id': '2', 'name': 'v2', 'size': 3,
-@@ -305,7 +348,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -304,7 +347,7 @@ class StorPoolTestCase(test.TestCase):
self.assertVolumeNames(('1', '2'))
v = volumes[volumeName('2')]
self.assertEqual(3 * units.Gi, v['size'])
@@ -140,7 +140,7 @@
self.assertEqual(3, v['replication'])
self.driver.create_volume({'id': '3', 'name': 'v2', 'size': 4,
-@@ -327,7 +370,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -326,7 +369,7 @@ class StorPoolTestCase(test.TestCase):
# Make sure the dictionary is not corrupted somehow...
v = volumes[volumeName('1')]
self.assertEqual(2 * units.Gi, v['size'])
@@ -149,7 +149,7 @@
self.assertEqual(3, v['replication'])
for vid in ('1', '2', '3', '4'):
-@@ -395,16 +438,17 @@ class StorPoolTestCase(test.TestCase):
+@@ -392,16 +435,17 @@ class StorPoolTestCase(test.TestCase):
self.driver.extend_volume({'id': '1'}, 2)
self.assertEqual(2 * units.Gi, volumes[volumeName('1')]['size'])
@@ -175,7 +175,7 @@
self.driver.delete_volume({'id': 1})
self.driver.delete_volume({'id': 2})
-@@ -412,6 +456,78 @@ class StorPoolTestCase(test.TestCase):
+@@ -409,6 +453,78 @@ class StorPoolTestCase(test.TestCase):
self.assertDictEqual({}, volumes)
self.assertDictEqual({}, snapshots)
@@ -254,7 +254,7 @@
@mock_volume_types
def test_config_replication(self):
self.assertVolumeNames([])
-@@ -431,7 +547,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -428,7 +544,7 @@ class StorPoolTestCase(test.TestCase):
self.assertVolumeNames(('cfgrepl1',))
v = volumes[volumeName('cfgrepl1')]
self.assertEqual(3, v['replication'])
@@ -263,7 +263,7 @@
self.driver.delete_volume({'id': 'cfgrepl1'})
self.driver.configuration.storpool_replication = 2
-@@ -445,7 +561,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -442,7 +558,7 @@ class StorPoolTestCase(test.TestCase):
self.assertVolumeNames(('cfgrepl2',))
v = volumes[volumeName('cfgrepl2')]
self.assertEqual(2, v['replication'])
@@ -272,7 +272,7 @@
self.driver.delete_volume({'id': 'cfgrepl2'})
self.driver.create_volume({'id': 'cfgrepl3', 'name': 'v1', 'size': 1,
-@@ -477,7 +593,7 @@ class StorPoolTestCase(test.TestCase):
+@@ -474,7 +590,7 @@ class StorPoolTestCase(test.TestCase):
self.assertVolumeNames(('cfgtempl1',))
v = volumes[volumeName('cfgtempl1')]
self.assertEqual(3, v['replication'])
@@ -282,24 +282,23 @@
self.driver.create_volume({'id': 'cfgtempl2', 'name': 'v1', 'size': 1,
diff --git a/cinder/volume/drivers/storpool.py b/cinder/volume/drivers/storpool.py
-index 97d188fd4..5b4ea0d31 100644
+index c2b566f4a..131ba68fb 100644
--- a/cinder/volume/drivers/storpool.py
+++ b/cinder/volume/drivers/storpool.py
-@@ -19,11 +19,13 @@ import platform
+@@ -19,10 +19,12 @@ import platform
from oslo_config import cfg
from oslo_log import log as logging
+from oslo_utils import excutils
from oslo_utils import importutils
from oslo_utils import units
- import six
from cinder.common import constants
+from cinder import context
from cinder import exception
from cinder.i18n import _
from cinder import interface
-@@ -197,30 +199,80 @@ class StorPoolDriver(driver.VolumeDriver):
+@@ -196,30 +198,80 @@ class StorPoolDriver(driver.VolumeDriver):
def create_cloned_volume(self, volume, src_vref):
refname = self._attach.volumeName(src_vref['id'])
@@ -397,10 +396,10 @@
def create_export(self, context, volume, connector):
pass
diff --git a/driver-requirements.txt b/driver-requirements.txt
-index 2f05bc94e..2b28d37fd 100644
+index 8cff370ed..aa1211c19 100644
--- a/driver-requirements.txt
+++ b/driver-requirements.txt
-@@ -41,7 +41,7 @@ infi.dtypes.wwn # PSF
+@@ -42,7 +42,7 @@ infi.dtypes.wwn # PSF
infi.dtypes.iqn # PSF
# Storpool
@@ -422,5 +421,5 @@
+ StorPool templates (exposed as Cinder storage pools) if requested,
+ eliminating some data duplication in the underlying StorPool cluster.
--
-2.42.0
+2.43.0