Adds _show_resource support to designate plugins

Adds the _show_resource() to designate plugins Domain
and Record.

Change-Id: If75457ee45b505ed7ce5e853b0f270cff71dc674
Closes-bug: #1484867
This commit is contained in:
Kanagaraj Manickam
2015-08-17 16:03:13 +05:30
parent d988bf57c4
commit f388ca270f
4 changed files with 49 additions and 0 deletions

View File

@@ -25,6 +25,8 @@ class DesignateDomain(resource.Resource):
support_status = support.SupportStatus(
version='5.0.0')
entity = 'domains'
PROPERTIES = (
NAME, TTL, DESCRIPTION, EMAIL
) = (
@@ -117,6 +119,11 @@ class DesignateDomain(resource.Resource):
domain = self.client().domains.get(self.resource_id)
return domain.serial
# FIXME(kanagaraj-manickam) Remove this method once designate defect
# 1485552 is fixed.
def _show_resource(self):
return dict(self.client().domains.get(self.resource_id).items())
def resource_mapping():
return {

View File

@@ -24,6 +24,8 @@ class DesignateRecord(resource.Resource):
support_status = support.SupportStatus(
version='5.0.0')
entity = 'records'
PROPERTIES = (
NAME, TTL, DESCRIPTION, TYPE, DATA, PRIORITY, DOMAIN
) = (
@@ -153,6 +155,11 @@ class DesignateRecord(resource.Resource):
except Exception as ex:
self.client_plugin().ignore_not_found(ex)
# FIXME(kanagaraj-manickam) Remove this method once designate defect
# 1485552 is fixed.
def _show_resource(self):
return dict(self.client().records.get(self.resource_id).items())
def resource_mapping():
return {

View File

@@ -14,6 +14,7 @@
import mock
from designateclient import exceptions as designate_exception
from designateclient.v1 import domains
from heat.engine.resources.openstack.designate import domain
from heat.engine import stack
@@ -162,3 +163,19 @@ class DesignateDomainTest(common.HeatTestCase):
self.assertEqual(1, len(mapping))
self.assertEqual(domain.DesignateDomain, mapping[RESOURCE_TYPE])
self.assertIsInstance(self.test_resource, domain.DesignateDomain)
def test_resource_show_resource(self):
args = dict(
name='test',
description='updated description',
ttl=4200,
email='xyz@test-domain.com'
)
rsc = domains.Domain(args)
mock_notification_get = self.test_client.domains.get
mock_notification_get.return_value = rsc
self.assertEqual(args,
self.test_resource._show_resource(),
'Failed to show resource')

View File

@@ -14,6 +14,7 @@
import mock
from designateclient import exceptions as designate_exception
from designateclient.v1 import records
from heat.engine.resources.openstack.designate import record
from heat.engine import stack
@@ -230,3 +231,20 @@ class DesignateRecordTest(common.HeatTestCase):
self.assertEqual(1, len(mapping))
self.assertEqual(record.DesignateRecord, mapping[RESOURCE_TYPE])
self.assertIsInstance(self.test_resource, record.DesignateRecord)
def test_resource_show_resource(self):
args = dict(
name='test-record.com',
description='Test record',
ttl=3600,
type='A',
priority=1,
data='1.1.1.1'
)
rsc = records.Record(args)
mock_notification_get = self.test_client.records.get
mock_notification_get.return_value = rsc
self.assertEqual(args,
self.test_resource._show_resource(),
'Failed to show resource')