Fixes in dashboard, added distro field for serverdbtask table

This commit is contained in:
Antonio de la Rosa 2024-02-09 02:04:08 +01:00
parent 7a0b0abbdb
commit 8a0354b85b
5 changed files with 28 additions and 3 deletions

View file

@ -62,8 +62,10 @@ def pastafari2_dashboard():
for module in pastafari_paths: for module in pastafari_paths:
select_task=scandir(module, config_parser, select_task, 'tasks') select_task=scandir(module, config_parser, select_task, 'tasks')
task_path=request.args.get('task_path', '')
return t.load_template('dash_pastafari.phtml', title=I18n.lang('pastafari2', 'servers_dashboard', 'Servers Dashboard'), path_module='admin_app.pastafari2_dashboard', select_task=select_task) return t.load_template('dash_pastafari.phtml', title=I18n.lang('pastafari2', 'servers_dashboard', 'Servers Dashboard'), path_module='admin_app.pastafari2_dashboard', select_task=select_task, task_path=task_path)
@admin_app.route('/pastafari2/settings/') @admin_app.route('/pastafari2/settings/')
def pastafari2_settings(): def pastafari2_settings():

View file

@ -494,6 +494,7 @@ class Task:
#{'result': 1, 'message': {'username': 'hosting', 'uid': 1002, 'gid': 1002, 'home': '/srv/sites'}, 'error': 0, 'progress': 100, 'task_id': 483, 'server': '192.168.122.55'} #{'result': 1, 'message': {'username': 'hosting', 'uid': 1002, 'gid': 1002, 'home': '/srv/sites'}, 'error': 0, 'progress': 100, 'task_id': 483, 'server': '192.168.122.55'}
#json_code['message']=json.dumps(json_code['message']) #json_code['message']=json.dumps(json_code['message'])
#print(json_code) #print(json_code)
json_code['message']=json.loads(json_code['message'])
self.resulttask.insert(json_code) self.resulttask.insert(json_code)
#print(self.resulttask.show_errors()) #print(self.resulttask.show_errors())
else: else:

View file

@ -45,6 +45,7 @@ class ServerDbTask(Server):
self.fields['group'].required=False self.fields['group'].required=False
self.register(corefields.ForeignKeyField('group_id', ServerGroup(connection), 11, False, 'id', 'group', select_fields=[])) self.register(corefields.ForeignKeyField('group_id', ServerGroup(connection), 11, False, 'id', 'group', select_fields=[]))
self.register(corefields.IntegerField('ssh_port'), True) self.register(corefields.IntegerField('ssh_port'), True)
self.register(corefields.CharField('distro'))
class UpdateServerScripts(WebModel): class UpdateServerScripts(WebModel):

View file

@ -1,5 +1,7 @@
from modules.pastafari2.libraries.task import Task from modules.pastafari2.libraries.task import Task
from modules.pastafari2.models.pastafari2 import ServerDbTask from modules.pastafari2.models.pastafari2 import ServerDbTask
from modules.pastafari2.models.tasks import ResultTask
import json
class ServerTask(Task): class ServerTask(Task):
@ -35,12 +37,22 @@ class ServerTask(Task):
def post_task(self): def post_task(self):
distro=''
resulttask=ResultTask(self.connection)
arr_result=resulttask.set_conditions('WHERE task_id=%s', [self.id]).select_a_row_where()
if arr_result:
#r=json.loads(arr_result['message'])
distro=json.loads(arr_result['message'])['distro']
server=ServerDbTask(self.connection) server=ServerDbTask(self.connection)
server.safe_query() server.safe_query()
#'subdomain_id': self.data['subdomain_id'] #'subdomain_id': self.data['subdomain_id']
server.insert({'hostname': self.data['hostname'], 'ip': self.data['ip'], 'group_id': self.data['group_id'], 'ssh_port': self.port}) server.insert({'hostname': self.data['hostname'], 'ip': self.data['ip'], 'group_id': self.data['group_id'], 'ssh_port': self.port, 'distro': distro})
return True return True

View file

@ -22,7 +22,16 @@ form_set=[]
% if len(value)>=2: % if len(value)>=2:
% for script in enumerate(value, 1): % for script in enumerate(value, 1):
%if script[1][2]==1: %if script[1][2]==1:
<option value="${script[1][1]}"> <%
checked=''
if script[1][1]==task_path:
checked='selected'
%>
<option value="${script[1][1]}" ${checked}>
${script[1][0].split(',')[0].strip()} ${script[1][0].split(',')[0].strip()}
<% <%
form_set.append('<input type="hidden" name="'+script[1][1]+'" id="'+script[1][1].replace('/', '_')+'_form" value="'+str(script[1][3])+'">') form_set.append('<input type="hidden" name="'+script[1][1]+'" id="'+script[1][1].replace('/', '_')+'_form" value="'+str(script[1][3])+'">')