Пример #1
0
def runCase(ismail):
    conf = configerData.configerData()
    runcase = conf.getItemData("configerinfor","runcase").split(",")
    environment = conf.getItemData("configerinfor","eviorment")
    scheduleList = []
    for i in runcase:
        if(i!=""):
            scheduleList.append(int(i))
    print scheduleList
    schedulePList = getbatchrunList(scheduleList)
    print schedulePList
    reportName = u"定时接口批量执行报告"
    starttime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
    isreport = conf.getItemData("configerinfor", "isreport")

    batchResult = batchstart.start_main(schedulePList,environment,isreport,"")
    successNum = batchResult["sNum"]
    faileNum = batchResult["fNum"]
    errorNum = batchResult["eNum"]
    totalNum = successNum+faileNum+errorNum
    if(isreport=='Y'):
        reportPath = "\\"+batchResult["reportPath"]
        print reportPath
        exeuser = ""
        endtime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
        print reportName,starttime,endtime,totalNum,successNum,faileNum,errorNum,exeuser,reportPath
        sql = "insert into main_reports(report_runName,startTime,endTime,totalNum,successNum,failNum,errorNum,executor,environment,report_localName)" \
              "values ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')"%(reportName,starttime,endtime,totalNum,successNum,faileNum,errorNum,exeuser,environment,reportPath)
        mulSQL.mulSql().insertData(sql)
    else:
        pass
    if(ismail=="Y"):
        getEamilData(isreport,successNum,faileNum,errorNum)
Пример #2
0
def getCofigerData():
    conf = configerData.configerData()
    isreport = conf.getItemData("configerinfor","isreport")
    ismail = conf.getItemData("configerinfor","ismail")
    sechdel_time = conf.getItemData("configerinfor", "sechdel_time")
    everyRounder = sechdel_time.split("&")[0]
    localTime = sechdel_time.split("&")[1]
    print isreport,ismail
    return isreport,ismail,everyRounder,localTime
Пример #3
0
def getEamilData(isreport,successNum,faileNum,errorNum):
    conf = configerData.configerData()
    senderlist = conf.getItemData("configerinfor", "senderlist").split(",")
    senderList = []
    for i in senderlist:
        if (i != ""):
            senderList.append(i)
    print senderList
    subject = '定时接口运行报告'
    content = '接口运行详情见附件'
    mailsender = sendmail_exchange.MailSender()
    if isreport=="Y":
        sql = "select report_localName from main_reports where id=(select MAX(id) from main_reports )"
        reportname = mulSQL.mulSql().selectData(sql)
        print str(reportname[0])
        reportpath = os.path.dirname(os.path.dirname(__file__)) + "\\report\\"+ str(reportname[0])
    else:
        reportpath=""
    mailsender.sendMail(senderList, subject, content,True,
                        reportpath,successNum,faileNum,errorNum,'normal')
Пример #4
0
            evirment = i["evirment"]
            reporter = i["reporter"]
            everyRounder = i["timeDay"]
            localTime = str(i["timeTime"])
            if everyRounder == "每天":
                schedule.every().day.at(localTime).do(self.runschedule, batchrun_list, evirment, projectname, reporter)
            elif everyRounder == "每周":
                schedule.every().monday.at(localTime).do(self.runschedule, batchrun_list, evirment, projectname, reporter)
            elif everyRounder == "每月":
                schedule.every(28).to(31).at(localTime).do(self.runschedule, batchrun_list, evirment, projectname,
                                                             reporter)
if __name__ == '__main__':
    runcase = runProSchdeule()
    runcase.run_task()
    while True:
        flag1 = configerData.configerData().getItemData("scheduleChanged", "projectflag")
        flag2 = configerData.configerData().getItemData("scheduleChanged", "caseflag")
        #print flag
        if flag1 == "true" or flag2=="true":
            for j in schedule.jobs:
                schedule.cancel_job(j)
            runcase.run_task()
            configerData.configerData().setData("scheduleChanged", "projectflag", "false")
            configerData.configerData().setData("scheduleChanged", "caseflag", "false")
            #print schedule.jobs
        else:
            #print schedule.jobs
            pass
        schedule.run_pending()

Пример #5
0
def job2_task(ismail):
    threading.Thread(target=runCase, args=(ismail,)).start()
def runSchedule():
        schedule.every(10).seconds.do(job1_task)
        #schedule.every(3).minutes.do(job1_task)
        isreport, ismail,everyRounder,localTime = getCofigerData()
        if everyRounder =="每天":
            schedule.every().day.at(localTime).do(job2_task,ismail)
        elif everyRounder =="每周":
            schedule.every().monday.at(localTime).do(job2_task,ismail)
        elif everyRounder =="每月":
            schedule.every(28).to(31).at(localTime).do(job2_task,ismail)
if __name__ == '__main__':
    runSchedule()
    while True:
        flag = configerData.configerData().getItemData("scheduleChanged", "caseflag")
        if flag == "true":
            for j in schedule.jobs:
                schedule.cancel_job(j)
            runSchedule()
            configerData.configerData().setData("scheduleChanged", "caseflag", "false")
        else:
            pass
        schedule.run_pending()