Port key manager to Python 3
* Replace text.decode('hex') with binascii.unhexlify(text) * test_barbican: base64 string is a bytes string * tests-py3.txt: add keymgr tests Partial-Implements: blueprint cinder-python3 Change-Id: Icc19fa354603857b259458b858e27c5bdd600360
This commit is contained in:
parent
6b6863703a
commit
52f62c31f7
|
@ -32,6 +32,7 @@ encryption key so *any* volume can be decrypted once the fixed key is known.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import array
|
import array
|
||||||
|
import binascii
|
||||||
|
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_log import log as logging
|
from oslo_log import log as logging
|
||||||
|
@ -70,8 +71,8 @@ class ConfKeyManager(key_mgr.KeyManager):
|
||||||
|
|
||||||
def _generate_key(self, **kwargs):
|
def _generate_key(self, **kwargs):
|
||||||
_hex = self._generate_hex_key(**kwargs)
|
_hex = self._generate_hex_key(**kwargs)
|
||||||
return key.SymmetricKey('AES',
|
key_list = array.array('B', binascii.unhexlify(_hex)).tolist()
|
||||||
array.array('B', _hex.decode('hex')).tolist())
|
return key.SymmetricKey('AES', key_list)
|
||||||
|
|
||||||
def _generate_hex_key(self, **kwargs):
|
def _generate_hex_key(self, **kwargs):
|
||||||
if CONF.keymgr.fixed_key is None:
|
if CONF.keymgr.fixed_key is None:
|
||||||
|
|
|
@ -205,7 +205,7 @@ class BarbicanKeyManagerTestCase(test_key_mgr.KeyManagerTestCase):
|
||||||
returned_uuid = self.key_mgr.store_key(self.ctxt, _key, bit_length=32)
|
returned_uuid = self.key_mgr.store_key(self.ctxt, _key, bit_length=32)
|
||||||
|
|
||||||
self.create.assert_called_once_with('Cinder Volume Key',
|
self.create.assert_called_once_with('Cinder Volume Key',
|
||||||
'AQKgsw==',
|
b'AQKgsw==',
|
||||||
'application/octet-stream',
|
'application/octet-stream',
|
||||||
'base64',
|
'base64',
|
||||||
'AES', 32, 'CBC',
|
'AES', 32, 'CBC',
|
||||||
|
|
|
@ -18,6 +18,7 @@ Test cases for the conf key manager.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import array
|
import array
|
||||||
|
import binascii
|
||||||
|
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
|
|
||||||
|
@ -48,7 +49,7 @@ class ConfKeyManagerTestCase(test_key_mgr.KeyManagerTestCase):
|
||||||
self.ctxt = context.RequestContext('fake', 'fake')
|
self.ctxt = context.RequestContext('fake', 'fake')
|
||||||
|
|
||||||
self.key_id = '00000000-0000-0000-0000-000000000000'
|
self.key_id = '00000000-0000-0000-0000-000000000000'
|
||||||
encoded = array.array('B', self._hex_key.decode('hex')).tolist()
|
encoded = array.array('B', binascii.unhexlify(self._hex_key)).tolist()
|
||||||
self.key = key.SymmetricKey('AES', encoded)
|
self.key = key.SymmetricKey('AES', encoded)
|
||||||
|
|
||||||
def test___init__(self):
|
def test___init__(self):
|
||||||
|
|
|
@ -17,8 +17,6 @@
|
||||||
Test cases for the key classes.
|
Test cases for the key classes.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import array
|
|
||||||
|
|
||||||
from cinder.keymgr import key
|
from cinder.keymgr import key
|
||||||
from cinder import test
|
from cinder import test
|
||||||
|
|
||||||
|
@ -41,7 +39,7 @@ class SymmetricKeyTestCase(KeyTestCase):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.algorithm = 'AES'
|
self.algorithm = 'AES'
|
||||||
self.encoded = array.array('B', ('0' * 64).decode('hex')).tolist()
|
self.encoded = [0] * 32
|
||||||
|
|
||||||
super(SymmetricKeyTestCase, self).setUp()
|
super(SymmetricKeyTestCase, self).setUp()
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,12 @@ cinder.tests.unit.api.test_versions
|
||||||
cinder.tests.unit.api.test_xmlutil
|
cinder.tests.unit.api.test_xmlutil
|
||||||
cinder.tests.unit.image.test_cache
|
cinder.tests.unit.image.test_cache
|
||||||
cinder.tests.unit.image.test_glance
|
cinder.tests.unit.image.test_glance
|
||||||
|
cinder.tests.unit.keymgr.test_barbican
|
||||||
|
cinder.tests.unit.keymgr.test_conf_key_mgr
|
||||||
|
cinder.tests.unit.keymgr.test_key
|
||||||
|
cinder.tests.unit.keymgr.test_key_mgr
|
||||||
cinder.tests.unit.keymgr.test_mock_key_mgr
|
cinder.tests.unit.keymgr.test_mock_key_mgr
|
||||||
|
cinder.tests.unit.keymgr.test_not_implemented_key_mgr
|
||||||
cinder.tests.unit.scheduler.test_allocated_capacity_weigher
|
cinder.tests.unit.scheduler.test_allocated_capacity_weigher
|
||||||
cinder.tests.unit.scheduler.test_capacity_weigher
|
cinder.tests.unit.scheduler.test_capacity_weigher
|
||||||
cinder.tests.unit.scheduler.test_chance_weigher
|
cinder.tests.unit.scheduler.test_chance_weigher
|
||||||
|
|
Loading…
Reference in New Issue