fix: null provider_service_id when DNS failed

Change-Id: Idc1cd078961d683406b4f08eb4727169f691e569
This commit is contained in:
tonytan4ever
2016-01-08 16:05:38 -05:00
parent 29ee86f155
commit 110aff8d78
9 changed files with 71 additions and 0 deletions

View File

@@ -993,3 +993,12 @@ class ServiceController(base.ServiceBase):
datetime.datetime.today().weekday() % len(self.san_cert_cnames))
return self.san_cert_cnames[find_idx]
def get_provider_service_id(self, service_obj):
id_list = []
for domain in service_obj.domains:
dp_obj = {'policy_name': domain.domain,
'protocol': domain.protocol,
'certificate': domain.certificate}
id_list.append(dp_obj)
return json.dumps(id_list)

View File

@@ -76,6 +76,15 @@ class ServicesControllerBase(controller.ProviderControllerBase):
"""
raise NotImplementedError
@abc.abstractmethod
def get_provider_service_id(self, service_obj):
"""Get the provider side service id for the service object.
:param service_obj
:raises NotImplementedError
"""
raise NotImplementedError
def _map_service_name(self, service_name):
"""Map poppy service name to provider's specific service name.

View File

@@ -96,6 +96,9 @@ class ServiceController(base.ServiceBase):
except Exception as e:
return self.responder.failed(str(e))
def get_provider_service_id(self, service_obj):
return service_obj.name
@decorators.lazy_property(write=False)
def current_customer(self):
# TODO(tonytan4ever/obulpathi): Implement cloudfront's current_customer

View File

@@ -245,3 +245,6 @@ class ServiceController(base.ServiceBase):
@decorators.lazy_property(write=False)
def current_customer(self):
return self.client.get_current_customer()
def get_provider_service_id(self, service_obj):
return service_obj.service_id

View File

@@ -134,6 +134,9 @@ class ServiceController(base.ServiceBase):
else:
return hashlib.sha1(service_name.encode("utf-8")).hexdigest()[:30]
def get_provider_service_id(self, service_obj):
return self._map_service_name(service_obj.name)
@decorators.lazy_property(write=False)
def current_customer(self):
# This returns the current customer account info

View File

@@ -50,6 +50,9 @@ class ServiceController(base.ServiceBase):
def get(self, service_name):
return self.responder.get([], [], [])
def get_provider_service_id(self, service_obj):
return []
@decorators.lazy_property(write=False)
def current_customer(self):
'''return current_customer for Mock. We can return a None.'''