def __init__(self, request, *args, **kwargs): flavor_input_list = kwargs.pop('flavor_input_list') flavor_list = kwargs.pop('flavor_list') key_pair_list = kwargs.pop('keypair_list') self.request = request if key_pair_list: key_pair_list.insert(0, ("", _("Select a keypair"))) else: key_pair_list = (("", _("No keypairs available.")), ) security_group_list = kwargs.pop('security_group_list') networks = kwargs.pop('networks') volume_list = kwargs.pop('volume_list') super(LaunchImageInstanceForm, self).__init__(*args, **kwargs) self.fields['flavor'].choices = flavor_list self.fields['flavor_input'].choices = flavor_input_list self.fields['key_pair'].choices = key_pair_list self.fields['security_groups'].choices = security_group_list self.fields['networks'].choices = networks self.fields['volume'].choices = volume_list tenant_choices = [('', _("Select a project"))] try: for tenant in api.tenant_list(request, admin=True): if tenant.enabled: tenant_choices.append((tenant.id, tenant.name)) self.fields['tenant_id'].choices = tenant_choices except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve tenant list,%s ' % e)
def __init__(self, request, *args, **kwargs): flavor_input_list = kwargs.pop('flavor_input_list') flavor_list = kwargs.pop('flavor_list') key_pair_list = kwargs.pop('keypair_list') self.request = request if key_pair_list: key_pair_list.insert(0, ("", _("Select a keypair"))) else: key_pair_list = (("", _("No keypairs available.")),) security_group_list = kwargs.pop('security_group_list') networks = kwargs.pop('networks') volume_list = kwargs.pop('volume_list') super(LaunchImageInstanceForm, self).__init__(*args, **kwargs) self.fields['flavor'].choices = flavor_list self.fields['flavor_input'].choices = flavor_input_list self.fields['key_pair'].choices = key_pair_list self.fields['security_groups'].choices = security_group_list self.fields['networks'].choices = networks self.fields['volume'].choices = volume_list tenant_choices = [('', _("Select a project"))] try: for tenant in api.tenant_list(request, admin=True): if tenant.enabled: tenant_choices.append((tenant.id, tenant.name)) self.fields['tenant_id'].choices = tenant_choices except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve tenant list,%s ' % e)
def get_project_resource(request): projects = None try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve project list,%s.' % e.message)
def update_status(self, request, tenant_id ,parameters): tenants = [] try: tenants = api.tenant_list(request, admin = True) except Exception,exc: msg = 'Unable to retrieve project list,%s.' % exc LOG.error(msg) return False
def update_status(self, request, tenant_id, parameters): tenants = [] try: tenants = api.tenant_list(request, admin=True) except Exception, exc: msg = 'Unable to retrieve project list,%s.' % exc LOG.error(msg) return False
def update_status(self, request, tenant_id, parameters): projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, exe: LOG.error('Unable to retrieve project list,%s.' % exe.message) return False
def update_status(self, request, tenant_id, parameters): projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, e: LOG.error(e) return False
def update_status(self, request, tenant_id ,parameters): projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, exe: LOG.error('Unable to retrieve project list,%s.' % exe.message) return False
def update_status(self, request, tenant_id ,parameters): projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, e: LOG.error(e) return False
def get_project_menu(request): project_menus = [] projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve project list. %s' % e)
def create_project_action(request): """ :param request: request object :return view<'get_project_list'>::create the tenant successfully view<'project_manage/create.html'>::failed to create the tenant """ treeFatherId = request.POST.get('tree_father_id', '') if not treeFatherId: return HttpResponse( { "message": 'Unable to create project', "statusCode": UI_RESPONSE_DWZ_ERROR }, status=UI_RESPONSE_ERROR) form = CreateTenantForm(request.POST) if form.is_valid(): try: iRet, msg = handle_create(request, form.cleaned_data) if iRet: project_id = "" project_name = "" project_enabled = "" try: projects = api.tenant_list(request, admin=True) for project in projects: if project.name == form.cleaned_data['name']: project_id = project.id project_name = project.name project_enabled = project.enabled except Exception, e: msg = 'Can not get project list. %s' % e LOG.error(msg) return HttpResponse( { "message": "Create Project Success", "statusCode": UI_RESPONSE_OK, "object_name": form.cleaned_data['name'], "operType": "add_project", "treeNodeObj": { "project_id": project_id, "project_name": project_name, "project_enabled": project_enabled } }, status=UI_RESPONSE_OK) else: return HttpResponse( { "message": msg, "statusCode": UI_RESPONSE_DWZ_ERROR }, status=UI_RESPONSE_ERROR)
def __init__(self, request, *args, **kwargs): self.request = request tenant_choices = [('', _("Select a project"))] try: for tenant in api.tenant_list(self.request, admin=True): if tenant.enabled: tenant_choices.append((tenant.id, tenant.name)) except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve tenant list,%s ' % e)
def get_network_topology_menu(request): """ :param request:request object :return:view<'virtual_network_manage/networkprojectindex.html'>::list of tenants """ project_menus = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, exe: LOG.error('Unable to retrieve project list,%s.' % exe.message)
def get_network_topology_menu(request): """ :param request:request object :return:view<'virtual_network_manage/networkprojectindex.html'>::list of tenants """ project_menus = [] try: projects = api.tenant_list(request, admin = True) except Unauthorized: raise except Exception , exe: LOG.error('Unable to retrieve project list,%s.' % exe.message)
def get_securitygroup_ips_list(request): """ :param request:request object :return:json :the tree of floatingip """ project_menus = [] projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, exe: LOG.error('Unable to retrieve project list,%s.' % exe)
def get_securitygroup_projects_menu(request): """ :param request:request object :return:view<'project_manage/index.html'>::list of tenants """ project_menus = [] projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, ex: LOG.error('Unable to retrieve project list,%s.' % ex)
def get_all_project(request): """ :param request:request object :return:view<'project_manage/index.html'>::list of tenants """ args = {} projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve project list. %s' % e)
def get_securitygroup_ips_list(request): """ :param request:request object :return:json :the tree of floatingip """ project_menus = [] projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception , exe: LOG.error('Unable to retrieve project list,%s.' % exe)
def get_routers_projects_menu(request): """ :param request:request object :return:view<'project_manage/index.html'>::list of tenants """ project_menus = [] projects = [] try: projects = api.tenant_list(request, admin=True) except Unauthorized: raise except Exception, exc: msg = 'Unable to retrieve project list,%s.' % exc LOG.error(msg)
def get_volume_list_temp(request): volume_name = '' args = {} if request.GET.has_key("volume_name"): volume_name = request.GET['volume_name'] try: instances = get_instance_list(request) tenants = api.tenant_list(request, getattr(request.user, 'is_superuser', True)) volumes = api.volume_list(request) instances = SortedDict([(inst.id, inst) for inst in instances]) tenants_dic = SortedDict([(tenant.id, tenant) for tenant in tenants]) volumes = [ volume for volume in volumes if volume.status != 'error_deleting' ] for volume in volumes: att = volume.attachments server_id = None if len(att) != 0: server_id = att[0]['server_id'] #instance_id_dict[volume.id] = server_id ins = instances[server_id] #attach_instance[volume.id] = getattr(ins, "name", None) setattr(volume, "instance_name", getattr(ins, "name", None)) else: # attach_instance[volume.id] = None setattr(volume, "instance_name", None) #instance_id_dict[volume] = None try: setattr( volume, "tenant", tenants_dic[getattr(volume, 'os-vol-tenant-attr:tenant_id', None)]) except Exception, ex: LOG.error("Can't found tenant %s" % ex) setattr(volume, "instance_id", server_id) setattr(volume, "status_link", reverse('get_volume_status', args=[volume.id])) except Unauthorized: raise except Exception, ex: volumes = [] LOG.error("ClientException in volume index. %s" % ex)
def create_volume_form(request, tenant_id, snapshot_id): """ :param request: request object :return view<'volume_manage/create.html'>: the view create volume table """ form = CreateVolumeForm() try: tenants = api.tenant_list(request, getattr(request.user, 'is_superuser', True)) except Unauthorized: raise except Exception, ex: LOG.error('tenants not found,the error is %s' % ex) tenants = []
class CreateUserForm(forms.Form): """ the form for creating a user """ name = CharField(label=_("User Name"), max_length=10, min_length=2) email = EmailField(label=_("email")) password = RegexField( label=_("Password"), widget=PasswordInput(render_value=False), regex=validators.password_validator(), error_messages={'invalid': validators.password_validator_msg()}) confirm_password = CharField(label=_("Confirm Password"), required=False, widget=PasswordInput(render_value=False)) tenant_id = ChoiceField(label=_("Primary Project"), required=True) role_id = ChoiceField(label=_("Role")) def __init__(self, request, *args, **kwargs): super(CreateUserForm, self).__init__(*args, **kwargs) self.request = request roles = [] role_choices = [] try: roles = api.keystone.role_list(request) except Unauthorized: raise except Exception, e: LOG.error("Unable to retrieve user roles. %s" % e) for role in roles: if role.name != ROLE_ADMIN and role.enabled: role_choices.append((role.id, role.name)) # if role.name == ROLE_PROJECTADMIN: # if get_user_role_name(request) == ROLE_ADMIN: # role_choices.append((role.id, role.name)) # elif role.name != ROLE_ADMIN: # role_choices.insert(0, (role.id, role.name)) self.fields['role_id'].choices = role_choices tenant_choices = [('', _("Select a project"))] for tenant in api.tenant_list(request, admin=True): if tenant.enabled: tenant_choices.append((tenant.id, tenant.name)) self.fields['tenant_id'].choices = tenant_choices
def get_snapshot_index(request): snapshots = [] tenants_dic = {} args = {} if request.GET.has_key('tenant_id'): tenant_id = request.GET['tenant_id'] switch_tenants(request, tenant_id) else: tenant_id = None try: tenants = api.tenant_list(request, getattr(request.user, 'is_superuser', True)) snapshots = api.volume_snapshot_list(request) volumes = api.volume_list(request) volumes_dic = SortedDict([(volume.id, volume) for volume in volumes]) tenants_dic = SortedDict([(tenant.id, tenant.name) for tenant in tenants]) for snapshot in snapshots: volume_name = None tenant_name = None try: volume_name = volumes_dic[snapshot.volume_id].display_name tenant_name = tenants_dic[snapshot.project_id] except Exception, ex: LOG.error("volume is not found the error is %s" % ex) setattr(snapshot, 'volume_name', volume_name) setattr(snapshot, 'project_name', tenant_name) setattr(snapshot, 'tenant_id', snapshot.project_id) except Unauthorized: raise except Exception, ex: LOG.error("snapshots is not found the error is %s" % ex)
def __init__(self, request, *args, **kwargs): flavor_input_list = kwargs.pop('flavor_input_list') flavor_list = kwargs.pop('flavor_list') security_group_list = kwargs.pop('security_group_list') networks = kwargs.pop('networks') volume_list = kwargs.pop('volume_list') super(LaunchForm, self).__init__(*args, **kwargs) self.fields['flavor'].choices = flavor_list self.fields['security_groups'].choices = security_group_list if flavor_input_list is not None: self.fields['flavor_input'].choices = flavor_input_list self.fields['networks'].choices = networks self.fields['volume'].choices = volume_list tenant_choices = [('', _("Select a project"))] try: for tenant in api.tenant_list(request, admin=True): if tenant.enabled: tenant_choices.append((tenant.id, tenant.name)) self.fields['ins_tenant_id'].choices = tenant_choices except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve tenant list,%s ' % e)
def get_project_summary(request): project_summary = {} INSTANCE_ON_STATUS = ('active', ) try: projects = api.tenant_list(request, admin=True) for project in projects: if not project.enabled: continue users = api.user_list(request, project.id) networks = api.network_list_for_tenant(request, project.id) instance_on_cnt = 0 instance_off_cnt = 0 instances = [] if switch_tenants(request, project.id): instances = api.server_list(request) for instance in instances: if instance.status.lower() in INSTANCE_ON_STATUS: instance_on_cnt += 1 else: instance_off_cnt += 1 summary = { 'project_name': project.name, 'user_cnt': len(users), 'network_cnt': len(networks), 'instance_on_cnt': instance_on_cnt, 'instance_off_cnt': instance_off_cnt } project_summary[project.id] = summary except Unauthorized: raise except Exception, e: LOG.error(e)
class CreateImageAndLaunchForm(forms.Form): name = forms.CharField(max_length=50, label=_("Name"), required=False) u_uid = forms.CharField(max_length=100, label=_("Uuid")) image_file = forms.FileField(label="Image file", required=False) disk_format = forms.ChoiceField(label=_('Disk Format'), required=True, choices=UI_DISK_FORMAT_CHOICE) image_data = forms.ChoiceField(label=_("Image Data"), required=False) min_disk = forms.IntegerField( label=_("Min Disk (GB)"), help_text= _('The minimum disk size required to boot the image. If unspecified, this value defaults to 0 (no minimum).' ), required=False) min_ram = forms.IntegerField( label=_("Min Ram (MB)"), help_text= _('The minimum ram size required to boot the image. If unspecified, this value defaults to 0 (no minimum).' ), required=False) is_public = forms.BooleanField(label=_("Public"), required=False) name_launch = forms.CharField(max_length=20, label=_("Instance Name"), required=False) tenant_id = forms.ChoiceField(label="Tenant") user_data = forms.CharField(widget=forms.Textarea, label=_("User Data"), required=False) flavor = forms.ChoiceField(label=_("Flavor"), help_text=_("Size of image to launch.")) key_pair = forms.ChoiceField( label=_("Keypair"), required=False, help_text=_("Which keypair to use for authentication.")) count = forms.IntegerField(label=_("Instance Count"), required=False, min_value=1, initial=1, help_text=_("Number of instances to launch.")) volume = forms.ChoiceField(label=_("Volume or Volume Snapshot"), required=False, help_text=_("Volume to boot from.")) security_groups = forms.MultipleChoiceField( label=_("Security Groups"), required=False, initial=["default"], widget=forms.CheckboxSelectMultiple(), help_text=_("Launch instance in these security groups.")) networks = forms.MultipleChoiceField( label=_("Aviable networks"), required=True, widget=forms.CheckboxSelectMultiple(), help_text=_("Select aviable network here.")) volume = forms.ChoiceField(label=_("Volume or Volume Snapshot"), required=False, help_text=_("Volume to boot from.")) device_name = forms.CharField( label=_("Device Name"), required=False, initial="vda", help_text=_("Volume mount point (e.g. 'vda' mounts at '/dev/vda').")) delete_on_terminate = forms.BooleanField( label=_("Delete on Terminate"), initial=False, required=False, help_text=_("Delete volume on instance terminate")) def __init__(self, request, *args, **kwargs): flavor_list = kwargs.pop('flavor_list') key_pair_list = kwargs.pop('keypair_list') self.request = request if key_pair_list: key_pair_list.insert(0, ("", _("Select a keypair"))) else: key_pair_list = (("", _("No keypairs available.")), ) security_group_list = kwargs.pop('security_group_list') volume_list = kwargs.pop('volume_list') networks = kwargs.pop('networks') super(CreateImageAndLaunchForm, self).__init__(*args, **kwargs) software_list = [("", _("Select a Image Data"))] try: soft_wares = Software.objects.filter(classify='SystemSoftware', status="active") for software in soft_wares: path = software.get_local_file() display = (path, software.name) software_list.append(display) except Exception, e: LOG.error('Something was wrong when get software list %s' % e) self.fields['image_data'].choices = software_list self.fields['flavor'].choices = flavor_list self.fields['networks'].choices = networks self.fields['key_pair'].choices = key_pair_list self.fields['security_groups'].choices = security_group_list self.fields['volume'].choices = volume_list tenant_choices = [('', _("Select a project"))] try: for tenant in api.tenant_list(request, admin=True): if tenant.enabled: tenant_choices.append((tenant.id, tenant.name)) self.fields['tenant_id'].choices = tenant_choices except Unauthorized: raise except Exception, e: LOG.error('Unable to retrieve tenant list,%s ' % e)