Remove oslo uuidutils.generate_uuid() call

uuidutils.generate_uuid() is going to be removed from oslo, so we
need to remove the call from our Ironic code.
http://lists.openstack.org/pipermail/openstack-dev/2013-November/
018980.html
We create new method in our Ironic common utils to wrap the
generate_uuid methods.

Change-Id: I7bc4ca8fcdb29c4ee5b3e7fc7afb0235812a1c0d
Partial-Bug: #1253497
This commit is contained in:
Haomeng, Wang 2013-11-25 10:37:30 +08:00
parent e94e918589
commit 7fc0cee599
11 changed files with 65 additions and 52 deletions

View File

@ -31,6 +31,7 @@ import shutil
import signal
import six
import tempfile
import uuid
from eventlet.green import subprocess
from eventlet import greenthread
@ -572,3 +573,7 @@ def safe_rstrip(value, chars=None):
return value
return value.rstrip(chars) or value
def generate_uuid():
return str(uuid.uuid4())

View File

@ -103,7 +103,7 @@ class Connection(object):
into the Drivers when managing this node. For example:
{
'uuid': uuidutils.generate_uuid(),
'uuid': utils.generate_uuid(),
'instance_uuid': None,
'power_state': states.NOSTATE,
'provision_state': states.NOSTATE,

View File

@ -259,7 +259,7 @@ class Connection(api.Connection):
def create_node(self, values):
# ensure defaults are present for new nodes
if not values.get('uuid'):
values['uuid'] = uuidutils.generate_uuid()
values['uuid'] = utils.generate_uuid()
if not values.get('power_state'):
values['power_state'] = states.NOSTATE
if not values.get('provision_state'):
@ -378,7 +378,7 @@ class Connection(api.Connection):
@objects.objectify(objects.Port)
def create_port(self, values):
if not values.get('uuid'):
values['uuid'] = uuidutils.generate_uuid()
values['uuid'] = utils.generate_uuid()
if not values.get('extra'):
values['extra'] = '{}'
port = models.Port()
@ -435,7 +435,7 @@ class Connection(api.Connection):
@objects.objectify(objects.Chassis)
def create_chassis(self, values):
if not values.get('uuid'):
values['uuid'] = uuidutils.generate_uuid()
values['uuid'] = utils.generate_uuid()
if not values.get('extra'):
values['extra'] = '{}'
chassis = models.Chassis()

View File

@ -18,6 +18,7 @@ Tests for the API /chassis/ methods.
import webtest.app
from ironic.common import utils
from ironic.openstack.common import uuidutils
from ironic.tests.api import base
from ironic.tests.db import utils as dbutils
@ -56,7 +57,7 @@ class TestListChassis(base.FunctionalTest):
ch_list = []
for id in xrange(5):
ndict = dbutils.get_test_chassis(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
chassis = self.dbapi.create_chassis(ndict)
ch_list.append(chassis['uuid'])
data = self.get_json('/chassis')
@ -66,7 +67,7 @@ class TestListChassis(base.FunctionalTest):
self.assertEqual(ch_list.sort(), uuids.sort())
def test_links(self):
uuid = uuidutils.generate_uuid()
uuid = utils.generate_uuid()
ndict = dbutils.get_test_chassis(id=1, uuid=uuid)
self.dbapi.create_chassis(ndict)
data = self.get_json('/chassis/1')
@ -80,7 +81,7 @@ class TestListChassis(base.FunctionalTest):
chassis = []
for id in xrange(5):
ndict = dbutils.get_test_chassis(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
ch = self.dbapi.create_chassis(ndict)
chassis.append(ch['uuid'])
data = self.get_json('/chassis/?limit=3')
@ -102,7 +103,7 @@ class TestListChassis(base.FunctionalTest):
for id in xrange(2):
ndict = dbutils.get_test_node(id=id, chassis_id=cdict['id'],
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.dbapi.create_node(ndict)
data = self.get_json('/chassis/%s/nodes' % cdict['uuid'])
@ -138,7 +139,7 @@ class TestPatch(base.FunctionalTest):
self.post_json('/chassis', cdict)
def test_update_not_found(self):
uuid = uuidutils.generate_uuid()
uuid = utils.generate_uuid()
response = self.patch_json('/chassis/%s' % uuid,
[{'path': '/extra/a', 'value': 'b',
'op': 'add'}],
@ -161,7 +162,7 @@ class TestPatch(base.FunctionalTest):
def test_replace_multi(self):
extra = {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}
cdict = dbutils.get_test_chassis(extra=extra,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/chassis', cdict)
new_value = 'new value'
response = self.patch_json('/chassis/%s' % cdict['uuid'],
@ -176,7 +177,7 @@ class TestPatch(base.FunctionalTest):
def test_remove_singular(self):
cdict = dbutils.get_test_chassis(extra={'a': 'b'},
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/chassis', cdict)
response = self.patch_json('/chassis/%s' % cdict['uuid'],
[{'path': '/description', 'op': 'remove'}])
@ -192,7 +193,7 @@ class TestPatch(base.FunctionalTest):
def test_remove_multi(self):
extra = {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}
cdict = dbutils.get_test_chassis(extra=extra, description="foobar",
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/chassis', cdict)
# Removing one item from the collection
@ -321,7 +322,7 @@ class TestDelete(base.FunctionalTest):
self.assertTrue(response.json['error_message'])
def test_delete_chassis_not_found(self):
uuid = uuidutils.generate_uuid()
uuid = utils.generate_uuid()
response = self.delete('/chassis/%s' % uuid, expect_errors=True)
self.assertEqual(response.status_int, 404)
self.assertEqual(response.content_type, 'application/json')

View File

@ -22,9 +22,10 @@ import webtest.app
from ironic.common import exception
from ironic.common import states
from ironic.common import utils
from ironic.conductor import rpcapi
from ironic import objects
from ironic.openstack.common import uuidutils
from ironic.tests.api import base
from ironic.tests.db import utils as dbutils
@ -41,7 +42,7 @@ class TestListNodes(base.FunctionalTest):
unassociated_nodes = []
for id in xrange(3):
ndict = dbutils.get_test_node(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
node = self.dbapi.create_node(ndict)
unassociated_nodes.append(node['uuid'])
@ -50,8 +51,8 @@ class TestListNodes(base.FunctionalTest):
for id in xrange(3, 7):
ndict = dbutils.get_test_node(
id=id,
uuid=uuidutils.generate_uuid(),
instance_uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid(),
instance_uuid=utils.generate_uuid())
node = self.dbapi.create_node(ndict)
associated_nodes.append(node['uuid'])
return {'associated': associated_nodes,
@ -94,7 +95,7 @@ class TestListNodes(base.FunctionalTest):
nodes = []
for id in xrange(5):
ndict = dbutils.get_test_node(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
node = self.dbapi.create_node(ndict)
nodes.append(node['uuid'])
data = self.get_json('/nodes')
@ -104,7 +105,7 @@ class TestListNodes(base.FunctionalTest):
self.assertEqual(sorted(nodes), sorted(uuids))
def test_links(self):
uuid = uuidutils.generate_uuid()
uuid = utils.generate_uuid()
ndict = dbutils.get_test_node(id=1, uuid=uuid)
self.dbapi.create_node(ndict)
data = self.get_json('/nodes/1')
@ -118,7 +119,7 @@ class TestListNodes(base.FunctionalTest):
nodes = []
for id in xrange(5):
ndict = dbutils.get_test_node(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
node = self.dbapi.create_node(ndict)
nodes.append(node['uuid'])
data = self.get_json('/nodes/?limit=3')
@ -140,7 +141,7 @@ class TestListNodes(base.FunctionalTest):
for id in xrange(2):
pdict = dbutils.get_test_port(id=id, node_id=ndict['id'],
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.dbapi.create_port(pdict)
data = self.get_json('/nodes/%s/ports' % ndict['uuid'])
@ -200,8 +201,8 @@ class TestListNodes(base.FunctionalTest):
# in the available list.
def test_node_by_instance_uuid(self):
ndict = dbutils.get_test_node(uuid=uuidutils.generate_uuid(),
instance_uuid=uuidutils.generate_uuid())
ndict = dbutils.get_test_node(uuid=utils.generate_uuid(),
instance_uuid=utils.generate_uuid())
node = self.dbapi.create_node(ndict)
instance_uuid = node['instance_uuid']
@ -212,10 +213,10 @@ class TestListNodes(base.FunctionalTest):
data['nodes'][0]["instance_uuid"])
def test_node_by_instance_uuid_wrong_uuid(self):
ndict = dbutils.get_test_node(uuid=uuidutils.generate_uuid(),
instance_uuid=uuidutils.generate_uuid())
ndict = dbutils.get_test_node(uuid=utils.generate_uuid(),
instance_uuid=utils.generate_uuid())
self.dbapi.create_node(ndict)
wrong_uuid = uuidutils.generate_uuid()
wrong_uuid = utils.generate_uuid()
data = self.get_json('/nodes?instance_uuid=%s' % wrong_uuid)
@ -288,8 +289,8 @@ class TestListNodes(base.FunctionalTest):
self.assertIn('associated=true', data['next'])
def test_detail_with_instance_uuid(self):
ndict = dbutils.get_test_node(uuid=uuidutils.generate_uuid(),
instance_uuid=uuidutils.generate_uuid())
ndict = dbutils.get_test_node(uuid=utils.generate_uuid(),
instance_uuid=utils.generate_uuid())
node = self.dbapi.create_node(ndict)
instance_uuid = node['instance_uuid']
@ -403,7 +404,7 @@ class TestPatch(base.FunctionalTest):
[{'path': '/extra/non-existent', 'op': 'remove'}])
def test_update_state_in_progress(self):
ndict = dbutils.get_test_node(id=99, uuid=uuidutils.generate_uuid(),
ndict = dbutils.get_test_node(id=99, uuid=utils.generate_uuid(),
target_power_state=states.POWER_OFF)
node = self.dbapi.create_node(ndict)
self.assertRaises(webtest.app.AppError, self.patch_json,

View File

@ -18,6 +18,7 @@ Tests for the API /ports/ methods.
import webtest.app
from ironic.common import utils
from ironic.openstack.common import uuidutils
from ironic.tests.api import base
from ironic.tests.db import utils as dbutils
@ -59,7 +60,7 @@ class TestListPorts(base.FunctionalTest):
ports = []
for id in xrange(5):
ndict = dbutils.get_test_port(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
port = self.dbapi.create_port(ndict)
ports.append(port['uuid'])
data = self.get_json('/ports')
@ -69,7 +70,7 @@ class TestListPorts(base.FunctionalTest):
self.assertEqual(ports.sort(), uuids.sort())
def test_links(self):
uuid = uuidutils.generate_uuid()
uuid = utils.generate_uuid()
ndict = dbutils.get_test_port(id=1, uuid=uuid)
self.dbapi.create_port(ndict)
data = self.get_json('/ports/1')
@ -83,7 +84,7 @@ class TestListPorts(base.FunctionalTest):
ports = []
for id in xrange(5):
ndict = dbutils.get_test_port(id=id,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
port = self.dbapi.create_port(ndict)
ports.append(port['uuid'])
data = self.get_json('/ports/?limit=3')
@ -127,7 +128,7 @@ class TestPatch(base.FunctionalTest):
self.assertEqual(result['extra'], extra)
def test_update_not_found(self):
uuid = uuidutils.generate_uuid()
uuid = utils.generate_uuid()
response = self.patch_json('/ports/%s' % uuid,
[{'path': '/extra/a',
'value': 'b',
@ -151,7 +152,7 @@ class TestPatch(base.FunctionalTest):
def test_replace_address_already_exist(self):
address = '11:22:33:AA:BB:CC'
pdict = dbutils.get_test_port(address=address,
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/ports', pdict)
pdict = dbutils.get_test_port()
@ -178,7 +179,7 @@ class TestPatch(base.FunctionalTest):
extra = {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}
pdict = dbutils.get_test_port(extra=extra,
address="AA:BB:CC:DD:EE:FF",
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/ports', pdict)
new_value = 'new value'
response = self.patch_json('/ports/%s' % pdict['uuid'],
@ -195,7 +196,7 @@ class TestPatch(base.FunctionalTest):
extra = {"foo1": "bar1", "foo2": "bar2", "foo3": "bar3"}
pdict = dbutils.get_test_port(extra=extra,
address="AA:BB:CC:DD:EE:FF",
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/ports', pdict)
# Removing one item from the collection
@ -221,7 +222,7 @@ class TestPatch(base.FunctionalTest):
def test_remove_mandatory_field(self):
pdict = dbutils.get_test_port(address="AA:BB:CC:DD:EE:FF",
uuid=uuidutils.generate_uuid())
uuid=utils.generate_uuid())
self.post_json('/ports', pdict)
response = self.patch_json('/ports/%s' % pdict['uuid'],
[{'path': '/address', 'op': 'remove'}],

View File

@ -21,10 +21,11 @@
from testtools import matchers
from ironic.common import exception
from ironic.common import utils as ironic_utils
from ironic.conductor import task_manager
from ironic.db import api as dbapi
from ironic.openstack.common import context
from ironic.openstack.common import uuidutils
from ironic.tests.conductor import utils as mgr_utils
from ironic.tests.db import base
from ironic.tests.db import utils
@ -33,7 +34,7 @@ from ironic.tests.db import utils
def create_fake_node(i):
dbh = dbapi.get_instance()
node = utils.get_test_node(id=i,
uuid=uuidutils.generate_uuid())
uuid=ironic_utils.generate_uuid())
dbh.create_node(node)
return node['uuid']

View File

@ -20,8 +20,9 @@
import six
from ironic.common import exception
from ironic.common import utils as ironic_utils
from ironic.db import api as dbapi
from ironic.openstack.common import uuidutils
from ironic.tests.db import base
from ironic.tests.db import utils
@ -44,7 +45,7 @@ class DbChassisTestCase(base.DbTestCase):
def test_get_chassis_list(self):
uuids = []
for i in xrange(1, 6):
n = utils.get_test_chassis(id=i, uuid=uuidutils.generate_uuid())
n = utils.get_test_chassis(id=i, uuid=ironic_utils.generate_uuid())
self.dbapi.create_chassis(n)
uuids.append(six.text_type(n['uuid']))
res = self.dbapi.get_chassis_list()
@ -69,7 +70,7 @@ class DbChassisTestCase(base.DbTestCase):
def test_update_chassis(self):
ch = self._create_test_chassis()
new_uuid = uuidutils.generate_uuid()
new_uuid = ironic_utils.generate_uuid()
ch['uuid'] = new_uuid
res = self.dbapi.update_chassis(ch['id'], {'uuid': new_uuid})
@ -77,7 +78,7 @@ class DbChassisTestCase(base.DbTestCase):
self.assertEqual(res['uuid'], new_uuid)
def test_update_chassis_that_does_not_exist(self):
new_uuid = uuidutils.generate_uuid()
new_uuid = ironic_utils.generate_uuid()
self.assertRaises(exception.ChassisNotFound,
self.dbapi.update_chassis, 666, {'uuid': new_uuid})

View File

@ -20,8 +20,9 @@
import six
from ironic.common import exception
from ironic.common import utils as ironic_utils
from ironic.db import api as dbapi
from ironic.openstack.common import uuidutils
from ironic.tests.db import base
from ironic.tests.db import utils
@ -40,7 +41,7 @@ class DbNodeTestCase(base.DbTestCase):
def _create_many_test_nodes(self):
uuids = []
for i in xrange(1, 6):
n = self._create_test_node(id=i, uuid=uuidutils.generate_uuid())
n = self._create_test_node(id=i, uuid=ironic_utils.generate_uuid())
uuids.append(n['uuid'])
uuids.sort()
return uuids
@ -50,10 +51,10 @@ class DbNodeTestCase(base.DbTestCase):
uuids_with_instance = []
for i in xrange(1, 5):
uuid = uuidutils.generate_uuid()
uuid = ironic_utils.generate_uuid()
uuids.append(six.text_type(uuid))
if i < 3:
instance_uuid = uuidutils.generate_uuid()
instance_uuid = ironic_utils.generate_uuid()
uuids_with_instance.append(six.text_type(uuid))
else:
instance_uuid = None
@ -114,7 +115,7 @@ class DbNodeTestCase(base.DbTestCase):
def test_get_node_list(self):
uuids = []
for i in xrange(1, 6):
n = utils.get_test_node(id=i, uuid=uuidutils.generate_uuid())
n = utils.get_test_node(id=i, uuid=ironic_utils.generate_uuid())
self.dbapi.create_node(n)
uuids.append(six.text_type(n['uuid']))
res = self.dbapi.get_node_list()

View File

@ -20,8 +20,9 @@
import six
from ironic.common import exception
from ironic.common import utils as ironic_utils
from ironic.db import api as dbapi
from ironic.openstack.common import uuidutils
from ironic.tests.db import base
from ironic.tests.db import utils
@ -50,7 +51,7 @@ class DbPortTestCase(base.DbTestCase):
def test_get_port_list(self):
uuids = []
for i in xrange(1, 6):
n = utils.get_test_port(id=i, uuid=uuidutils.generate_uuid())
n = utils.get_test_port(id=i, uuid=ironic_utils.generate_uuid())
self.dbapi.create_port(n)
uuids.append(six.text_type(n['uuid']))
res = self.dbapi.get_port_list()

View File

@ -16,10 +16,11 @@
import mock
from ironic.common import utils as ironic_utils
from ironic.db import api as db_api
from ironic.db.sqlalchemy import models
from ironic import objects
from ironic.openstack.common import uuidutils
from ironic.tests.db import base
from ironic.tests.db import utils
@ -59,7 +60,7 @@ class TestChassisObject(base.DbTestCase):
def test_refresh(self):
uuid = self.fake_chassis['uuid']
new_uuid = uuidutils.generate_uuid()
new_uuid = ironic_utils.generate_uuid()
returns = [dict(self.fake_chassis, uuid=uuid),
dict(self.fake_chassis, uuid=new_uuid)]
expected = [mock.call(uuid), mock.call(uuid)]