

def handle(self, request, context):
    try:
        processes = []
        for service_process in context['general_processes']:
            processes.append(str(service_process).split(':')[1])
        configs_dict = workflow_helpers.parse_configs_from_context(context, self.defaults)
        (plugin, hadoop_version) = workflow_helpers.get_plugin_and_hadoop_version(request)
        volumes_per_node = None
        volumes_size = None
        if (context['general_storage'] == 'cinder_volume'):
            volumes_per_node = context['general_volumes_per_node']
            volumes_size = context['general_volumes_size']
        saharaclient.nodegroup_template_create(request, name=context['general_nodegroup_name'], plugin_name=plugin, hadoop_version=hadoop_version, description=context['general_description'], flavor_id=context['general_flavor'], volumes_per_node=volumes_per_node, volumes_size=volumes_size, node_processes=processes, node_configs=configs_dict, floating_ip_pool=context.get('general_floating_ip_pool'), security_groups=context['general_groups'], auto_security_group=context['general_autogroup'], availability_zone=context['general_availability_zone'])
        return True
    except api_base.APIException as e:
        self.error_description = str(e)
        return False
    except Exception:
        exceptions.handle(request)

dataset/ETHPy150Open CiscoSystems/avos/openstack_dashboard/dashboards/project/data_processing/nodegroup_templates/workflows/create.py ConfigureNodegroupTemplate.handle/original