def server_id_delete(request, id): content = {} edit_id = Host.objects.get(id=id) #机房名称 idc_name = IDC.objects.all() server_type = MyForm.objects.all() if request.method == 'POST': #验证post方法 uf = Host_from(request.POST) #绑定POST动作 delete_id = request.POST.getlist("delete_id") delete_id = int(delete_id[0]) delete_name = request.POST.getlist("delete_name") for i in delete_name: print i Host.objects.get(id=delete_id).delete() idc_log(request.user.username, edit_id.node_name, "删除", edit_id.edit_username, edit_id.edit_datetime, id, request.user.id) return HttpResponseRedirect("/assets/server/type/notid/") else: content["edit_brand"] = Server_System content["edit_Cores"] = Cores content["edit_system"] = System_os content["edit_system_cpuarch"] = system_arch content["server_type"] = server_type content["edit_id"] = edit_id content["server_name"] = idc_name content["edit_usage"] = System_usage content.update(csrf(request)) return render_to_response('server_idc/delete.html', content, context_instance=RequestContext(request))
def server_id_delete(request,id): content = {} edit_id = Host.objects.get(id = id) #机房名称 idc_name = IDC.objects.all() server_type = MyForm.objects.all() if request.method == 'POST': #验证post方法 uf = Host_from(request.POST) #绑定POST动作 delete_id = request.POST.getlist("delete_id") delete_id = int(delete_id[0]) delete_name = request.POST.getlist("delete_name") for i in delete_name: print i Host.objects.get(id=delete_id).delete() idc_log(request.user.username, edit_id.node_name,"删除", edit_id.edit_username, edit_id.edit_datetime, id, request.user.id) return HttpResponseRedirect("/assets/server/type/notid/") else: content["edit_brand"] = Server_System content["edit_Cores"] = Cores content["edit_system"] = System_os content["edit_system_cpuarch"] = system_arch content["server_type"] = server_type content["edit_id"] = edit_id content["server_name"] = idc_name content["edit_usage"] = System_usage content.update(csrf(request)) return render_to_response('server_idc/delete.html', content, context_instance=RequestContext(request))
def server_edit(request, id): content = {} edit_id = Host.objects.get(id=id) #机房名称 idc_name = IDC.objects.all() server_type = MyForm.objects.all() if request.method == 'POST': #验证post方法 uf = Host_from(request.POST) #绑定POST动作 if uf.is_valid(): #验证数据有效性 uf.auto_id = edit_id.id zw = uf.save(commit=False) zw.edit_username = request.user.username zw.old_editname = edit_id.edit_username zw.old_editdatetime = edit_id.edit_datetime zw.auto_install = edit_id.auto_install zw.id = edit_id.id zw.create_time = edit_id.create_time zw.save() uf.save_m2m() print "保存数据" idc_log(request.user.username, edit_id.node_name, "修改", edit_id.edit_username, edit_id.edit_datetime, id, request.user.id) return HttpResponseRedirect('/assets/list_id/' + id) # return render_to_response('server_idc/edit.html',content,context_instance=RequestContext(request)) else: print "is over" print uf.is_valid() else: uf = Host_from() content["uf"] = uf content["edit_brand"] = Server_System content["edit_Cores"] = Cores content["edit_system"] = System_os content["edit_system_cpuarch"] = system_arch content["server_type"] = server_type content["edit_id"] = edit_id content["server_name"] = idc_name content["edit_usage"] = System_usage content.update(csrf(request)) return render_to_response('server_idc/edit.html', content, context_instance=RequestContext(request))
def server_edit(request,id): content = {} edit_id = Host.objects.get(id = id) #机房名称 idc_name = IDC.objects.all() server_type = MyForm.objects.all() if request.method == 'POST': #验证post方法 uf = Host_from(request.POST) #绑定POST动作 if uf.is_valid(): #验证数据有效性 uf.auto_id = edit_id.id zw = uf.save(commit=False) zw.edit_username = request.user.username zw.old_editname = edit_id.edit_username zw.old_editdatetime = edit_id.edit_datetime zw.auto_install = edit_id.auto_install zw.id=edit_id.id zw.create_time = edit_id.create_time zw.save() uf.save_m2m() print "保存数据" idc_log(request.user.username, edit_id.node_name, "修改", edit_id.edit_username, edit_id.edit_datetime, id, request.user.id) return HttpResponseRedirect('/assets/list_id/'+ id ) # return render_to_response('server_idc/edit.html',content,context_instance=RequestContext(request)) else: print "is over" print uf.is_valid() else: uf = Host_from() content["uf"] = uf content["edit_brand"] = Server_System content["edit_Cores"] = Cores content["edit_system"] = System_os content["edit_system_cpuarch"] = system_arch content["server_type"] = server_type content["edit_id"] = edit_id content["server_name"] = idc_name content["edit_usage"] = System_usage content.update(csrf(request)) return render_to_response('server_idc/edit.html', content, context_instance=RequestContext(request))
def server_update(request,id): context = {} edit_id = Host.objects.get(id = id) #机房名称 idc_name = IDC.objects.all() server_type = MyForm.objects.all() if request.method == 'POST': #验证post方法 uf = Host_from(request.POST) #绑定POST动作 if uf.is_valid(): #验证数据有效性 uf.auto_id = edit_id.id zw = uf.save(commit=False) zw.edit_username = request.user.username zw.old_editname = edit_id.edit_username zw.old_editdatetime = edit_id.edit_datetime zw.create_time = edit_id.create_time zw.auto_install = edit_id.auto_install zw.id=edit_id.id zw.save() uf.save_m2m() print "保存数据" # print request.user.username, edit_id.node_name,"saltstack更新", edit_id.edit_username, edit_id.edit_datetime, edit_id.id, request.user.id idc_log(request.user.username, edit_id.node_name,"saltstack更新", edit_id.edit_username, edit_id.edit_datetime, edit_id.id, request.user.id) return HttpResponseRedirect('/assets/server/node_id/'+id) else: print "is over" else: uf = Host_from() context["uf"] = uf context["edit_brand"] = Server_System context["edit_Cores"] = Cores context["edit_system"] = System_os context["edit_system_cpuarch"] = system_arch context["server_type"] = server_type context["edit_id"] = edit_id context["server_name"] = idc_name context["edit_usage"] = System_usage token_api_id = token_id() list_all = salt_api_token( { # 'client': 'local', 'fun': 'grains.items', 'tgt':edit_id.node_name, # 'arg':salt_cmd_lr , }, salt_api_url, {"X-Auth-Token": token_api_id} ) list_all = list_all.run() for i in list_all["return"]: try: context["jid"] = i["jid"] context["minions"] = i["minions"] except KeyError: return render_to_response('server_idc/update_error.html',context,context_instance=RequestContext(request)) jobs_id = context["jid"] jobs_url = salt_api_url + "/jobs/" + jobs_id minions_list_all = salt_api_jobs( jobs_url, {"X-Auth-Token": token_api_id} ) voilet_test = minions_list_all.run() for i in voilet_test["return"]: update_keys = i.keys() try: update_key = update_keys[0] except IndexError: return render_to_response('server_idc/update_error.html',context,context_instance=RequestContext(request)) context["cmd_run"] = i[update_key] context["eth0"] = context["cmd_run"]["ipv4"][1] try: context["eth1"] = context["cmd_run"]["ipv4"][2] except IndexError: context["eth1"] = False context["mem_total"] = context["cmd_run"]["mem_total"] context["num_cpus"] = int(context["cmd_run"]["num_cpus"]) context["os"] = context["cmd_run"]["os"] context["lsb_distrib_release"] = context["cmd_run"]["lsb_distrib_release"] context["cpu_model"] = context["cmd_run"]["cpu_model"] context.update(csrf(request)) #日志入库 return render_to_response('server_idc/update.html',context,context_instance=RequestContext(request))