コード例 #1
0
ファイル: views.py プロジェクト: laashub-soa/cmdb-2
def register(request):
    status = check_auth(request, "add_user")
    if not status:
        return render_to_response('default/error_auth.html',
                                  locals(),
                                  context_instance=RequestContext(request))

    content = {}
    if request.method == 'POST':
        form = UserCreateForm(request.POST)
        if form.is_valid():
            form.is_staff = 1
            new_user = form.save(commit=False)

            new_user.is_staff = 1
            new_user.session_key = ""
            new_user.uuid = cmdb_uuid()
            new_user.save()
            if EMAIL_PUSH:
                token = str(
                    hashlib.sha1(
                        new_user.username + auth_key + new_user.uuid +
                        time.strftime('%Y-%m-%d', time.localtime(time.time()))
                    ).hexdigest())
                #
                url = u'http://%s/accounts/newpasswd/?uuid=%s&token=%s' % (
                    request.get_host(), new_user.uuid, token)
                mail_title = u'运维自动化初始密码,注意密码设置需符合8位以上,字母+数字+特殊符合组合的形式'
                mail_msg = u"""
                Hi,%s:
                    请点击以下链接初始化运维自动化密码,此链接当天有效
                    注意密码设置需符合8位以上,字母+数字+特殊符合组合的形式,否则无法登录::
                        %s
                    有任何问题,请随时和运维组联系。
                """ % (new_user.first_name, url)
                #

                send_mail(mail_title,
                          mail_msg,
                          u'运维自动化<*****@*****.**>', [new_user.email],
                          fail_silently=False)

            return HttpResponseRedirect('/accounts/user_list/')
        else:
            data = UserCreateForm()

            return render_to_response('user/reg.html',
                                      locals(),
                                      context_instance=RequestContext(request))
    else:
        data = UserCreateForm()
        return render_to_response('user/reg.html',
                                  locals(),
                                  context_instance=RequestContext(request))
コード例 #2
0
def register(request):
    header_title = [
        "用户管理","添加用户"
    ]
    title = header_title[-1]
    content = {}
    if request.method == 'POST':
        form = UserCreateForm(request.POST)
        if form.is_valid():
            form.is_staff = 1
            password = form.cleaned_data['password']
            new_user = form.save(commit=False)

            new_user.is_staff = 1
            new_user.session_key = ""
            new_user.uuid = cmdb_uuid()

            new_user.password = make_password(password, None, 'pbkdf2_sha256')
            new_user.save()

            # if EMAIL_PUSH:
            #     token = str(hashlib.sha1(new_user.username + auth_key + new_user.uuid +
            #                              time.strftime('%Y-%m-%d', time.localtime(time.time()))).hexdigest())
            #     #
            #     url = u'http://%s/accounts/newpasswd/?uuid=%s&token=%s' % (request.get_host(), new_user.uuid, token)
            #     mail_title = u'运维自动化初始密码,注意密码设置需符合8位以上,字母+数字+特殊符合组合的形式'
            #     mail_msg = u"""
            #     Hi,%s:
            #         请点击以下链接初始化运维自动化密码,此链接当天有效
            #         注意密码设置需符合8位以上,字母+数字+特殊符合组合的形式,否则无法登录::
            #             %s
            #         有任何问题,请随时和运维组联系。
            #     """ % (new_user.first_name, url)
            #     #
            #
            #     send_mail(mail_title, mail_msg, u'运维自动化<*****@*****.**>', [new_user.email], fail_silently=False)


            return HttpResponseRedirect('/users/user/list')
        else:
            data = UserCreateForm()
            print(form)
            return render(request,'users/reg.html', locals())
    else:
        data = UserCreateForm()
        print('b')
        return render(request,'users/reg.html', locals())
コード例 #3
0
ファイル: views.py プロジェクト: voilet/cmdb
def register(request):
    status = check_auth(request, "add_user")
    if not status:
        return render_to_response('default/error_auth.html', locals(), context_instance=RequestContext(request))

    content = {}
    if request.method == 'POST':
        form = UserCreateForm(request.POST)
        if form.is_valid():
            form.is_staff = 1
            new_user = form.save(commit=False)

            new_user.is_staff = 1
            new_user.session_key = ""
            new_user.uuid = cmdb_uuid()
            new_user.save()
            if EMAIL_PUSH:
                token = str(hashlib.sha1(new_user.username + auth_key + new_user.uuid +
                                         time.strftime('%Y-%m-%d', time.localtime(time.time()))).hexdigest())
                #
                url = u'http://%s/accounts/newpasswd/?uuid=%s&token=%s' % (request.get_host(), new_user.uuid, token)
                mail_title = u'运维自动化初始密码,注意密码设置需符合8位以上,字母+数字+特殊符合组合的形式'
                mail_msg = u"""
                Hi,%s:
                    请点击以下链接初始化运维自动化密码,此链接当天有效
                    注意密码设置需符合8位以上,字母+数字+特殊符合组合的形式,否则无法登录::
                        %s
                    有任何问题,请随时和运维组联系。
                """ % (new_user.first_name, url)
                #

                send_mail(mail_title, mail_msg, u'运维自动化<*****@*****.**>', [new_user.email], fail_silently=False)

            return HttpResponseRedirect('/accounts/user_list/')
        else:
            data = UserCreateForm()

            return render_to_response('user/reg.html', locals(), context_instance=RequestContext(request))
    else:
        data = UserCreateForm()
        return render_to_response('user/reg.html', locals(), context_instance=RequestContext(request))
コード例 #4
0
def xls_cdn(request):
    """ http监控列表 """
    data = xlrd.open_workbook('/Users/voilet/Documents/cdn.xls')
    cdn_data = data.sheet_by_name(u'cdn')
    cdn_result = cdn_data.nrows
    for s in range(1, cdn_result):
        ip = str(cdn_data.cell(s, 9).value).strip()
        sn = str(cdn_data.cell(s, 4).value).strip()
        idc = str(cdn_data.cell(s, 14).value).strip()
        internal_ip = str(cdn_data.cell(s, 10).value).strip()
        number = str(cdn_data.cell(s, 3).value).strip()
        server_sn = str(cdn_data.cell(s, 18).value).strip()
        Services_Code = str(cdn_data.cell(s, 19).value).strip()
        cpu = str(cdn_data.cell(s, 6).value).strip()
        memory = str(cdn_data.cell(s, 7).value).strip()
        hard_disk = str(cdn_data.cell(s, 8).value).strip()
        cabinet = str(cdn_data.cell(s, 13).value).strip()

        if len(ip) > 0:
            print ip, idc, internal_ip, number, server_sn, Services_Code, cpu, memory, hard_disk, cabinet
            try:
                idc_data = IDC.objects.get(name=idc)
            except:
                uuid = str(cmdb_uuid()).replace("-", "")
                idc_data = IDC(
                    name=idc,
                    pk=uuid,
                    phone=11111111111,
                    linkman=u"曾阳",
                    address=idc,
                )
                idc_data.save()
            try:
                rst = Host.objects.get(eth1=ip)
                rst.idc = idc_data
            except Host.DoesNotExist:
                rst = Host(
                    eth1=ip,
                    idc=idc_data,
                    node_name=ip,
                    internal_ip=internal_ip,
                    system="CentOS",
                    status=1,
                )
            # rst.save()

    # print error_list
    # print len(error_list)
    # s = open("/Users/voilet/test.txt", "r")
    # rst = s.readlines()
    # # print rst
    # result = {}
    # for i in rst:
    #     i = str(i).split()
    #     if len(i) == 3:
    #         ip = i[-1]
    #         idc = i[0]
    #         sn = i[1]
    #         result[sn] = {"idc": idc, "ip": ip}
    #
    #         print sn, idc, ip, "ok"
    #     else:
    #         print i, "error"
    # s.close()
    # s = 0
    # for i in range(1, nrows):
    #     ip = str(table.cell(i, 9).value).strip()
    #     # if Host.objects.filter(eth1=ip).count() == 0:
    #     # Host.objects.get(eth1=ip)
    #     try:
    #         Host.objects.get(eth1=ip)
    #     except Host.DoesNotExist:
    #         # print str(ip).strip()
    #         s += 1
    #         node_conf = str(table.cell(i, 5).value).split("/")
    #         ctc = IDC.objects.get(name="亦庄电信")
    #         cnc = IDC.objects.get(name="北京联通")
    #         ip_search = str(ip).split(".")[2]
    #         if len(node_conf) != 1:
    #
    #             # print ip_search, type(ip_search)
    #
    #             rst = Host(eth1=ip,
    #                        node_name=ip,
    #                        internal_ip=ip,
    #                        memory=node_conf[1],
    #                        hard_disk=node_conf[-1],
    #                        cpu=node_conf[0],
    #                        system="CentOS",
    #                        cabinet=table.cell(i, 6).value,
    #                        number=table.cell(i, 1).value,
    #                        server_sn=table.cell(i, 2).value,
    #                        Services_Code=table.cell(i, 3).value,
    #                        server_cabinet_id=table.cell(i, 7).value,
    #                        editor=table.cell(i, 12).value,
    #                        # idc=cnc,
    #                        status=1,
    #                        )
    #
    #         else:
    #             print ip
    #             rst = Host(eth1=ip,
    #                        node_name=ip,
    #                        internal_ip=ip,
    #                        system="CentOS",
    #                        cabinet=table.cell(i, 6).value,
    #                        number=table.cell(i, 1).value,
    #                        server_sn=table.cell(i, 2).value,
    #                        Services_Code=table.cell(i, 3).value,
    #                        editor=table.cell(i, 12).value,
    #                        status=1,
    #                        )
    #             if str(ip_search) == "219":
    #                 rst.idc = cnc
    #             else:
    #                 rst.idc = ctc
    #             rst.save()
    #
    #             # print rst
    #             # rst.save()
    # print s

    return HttpResponse(
        json.dumps({
            "retCode": 200,
            "retMsg": "ok"
        },
                   ensure_ascii=False,
                   indent=4))
コード例 #5
0
ファイル: cmdb_excel.py プロジェクト: andaok/python
def xls_cdn(request):
    """ http监控列表 """
    data = xlrd.open_workbook("/Users/voilet/Documents/cdn.xls")
    cdn_data = data.sheet_by_name(u"cdn")
    cdn_result = cdn_data.nrows
    for s in range(1, cdn_result):
        ip = str(cdn_data.cell(s, 9).value).strip()
        sn = str(cdn_data.cell(s, 4).value).strip()
        idc = str(cdn_data.cell(s, 14).value).strip()
        internal_ip = str(cdn_data.cell(s, 10).value).strip()
        number = str(cdn_data.cell(s, 3).value).strip()
        server_sn = str(cdn_data.cell(s, 18).value).strip()
        Services_Code = str(cdn_data.cell(s, 19).value).strip()
        cpu = str(cdn_data.cell(s, 6).value).strip()
        memory = str(cdn_data.cell(s, 7).value).strip()
        hard_disk = str(cdn_data.cell(s, 8).value).strip()
        cabinet = str(cdn_data.cell(s, 13).value).strip()

        if len(ip) > 0:
            print ip, idc, internal_ip, number, server_sn, Services_Code, cpu, memory, hard_disk, cabinet
            try:
                idc_data = IDC.objects.get(name=idc)
            except:
                uuid = str(cmdb_uuid()).replace("-", "")
                idc_data = IDC(name=idc, pk=uuid, phone=11111111111, linkman=u"曾阳", address=idc)
                idc_data.save()
            try:
                rst = Host.objects.get(eth1=ip)
                rst.idc = idc_data
            except Host.DoesNotExist:
                rst = Host(eth1=ip, idc=idc_data, node_name=ip, internal_ip=internal_ip, system="CentOS", status=1)
            # rst.save()

    # print error_list
    # print len(error_list)
    # s = open("/Users/voilet/test.txt", "r")
    # rst = s.readlines()
    # # print rst
    # result = {}
    # for i in rst:
    #     i = str(i).split()
    #     if len(i) == 3:
    #         ip = i[-1]
    #         idc = i[0]
    #         sn = i[1]
    #         result[sn] = {"idc": idc, "ip": ip}
    #
    #         print sn, idc, ip, "ok"
    #     else:
    #         print i, "error"
    # s.close()
    # s = 0
    # for i in range(1, nrows):
    #     ip = str(table.cell(i, 9).value).strip()
    #     # if Host.objects.filter(eth1=ip).count() == 0:
    #     # Host.objects.get(eth1=ip)
    #     try:
    #         Host.objects.get(eth1=ip)
    #     except Host.DoesNotExist:
    #         # print str(ip).strip()
    #         s += 1
    #         node_conf = str(table.cell(i, 5).value).split("/")
    #         ctc = IDC.objects.get(name="亦庄电信")
    #         cnc = IDC.objects.get(name="北京联通")
    #         ip_search = str(ip).split(".")[2]
    #         if len(node_conf) != 1:
    #
    #             # print ip_search, type(ip_search)
    #
    #             rst = Host(eth1=ip,
    #                        node_name=ip,
    #                        internal_ip=ip,
    #                        memory=node_conf[1],
    #                        hard_disk=node_conf[-1],
    #                        cpu=node_conf[0],
    #                        system="CentOS",
    #                        cabinet=table.cell(i, 6).value,
    #                        number=table.cell(i, 1).value,
    #                        server_sn=table.cell(i, 2).value,
    #                        Services_Code=table.cell(i, 3).value,
    #                        server_cabinet_id=table.cell(i, 7).value,
    #                        editor=table.cell(i, 12).value,
    #                        # idc=cnc,
    #                        status=1,
    #                        )
    #
    #         else:
    #             print ip
    #             rst = Host(eth1=ip,
    #                        node_name=ip,
    #                        internal_ip=ip,
    #                        system="CentOS",
    #                        cabinet=table.cell(i, 6).value,
    #                        number=table.cell(i, 1).value,
    #                        server_sn=table.cell(i, 2).value,
    #                        Services_Code=table.cell(i, 3).value,
    #                        editor=table.cell(i, 12).value,
    #                        status=1,
    #                        )
    #             if str(ip_search) == "219":
    #                 rst.idc = cnc
    #             else:
    #                 rst.idc = ctc
    #             rst.save()
    #
    #             # print rst
    #             # rst.save()
    # print s

    return HttpResponse(json.dumps({"retCode": 200, "retMsg": "ok"}, ensure_ascii=False, indent=4))