diff --git a/dynamicweb/settings/base.py b/dynamicweb/settings/base.py index 743d11c3..76135165 100644 --- a/dynamicweb/settings/base.py +++ b/dynamicweb/settings/base.py @@ -763,6 +763,11 @@ PRE_EU_VAT_RATE = float(env('PRE_EU_VAT_RATE')) VM_BASE_PRICE = float(env('VM_BASE_PRICE')) +UPDATED_TEMPLATES_STR = env('UPDATED_TEMPLATES') +UPDATED_TEMPLATES_DICT = {} +if UPDATED_TEMPLATES_STR: + UPDATED_TEMPLATES_DICT = eval(UPDATED_TEMPLATES_STR) + if DEBUG: from .local import * # flake8: noqa else: diff --git a/opennebula_api/models.py b/opennebula_api/models.py index 19e3e4f7..92d5c568 100644 --- a/opennebula_api/models.py +++ b/opennebula_api/models.py @@ -427,8 +427,12 @@ class OpenNebulaManager(): template_id = int(template_id) try: template_pool = self._get_template_pool() + if template_id in settings.UPDATED_TEMPLATES_DICT.keys(): + template_id = settings.UPDATED_TEMPLATES_DICT[template_id] return template_pool.get_by_id(template_id) - except: + except Exception as ex: + logger.debug("Template Id we are looking for : %s" % template_id) + logger.error(str(ex)) raise ConnectionRefusedError def create_template(self, name, cores, memory, disk_size, core_price,