def __init__(self, request, *args, **kwargs): super(CreateErasureCodedPool, self).__init__(request, *args, **kwargs) storage_group_list = [('', _("Select a storage group"))] ec_profile_list = [('', _("Select an erasure coded profile"))] ec_failure_domain_list = [('osd', "OSD (default)"), ("zone", "Zone"), ('host', "Host")] ec_profiles = vsm_api.ec_profiles(self.request) for k, v in enumerate(ec_profiles): ec_profile_list.append((v['id'], v['name'])) try: rsp, group_list= vsm_api.get_storage_group_list(self.request) for key in group_list: storage_group_list.append((key, group_list[key])) except: msg = _('Failed to get storage_group_list.') redirect = reverse(self.failure_url) exceptions.handle(request, msg, redirect=redirect) return False self.fields['storage_group'].choices = storage_group_list self.fields['ec_profile'].choices = ec_profile_list self.fields['ec_failure_domain'].choices = ec_failure_domain_list
def __init__(self, request, *args, **kwargs): super(CreateErasureCodedPool, self).__init__(request, *args, **kwargs) storage_group_list = [] ec_profile_list = [] ec_failure_domain_list = [('osd', "OSD (default)"), ("zone", "Zone"), ('host', "Host")] ec_profiles = vsm_api.ec_profiles(self.request) for k, v in enumerate(ec_profiles): ec_profile_list.append((v['id'], v['name'])) try: rsp, group_list= vsm_api.get_storage_group_list(self.request) for key in group_list: storage_group_list.append((key, group_list[key])) except: msg = _('Failed to get storage_group_list.') redirect = reverse(self.failure_url) exceptions.handle(request, msg, redirect=redirect) return False self.fields['storage_group'].choices = storage_group_list self.fields['ec_profile'].choices = ec_profile_list self.fields['ec_failure_domain'].choices = ec_failure_domain_list