Merge "Check external resources after creation" into stable/train
This commit is contained in:
commit
48b730a31c
|
@ -1208,7 +1208,7 @@ class Resource(status.ResourceStatus):
|
||||||
yield self._do_action(self.ADOPT,
|
yield self._do_action(self.ADOPT,
|
||||||
resource_data={
|
resource_data={
|
||||||
'resource_id': self.external_id})
|
'resource_id': self.external_id})
|
||||||
self.check()
|
yield self.check()
|
||||||
return
|
return
|
||||||
|
|
||||||
# This method can be called when we replace a resource, too. In that
|
# This method can be called when we replace a resource, too. In that
|
||||||
|
|
|
@ -60,6 +60,12 @@ class GenericResource(resource.Resource):
|
||||||
self.type())
|
self.type())
|
||||||
|
|
||||||
|
|
||||||
|
class CheckableResource(GenericResource):
|
||||||
|
def handle_check(self):
|
||||||
|
LOG.warning(('Checking generic resource (Type "%s")'),
|
||||||
|
self.type())
|
||||||
|
|
||||||
|
|
||||||
class CancellableResource(GenericResource):
|
class CancellableResource(GenericResource):
|
||||||
def check_create_complete(self, cookie):
|
def check_create_complete(self, cookie):
|
||||||
return True
|
return True
|
||||||
|
|
|
@ -366,6 +366,15 @@ class ResourceTest(common.HeatTestCase):
|
||||||
self.assertEqual((res.CHECK, res.COMPLETE), res.state)
|
self.assertEqual((res.CHECK, res.COMPLETE), res.state)
|
||||||
self.assertEqual('f00d', res.resource_id)
|
self.assertEqual('f00d', res.resource_id)
|
||||||
|
|
||||||
|
def test_create_from_external_with_check(self):
|
||||||
|
tmpl = rsrc_defn.ResourceDefinition(
|
||||||
|
'test_resource', 'GenericResourceType',
|
||||||
|
external_id='f00d')
|
||||||
|
res = generic_rsrc.CheckableResource('test_resource', tmpl, self.stack)
|
||||||
|
scheduler.TaskRunner(res.create)()
|
||||||
|
self.assertEqual((res.CHECK, res.COMPLETE), res.state)
|
||||||
|
self.assertEqual('f00d', res.resource_id)
|
||||||
|
|
||||||
def test_create_from_external_not_found(self):
|
def test_create_from_external_not_found(self):
|
||||||
external_id = 'f00d'
|
external_id = 'f00d'
|
||||||
tmpl = rsrc_defn.ResourceDefinition(
|
tmpl = rsrc_defn.ResourceDefinition(
|
||||||
|
|
Loading…
Reference in New Issue