Как получить название региона на заказном тепловом ресурсе?
У меня есть развертывание OpenStack с 2 регионами. Keystone и Horizon являются общими для обоих регионов. И у каждого региона есть свои Nova, Heat, Neutron, Glance и т. Д.
Я пишу пользовательский тепловой ресурс, который должен вести себя по-разному в зависимости от региона, в котором создается стек. Поэтому я ищу способ получить название региона в пользовательском тепловом ресурсе.
Я попытался поэкспериментировать с различными методами keystoneclient, а именно:
auth = keystoneclient.auth.identity.v3.Token(
auth_url=auth_url,
token=token,
reauthenticate=False)
session = keystoneclient.session.Session(auth=auth)
keystone_client = keystoneclient.v3.client.Client(session=session)
endpoint_manager = keystoneclient.v3.endpoints.EndpointManager(keystone_client)
endpoint_list = endpoint_manager.list()
Этот код возвращает ошибку:
2018-12-06 14:27:11.885 1305729 TRACE heat.engine.resource File "/usr/lib/python2.7/site-packages/keystoneclient/service_catalog.py", line 216, in url_for
2018-12-06 14:27:11.885 1305729 TRACE heat.engine.resource raise exceptions.EmptyCatalog(_('The service catalog is empty.'))
2018-12-06 14:27:11.885 1305729 TRACE heat.engine.resource EmptyCatalog: The service catalog is empty.
Есть ли "стандартный" способ получения названия региона вашего "собственного" региона?