def __create_server_info(self, ignore_errs=False): """ 创建服务器信息 :param ignore_errs: 是否忽略错误 :return: """ try: self.__verify_field(self.clean_data, 'model', str) # self.__verify_field(self.clean_data,'test_key',str) if not len(self.response['error'] ) or ignore_errs == True: # 没有处理的时候或没有错误发生 data_set = { 'asset_id': self.asset_obj.id, 'raid_type': self.clean_data.get('raid_type'), 'model': self.clean_data.get('model'), 'os_type': self.clean_data.get('os_type'), 'os_distribution': self.clean_data.get('os_distribution'), 'os_release': self.clean_data.get('os_release'), } obj = models.Server(**data_set) obj.save() return obj except Exception as e: self.response_msg('error', 'ObjectCreationException', 'Object [server] %s' % str(e))
def api_meun(self): asset = models.Asset() server = models.Server() bu = [{ 'pk': i.id, 'name': i.name } for i in models.BusinessUnit.objects.all()] idcs = [{'pk': i.id, 'name': i.name} for i in models.IDC.objects.all()] tags = [{'pk': i.id, 'name': i.name} for i in models.Tag.objects.all()] return { 'asset_type': asset.asset_type_choice, 'asset_status': asset.asset_status, 'bu': bu, 'idc': idcs, 'tag': tags, 'server_type': server.sub_asset_type_choice, } # def update_server_gailan_a(self,request, *args, **kwagrs): # # print(request.POST,args[0]) # asset_type_data = request.POST.get('asset_type',None) # business_unit_id = request.POST.get('business_unit',None) # manufacturer_id = request.POST.get('manufacturer',None) # manage_ip = request.POST.get('manage_ip',None) # idc_id = request.POST.get('idc',None) # # asset_obj = models.Asset.objects.filter(id=args[0]).first() # asset_obj.asset_type = asset_type_data # asset_obj.business_unit = models.BusinessUnit.objects.get(id=business_unit_id) if business_unit_id else None # asset_obj.manufacturer = models.Manufacturer.objects.get(id=manufacturer_id) if manufacturer_id else None # asset_obj.manage_ip = manage_ip # asset_obj.idc = models.IDC.objects.get(id=idc_id) if idc_id else None # asset_obj.save() # # # # print (c.values()) # return True # # # def update_server_gailan_b(self,request, *args, **kwagrs): # # print ('r:',request.POST,'args:',args[0]) # username = request.POST.get('username') # passwd = request.POST.get('passwd',None) # sshport = request.POST.get('sshport',None) # sudo_passwd = request.POST.get('sudo_passwd',None) # keyfile = request.POST.get('keyfile',None) # # print (username,passwd,sudo_passwd) # asset_obj = models.Asset.objects.filter(id=args[0]).first() # server_obj = models.Server.objects.filter(asset=asset_obj).first() # server_obj.username = username # server_obj.passwd = passwd # server_obj.sshport = sshport # server_obj.sudo_passwd = sudo_passwd # server_obj.keyfile = keyfile if keyfile else None # server_obj.save() # # print (server_obj.sshport) return True
def addserver(request): if request.method == "POST": addserver_form = forms.AddserverForm(request.POST) # addserveruser_formset = formset_factory(forms.AddserverUserForm, extra=5,) # formset = addserveruser_formset(request.POST, prefix="form") message = "" if addserver_form.is_valid(): # 获取数据 os_type = addserver_form.cleaned_data['os_type'] os_release = addserver_form.cleaned_data['os_release'] hostname = addserver_form.cleaned_data['hostname'] alias = addserver_form.cleaned_data['alias'] extranet_IP = addserver_form.cleaned_data['extranet_IP'] intranet_IP = addserver_form.cleaned_data['intranet_IP'] ssh_port = addserver_form.cleaned_data['ssh_port'] cpu = addserver_form.cleaned_data['cpu'] ram = addserver_form.cleaned_data['ram'] disk = addserver_form.cleaned_data['disk'] network_bandwidth = addserver_form.cleaned_data[ 'network_bandwidth'] ssh_user_root_password = addserver_form.cleaned_data[ 'ssh_user_root_password'] ssh_user_other = addserver_form.cleaned_data['ssh_user_other'] ssh_user_other_password = addserver_form.cleaned_data[ 'ssh_user_other_password'] system = addserver_form.cleaned_data['system'] # user = formset.cleaned_data['user'] # password = formset.cleaned_data['password'] same_alias = models.Server.objects.filter(alias=alias) if same_alias: #主机别名唯一 message = "主机别名已经存在,请重新输入!" return render(request, 'assets/addserver.html', locals()) # 当一切都OK的情况下,创建新记录 new_server = models.Server() new_server.os_type = os_type new_server.os_release = os_release new_server.hostname = hostname new_server.alias = alias new_server.extranet_IP = extranet_IP new_server.intranet_IP = intranet_IP new_server.ssh_port = ssh_port new_server.cpu = cpu new_server.ram = ram new_server.disk = disk new_server.network_bandwidth = network_bandwidth new_server.ssh_user_root_password = ssh_user_root_password new_server.ssh_user_other = ssh_user_other new_server.ssh_user_other_password = ssh_user_other_password new_server.system = system new_server.save() return redirect('assets:index') addserver_form = forms.AddserverForm() return render(request, 'assets/addserver.html', locals())
def meun(self): asset = models.Asset() server = models.Server() bu = models.BusinessUnit.objects.all() mf = models.Manufacturer.objects.all() idc = models.IDC.objects.all() tags = models.Tag.objects.all() return { 'asset_type': asset.asset_type_choice, 'asset_status': asset.asset_status, 'bu': bu, 'mf': mf, 'idc': idc, 'tag': tags, 'server_type': server.sub_asset_type_choice, }
def __create_server_info(self, ignore_errs=False): try: self.__verify_field(self.clean_data, 'model', str) if not len(self.response['error']) or ignore_errs == True: # no processing when there's no error happend data_set = { 'asset_id': self.asset_obj.id, 'raid_type': self.clean_data.get('raid_type'), # 'model':self.clean_data.get('model'), 'os_type': self.clean_data.get('os_type'), 'os_distribution': self.clean_data.get('os_distribution'), 'os_release': self.clean_data.get('os_release'), } obj = models.Server(**data_set) obj.asset.model = self.clean_data.get('model') obj.save() return obj except Exception as e: self.response_msg('error', 'ObjectCreationException', 'Object [server] %s' % str(e))
def __create_server_info(self, ignore_errs=False): try: #进行代码监测 self.__verify_field(self.clean_data, 'model', str) if not len(self.response['error']) or ignore_errs == True: data_set = { 'asset_id': self.asset_obj.id, 'raid_type': self.clean_data.get('raid_type'), 'model': self.clean_data.get('model'), 'kernelrelease': self.clean_data.get('kernelrelease'), 'os_type': self.clean_data.get('os_type'), 'os_distribution': self.clean_data.get('os_distribution'), 'os_release': self.clean_data.get('os_release'), } print(data_set) #插入数据库 obj = models.Server(**data_set) #保存 obj.save() return obj except Exception as e: self.response_msg('error', '对象创建异常', '对象[server] %s' % str(e))