예제 #1
0
def newTask():
    form = NewTaskForm()
    form.delete.data = 0
    if request.method == 'POST':

        if request.form['finger']:
            task = Task.get(finger=request.form['finger'])
        else:
            task = Task()
            task.finger = get_finger()
            task.count = 0
        task.dataType = request.form['dataType']
        task.name = request.form['name']
        task.dir = request.form['dir']
        task.username = request.form['username']
        task.password = request.form['password']
        task.port = request.form['port']
        task.tables = request.form['tables']
        task.target = request.form['target']
        if 'delete' in request.form:
            task.d = 1
        else:
            task.d = 0
        task.save()
        return render_template('auth/respond.json', state="success")
    return render_template('fragment/new_task.html', form=form)
예제 #2
0
def run(file):
    list = file.split('.')
    id = int(list[-1])
    #file_name = file.split('/')[-1]
    new_file = file[:-(len(list[-1]) + 1)]
    os.rename(file, new_file)
    pass
    #解析任务
    db.connect()
    try:
        task = Task.get(Task.finger == id)
    except:
        LOGR.debug('找不到对应任务:' + str(id))
        task = Task()
        task.finger = id
        task.name = ''
        task.dataType = '0'
        task.dir = ''
        task.username = ''
        task.password = ''
        task.target = ''
        task.port = ''
        task.tables = ''
        task.count = 0
        task.save()
        LOGR.info('发现新任务:' + str(id))
        exit(-1)
    #增加运行次数
    task.count = task.count + 1
    task.save()
    db.close()
    LOGR.info('开始任务:' + str(id) + ":" + task.name)
    result = putData(task, new_file)
    os.remove(new_file)
    if result:
        LOGR.info('任务执行完成:' + file)
    else:
        LOGR.info('任务执行失败:' + file)