Fixes in progress
This commit is contained in:
parent
472ca499e7
commit
3a375c3399
5 changed files with 92 additions and 1 deletions
|
|
@ -25,6 +25,7 @@ import configparser
|
|||
from collections import OrderedDict
|
||||
from importlib import import_module, reload
|
||||
from modules.pastafari2.libraries.progress import load_progress
|
||||
from modules.pastafari2.libraries.load_task import load_db_in_task
|
||||
|
||||
try:
|
||||
import ujson as json
|
||||
|
|
@ -626,9 +627,16 @@ def pastafari2_multiprogress():
|
|||
|
||||
num_servers=task.set_conditions('WHERE parent_id=%s', [task_id]).select_count()
|
||||
|
||||
links=''
|
||||
|
||||
task_process=load_db_in_task(task_id, db)
|
||||
|
||||
if task_process:
|
||||
links=task_process.links
|
||||
|
||||
if arr_task:
|
||||
|
||||
return t.load_template('multiprogress.phtml', title=I18n.lang('pastafari2', 'task_progress', 'Task progress'), path_module='admin_app.pastafari2_dashboard', name_task=arr_task['name_task'], description_task=arr_task['description_task'], task_id=task_id, server=arr_task['server'], num_servers=num_servers)
|
||||
return t.load_template('multiprogress.phtml', title=I18n.lang('pastafari2', 'task_progress', 'Task progress'), path_module='admin_app.pastafari2_dashboard', name_task=arr_task['name_task'], description_task=arr_task['description_task'], task_id=task_id, server=arr_task['server'], num_servers=num_servers, links=links)
|
||||
|
||||
else:
|
||||
|
||||
|
|
|
|||
41
libraries/load_task.py
Normal file
41
libraries/load_task.py
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
from paramecio2.libraries.db.webmodel import WebModel
|
||||
from paramecio2.libraries.db import corefields
|
||||
from paramecio2.libraries.db.extrafields.ipfield import IpField
|
||||
from paramecio2.libraries.db.extrafields.arrayfield import ArrayField
|
||||
from paramecio2.libraries.db.extrafields.parentfield import ParentField
|
||||
from paramecio2.libraries.db.extrafields.datefield import DateField
|
||||
from paramecio2.libraries.db.extrafields.dictfield import DictField
|
||||
from paramecio2.libraries.db.extrafields.jsonfield import JsonValueField
|
||||
from paramecio2.libraries.i18n import I18n
|
||||
import urllib3
|
||||
try:
|
||||
import ujson as json
|
||||
except:
|
||||
import json
|
||||
|
||||
from redis import Redis
|
||||
from rq import Queue
|
||||
import importlib
|
||||
import traceback
|
||||
from modules.pastafari2.models.tasks import Task
|
||||
|
||||
def load_db_in_task(task_id, conn):
|
||||
|
||||
task_model=Task(conn)
|
||||
|
||||
arr_task=task_model.select_a_row(task_id)
|
||||
|
||||
if not arr_task:
|
||||
return False
|
||||
|
||||
ssh_task=importlib.import_module(arr_task['path'])
|
||||
|
||||
server=arr_task['server']
|
||||
remote_user=arr_task['user']
|
||||
remote_password=arr_task['password']
|
||||
private_key=arr_task['ssh_key_priv']
|
||||
password_key=arr_task.get('ssh_key_password', '')
|
||||
|
||||
final_task=ssh_task.ServerTask(server, conn, remote_user=remote_user, remote_password=remote_password, private_key=private_key, password_key=password_key, remote_path='pastafari2', task_id=task_id, data=json.loads(arr_task['data']))
|
||||
|
||||
return final_task
|
||||
|
|
@ -1,11 +1,23 @@
|
|||
from modules.pastafari2.models.tasks import Task, LogTask
|
||||
from flask import request
|
||||
from paramecio2.libraries.i18n import I18n
|
||||
from modules.pastafari2.libraries.load_task import load_db_in_task
|
||||
|
||||
def load_progress(db, t, return_tree='', path_module='admin_app.pastafari2_dashboard'):
|
||||
|
||||
task_id=request.args.get('task_id', '0')
|
||||
|
||||
ssh_task=load_db_in_task(int(task_id), db)
|
||||
|
||||
path_module='admin_app.pastafari2_dashboard'
|
||||
|
||||
if ssh_task:
|
||||
if return_tree=='':
|
||||
return_tree=ssh_task.links
|
||||
if path_module=='admin_app.pastafari2_dashboard':
|
||||
path_module=ssh_task.path_module
|
||||
|
||||
|
||||
position=request.args.get('position', '0')
|
||||
|
||||
task=Task(db)
|
||||
|
|
|
|||
28
media/css/popup.css
Normal file
28
media/css/popup.css
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
|
||||
.title_popup {
|
||||
|
||||
margin-top:0px;
|
||||
border-radius:0px;
|
||||
position: relative;
|
||||
|
||||
}
|
||||
|
||||
.cont_popup {
|
||||
|
||||
margin-bottom:0px;
|
||||
|
||||
}
|
||||
|
||||
.close_icon {
|
||||
|
||||
color: #fff;
|
||||
position:absolute;
|
||||
right:5px;
|
||||
|
||||
}
|
||||
|
||||
a.close_icon:hover {
|
||||
|
||||
color: #ccc;
|
||||
|
||||
}
|
||||
|
|
@ -5,6 +5,7 @@
|
|||
</%block>
|
||||
<h2>${name_task}</h2>
|
||||
<p>${description_task}</p>
|
||||
${links|n}
|
||||
<hr />
|
||||
<p>${lang('pastafari2', 'num_servers', 'Number of servers')}: <span id="num_servers">${num_servers}</span></p>
|
||||
<p>${lang('pastafari2', 'completed_tasks', 'Completed tasks')}: <span id="num_completed">0</span></p>
|
||||
|
|
@ -19,6 +20,7 @@
|
|||
<div id="finished" style="display:none;">
|
||||
<p><strong>All tasks were finished.</strong></p>
|
||||
</div>
|
||||
${links|n}
|
||||
<%block name="go_back_bottom">
|
||||
<p><a href="${url_for('.pastafari2_dashboard')}">${lang('pastafari2', 'servers', 'Servers')}</a> >> ${lang('pastafari2', 'task_progress', 'Task progress')}</p>
|
||||
</%block>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue