def get_context_data(self, request): template_id = self.tab_group.kwargs['template_id'] try: template = saharaclient.cluster_template_get(request, template_id) except Exception as e: template = {} LOG.error("Unable to fetch cluster template details: %s" % str(e)) return {"template": template}
def __init__(self, request, context_seed, entry_point, *args, **kwargs): template_id = context_seed["template_id"] try: template = saharaclient.cluster_template_get(request, template_id) self._set_configs_to_copy(template.cluster_configs) request.GET = request.GET.copy() request.GET.update( { "plugin_name": template.plugin_name, "hadoop_version": template.hadoop_version, "aa_groups": template.anti_affinity, } ) super(CopyClusterTemplate, self).__init__(request, context_seed, entry_point, *args, **kwargs) # Initialize node groups. # TODO(rdopieralski) The same (or very similar) code appears # multiple times in this dashboard. It should be refactored to # a function. for step in self.steps: if isinstance(step, create_flow.ConfigureNodegroups): ng_action = step.action template_ngs = template.node_groups if "forms_ids" in request.POST: continue ng_action.groups = [] for i, templ_ng in enumerate(template_ngs): group_name = "group_name_%d" % i template_id = "template_id_%d" % i count = "count_%d" % i serialized = "serialized_%d" % i # save the original node group with all its fields in # case the template id is missing serialized_val = base64.urlsafe_b64encode(json.dumps(wf_helpers.clean_node_group(templ_ng))) ng = { "name": templ_ng["name"], "count": templ_ng["count"], "id": i, "deletable": "true", "serialized": serialized_val, } if "node_group_template_id" in templ_ng: ng["template_id"] = templ_ng["node_group_template_id"] ng_action.groups.append(ng) wf_helpers.build_node_group_fields(ng_action, group_name, template_id, count, serialized) elif isinstance(step, create_flow.GeneralConfig): fields = step.action.fields fields["cluster_template_name"].initial = template.name + "-copy" fields["description"].initial = template.description except Exception: exceptions.handle(request, _("Unable to fetch template to copy."))
def get_context_data(self, request): template_id = self.tab_group.kwargs['template_id'] try: template = saharaclient.cluster_template_get(request, template_id) except Exception: template = {} exceptions.handle(request, _("Unable to fetch cluster template details.")) return {"template": template}
def get_object(self): ct_id = self.kwargs["template_id"] try: return saharaclient.cluster_template_get(self.request, ct_id) except Exception: msg = _('Unable to retrieve details for ' 'cluster template "%s".') % ct_id redirect = reverse("horizon:project:data_processing." "cluster_templates:cluster-templates") exceptions.handle(self.request, msg, redirect=redirect)
def __init__(self, request, context_seed, entry_point, *args, **kwargs): template_id = context_seed["template_id"] try: template = saharaclient.cluster_template_get(request, template_id) self._set_configs_to_copy(template.cluster_configs) request.GET = request.GET.copy() request.GET.update({ "plugin_name": template.plugin_name, "hadoop_version": template.hadoop_version, "aa_groups": template.anti_affinity }) super(CopyClusterTemplate, self).__init__(request, context_seed, entry_point, *args, **kwargs) # Initialize node groups. # TODO(rdopieralski) The same (or very similar) code appears # multiple times in this dashboard. It should be refactored to # a function. for step in self.steps: if isinstance(step, create_flow.ConfigureNodegroups): ng_action = step.action template_ngs = template.node_groups if 'forms_ids' in request.POST: continue ng_action.groups = [] for i, templ_ng in enumerate(template_ngs): group_name = "group_name_%d" % i template_id = "template_id_%d" % i count = "count_%d" % i ng_action.groups.append({ "name": templ_ng["name"], "template_id": templ_ng["node_group_template_id"], "count": templ_ng["count"], "id": i, "deletable": "true", }) wf_helpers.build_node_group_fields( ng_action, group_name, template_id, count) elif isinstance(step, create_flow.GeneralConfig): fields = step.action.fields fields["cluster_template_name"].initial = (template.name + "-copy") fields["description"].initial = template.description except Exception: exceptions.handle(request, _("Unable to fetch template to copy."))
def get_object(self, *args, **kwargs): if not hasattr(self, "_object"): template_id = self.kwargs['cluster_id'] try: template = saharaclient.cluster_template_get( self.request, template_id) except Exception: template = None exceptions.handle(self.request, _("Unable to fetch cluster template.")) self._object = template return self._object
def get_object(self, *args, **kwargs): if not hasattr(self, "_object"): template_id = self.kwargs['template_id'] try: template = saharaclient.cluster_template_get(self.request, template_id) except Exception: template = {} exceptions.handle(self.request, _("Unable to fetch cluster template.")) self._object = template return self._object
def __init__(self, request, context_seed, entry_point, *args, **kwargs): template_id = context_seed["template_id"] try: template = saharaclient.cluster_template_get(request, template_id) self._set_configs_to_copy(template.cluster_configs) request.GET = request.GET.copy() request.GET.update({"plugin_name": template.plugin_name, "hadoop_version": template.hadoop_version, "aa_groups": template.anti_affinity}) super(CopyClusterTemplate, self).__init__(request, context_seed, entry_point, *args, **kwargs) #init Node Groups for step in self.steps: if isinstance(step, create_flow.ConfigureNodegroups): ng_action = step.action template_ngs = template.node_groups if 'forms_ids' not in request.POST: ng_action.groups = [] for id in range(0, len(template_ngs), 1): group_name = "group_name_" + str(id) template_id = "template_id_" + str(id) count = "count_" + str(id) templ_ng = template_ngs[id] ng_action.groups.append( {"name": templ_ng["name"], "template_id": templ_ng["node_group_template_id"], "count": templ_ng["count"], "id": id, "deletable": "true"}) wf_helpers.build_node_group_fields(ng_action, group_name, template_id, count) elif isinstance(step, create_flow.GeneralConfig): fields = step.action.fields fields["cluster_template_name"].initial = \ template.name + "-copy" fields["description"].initial = template.description except Exception: exceptions.handle(request, _("Unable to fetch template to copy."))
def get_context_data(self, request): template_id = self.tab_group.kwargs['template_id'] try: template = saharaclient.cluster_template_get(request, template_id) for ng in template.node_groups: if not ng["flavor_id"]: continue ng["flavor_name"] = ( nova.flavor_get(request, ng["flavor_id"]).name) ng["node_group_template"] = helpers.safe_call( saharaclient.nodegroup_template_get, request, ng.get("node_group_template_id", None)) except Exception: template = {} exceptions.handle(request, _("Unable to fetch node group details.")) return {"template": template}
def get_context_data(self, request): template_id = self.tab_group.kwargs['template_id'] try: template = saharaclient.cluster_template_get(request, template_id) for ng in template.node_groups: if not ng["flavor_id"]: continue ng["flavor_name"] = (nova.flavor_get(request, ng["flavor_id"]).name) ng["node_group_template"] = helpers.safe_call( saharaclient.nodegroup_template_get, request, ng.get("node_group_template_id", None)) except Exception: template = {} exceptions.handle(request, _("Unable to fetch node group details.")) return {"template": template}