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
示例#2
0
 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