Added delete server support

This commit is contained in:
Antonio de la Rosa 2022-02-11 20:32:21 +01:00
parent fb432e9c98
commit 83f95ffcb4
2 changed files with 65 additions and 8 deletions

View file

@ -15,7 +15,7 @@ from paramecio2.libraries.formsutils import show_form
from modules.pastafari2.libraries.task import Task as SSHTask from modules.pastafari2.libraries.task import Task as SSHTask
from modules.pastafari2.models.tasks import Task, LogTask from modules.pastafari2.models.tasks import Task, LogTask
from modules.pastafari2.libraries.configtask import config_task from modules.pastafari2.libraries.configtask import config_task
from modules.pastafari2.models.pastafari2 import ServerGroup from modules.pastafari2.models.pastafari2 import ServerGroup, ServerDbTask
from pathlib import Path from pathlib import Path
import paramiko import paramiko
import socket import socket
@ -408,7 +408,7 @@ def options_options(row_id, row):
arr_options=['<a href="{}">{}</a>'.format("", I18n.lang('pastafari2', 'edit', 'Edit'))] arr_options=['<a href="{}">{}</a>'.format("", I18n.lang('pastafari2', 'edit', 'Edit'))]
#arr_options.append('<a href="{}">{}</a>'.format("", I18n.lang('pastafari2', 'make_task', 'Make task'))) #arr_options.append('<a href="{}">{}</a>'.format("", I18n.lang('pastafari2', 'make_task', 'Make task')))
arr_options.append('<a href="{}">{}</a>'.format("", I18n.lang('pastafari2', 'delete', 'Delete'))) arr_options.append('<a href="{}">{}</a>'.format(url_for('admin_app.pastafari2_delete_server', server_id=row_id), I18n.lang('pastafari2', 'delete', 'Delete')))
return '<br />'.join(arr_options) return '<br />'.join(arr_options)
@ -530,10 +530,6 @@ def pastafari2_get_multiprogress():
final_str=",".join(['%s']*len(final_ids)) final_str=",".join(['%s']*len(final_ids))
#print(final_str)
#for i in final_ids:
task=Task(db) task=Task(db)
logtask=LogTask(db) logtask=LogTask(db)
@ -549,5 +545,36 @@ def pastafari2_get_multiprogress():
@admin_app.route('/pastafari2/delete_server/') @admin_app.route('/pastafari2/delete_server/')
def pastafari2_delete_server(): def pastafari2_delete_server():
return t.load_template('delete_server.phtml', title=I18n.lang('pastafari2', 'delete_server', 'Delete server'), path_module='admin_app.pastafari2_dashboard') db=g.connection
server=ServerDbTask(db)
server_id=request.args.get('server_id', '0')
arr_server=server.select_a_row(server_id)
if arr_server:
return t.load_template('delete_server.phtml', title=I18n.lang('pastafari2', 'delete_server', 'Delete server'), path_module='admin_app.pastafari2_dashboard', server_id=server_id, server=arr_server)
else:
return ""
@admin_app.route('/pastafari2/delete_server_db/', methods=['POST'])
def pastafari2_delete_server_db():
db=g.connection
error=0
server=ServerDbTask(db)
server_id=request.form.get('server_id', '0')
server.set_conditions('WHERE id=%s', [server_id]).delete()
return {'error': error}

View file

@ -0,0 +1,30 @@
<%inherit file="dashboard.phtml"/>
<%block name="content">
<p><a href="${url_for('.pastafari2_dashboard')}">${lang('pastafari2', 'servers', 'Servers')}</a> &gt;&gt; ${lang('pastafari2', 'delete_server', 'Delete server')}</p>
<div class="form">
<form method="post" id="delete_server">
<p>${server['hostname']}</p>
<input type="hidden" name="server_id" value="${server_id}" />
<p><input type="submit" value="${lang('pastafari2', 'delete_server_question', 'Confirm delete server?')}" /></p>
</form>
</div>
<p><a href="${url_for('.pastafari2_dashboard')}">${lang('pastafari2', 'servers', 'Servers')}</a> &gt;&gt; ${lang('pastafari2', 'delete_server', 'Delete server')}</p>
</%block>
<%block name="jscript_block">
<script language="Javascript" src="${make_media_url('js/jsutils/posting2.js', 'monit')}"></script>
<script>
var options={url: "${url_for('admin_app.pastafari2_delete_server_db')}", loading: '#layer_loading', pre_callback: function (data) {
//alert('This action overwrite all ssh keys');
}, success: function (data) {
location.href="${url_for('admin_app.pastafari2_dashboard')}";
}
};
$('#delete_server').sendPost(options);
</script>
</%block>