def get_hostname(backend=None, instance=None):
"""DEPRECATED: Returns the hostname for a backend or backend instance.
Warning: This API is deprecated and will be removed in a future
release. Please migrate to the Modules API as soon as possible.
Args:
backend: The name of the backend. If None, the current backend will be used.
instance: An optoinal instance number. If provided, the hostname will
represent the specific instance. If absent, the hostname will represent
the backend as a whole.
Raises:
InvalidBackendError
InvalidInstanceError
Returns:
The hostname of the backend or backend instance.
"""
if backend is None:
backend = get_backend()
if not isinstance(backend, (str, unicode)):
raise InvalidBackendError('Invalid backend: %s' % backend)
if not re.match('^[a-zA-Z0-9\-]+$', backend):
raise InvalidBackendError('Invalid backend: %s' % backend)
if instance is not None:
try:
instance = int(instance)
except ValueError:
raise InvalidInstanceError('instance must be an integer.')
if _is_dev2_environment():
return _get_dev2_hostname(backend, instance)
elif _is_dev_environment():
return _get_dev_hostname(backend, instance)
hostname = app_identity.get_default_version_hostname()
if hostname is None:
raise DefaultHostnameError
hostname = '%s.%s' % (backend, hostname)
if instance is not None:
hostname = '%d.%s' % (instance, hostname)
return hostname
评论列表
文章目录