Fixes in delete php version

This commit is contained in:
Antonio de la Rosa 2025-05-18 02:03:06 +02:00
parent 4bfd948989
commit e403599bf5
2 changed files with 76 additions and 8 deletions

View file

@ -1,6 +1,6 @@
from modules.phpserver import php_app
from settings import config
from flask import g, url_for, request, session, make_response
from flask import g, url_for, request, session, make_response, abort
from paramecio2.libraries.generate_admin_class import GenerateAdminClass
from paramecio2.libraries.lists import SimpleList
from paramecio2.libraries.i18n import I18n, PGetText
@ -18,6 +18,7 @@ from modules.pastafari2.libraries.configtask import config_task
from modules.pastafari2.libraries.progress import load_progress
from modules.pastafari2.models.tasks import Task as SSHTask
from modules.pastafari2.libraries.configtask import config_task
from modules.pastafari2.libraries.progress import load_progress
import os
try:
@ -38,12 +39,12 @@ t.env.directories=admin_t.env.directories
t.env.directories.insert(1, os.path.dirname(__file__).replace('/admin', '')+'/templates/admin')
t.env.directories.insert(2, '../pastafari2/templates/admin')
@php_app.route('/pastafari2/php/servers')
@php_app.route('/phpserver/servers')
def php_dashboard():
return t.load_template('phpservers.phtml', title=_('PHP Servers'), path_module='php_app.php_dashboard')
@php_app.route('/get_phpservers', methods=['POST'])
@php_app.route('/phpserver/get_phpservers', methods=['POST'])
def get_phpservers():
@ -80,6 +81,73 @@ def options_options(row_id, row):
#
#arr_options.append('<a href="{}">{}</a>'.format(url_for('admin_app.ports', dbservermariadb_id=row_id), I18n.lang('dbservermariadb', 'http_ports', 'HTTP Ports')))
arr_options.append('<a href="{}">{}</a>'.format("", _('Edit')))
arr_options.append('<a href="{}">{}</a>'.format("", _('Delete')))
arr_options.append('<a href="{}">{}</a>'.format(url_for('php_app.delete_php', php_server_id=row_id), _('Delete')))
return '<br />'.join(arr_options)
@php_app.route('/phpserver/delete_php/<int:php_server_id>')
def delete_php(php_server_id):
db=g.connection
with db.query('select serverdbtask.hostname, phpserver.version from serverdbtask, phpserver where phpserver.server_id=serverdbtask.id') as cursor:
arr_server=cursor.fetchone()
if arr_server:
return t.load_template('del_phpserver.phtml', title=_('Remove PHP FPM server'), path_module='php_app.php_dashboard', php_server_id=php_server_id, domain=arr_server['hostname'])
abort(404)
@php_app.route('/phpserver/delete_php_task/<int:php_server_id>', methods=['POST'])
def delete_php_task(php_server_id):
db=g.connection
error=1
task_id=0
error_form={}
with db.query('select serverdbtask.hostname, serverdbtask.ip, serverdbtask.ssh_port, phpserver.version from serverdbtask, phpserver where phpserver.server_id=serverdbtask.id') as cursor:
arr_server=cursor.fetchone()
if arr_server:
sshtask=SSHTask(db)
#user=config_task.remote_user
ssh_key_priv='./ssh/id_rsa'
#run_task(self, server, path, name_task, codename_task, description_task, data={}, user='', password='', where_sql_server='', url='', ssh_key_priv='', ssh_key_password='', send_task=True)
# user=user, password='', where_sql_server=where_sql, ssh_key_priv=ssh_key_priv, url='', data=data, send_task=True
#root_dir='/home/'+username+'/sites/'+domain
#ftp_user=arr_user['user']
print('pep')
if not sshtask.run_task(arr_server['ip'], 'modules.phpserver.tasks.php.php.delete_php', 'Delete PHP server', 'delete_phpserver', 'Task for delete php-fpm server from server', {'version': arr_server['version'], 'php_server_id': php_server_id}, config_task.remote_user, '', '', url_for('php_app.php_dashboard'), ssh_key_priv=ssh_key_priv, ssh_key_password='', send_task=True, ssh_port=arr_server['ssh_port']):
error=1
else:
error=0
task_id=sshtask.task_id
return {'error': error, 'error_form': error_form, 'task_id': task_id}
@php_app.route('/phpserver/progress/<int:php_server_id>/')
def php_progress(php_server_id):
db=g.connection
#Webservers list >> Web users >> Virtual Hosts
#cursor=db.query('select `usersftp`.`id` from `usersftp`')
return_tree='<p><a href="'+url_for('php_app.php_dashboard')+'">'+_('PHP servers list')+'</a></p>'
return load_progress(db, t, return_tree=return_tree, path_module='php_app.php_dashboard')

View file

@ -30,7 +30,7 @@ class ServerTask(Task):
self.codename_task='php-fpm'
self.files=[['modules/php/scripts/install_php.py', 0o700]]
self.files=[['modules/phpserver/scripts/install_php.py', 0o700]]
# Format first array element is command with the interpreter, the task is agnostic, the files in os directory. The commands are setted with 750 permission.
# First element is the file, next elements are the arguments
@ -41,7 +41,7 @@ class ServerTask(Task):
self.delete_files=[]
self.delete_directories=['modules/php/scripts/']
self.delete_directories=['modules/phpserver/scripts/']
#self.task=Task(conn)
@ -49,7 +49,7 @@ class ServerTask(Task):
self.version='1.0'
self.links='<p><a href="{}">{}</a></p>'.format(make_url('pastafari2/php/servers'), _('PHP-FPM servers list'))
self.links='<p><a href="{}">{}</a></p>'.format(make_url('phpserver/servers'), _('PHP-FPM servers list'))
self.arr_form=OrderedDict()
@ -113,7 +113,7 @@ class ServerTask(Task):
if 'version' in self.data:
version=self.data['version']
self.commands_to_execute=[['/home/{}/pythonenv/bin/python3 -u modules/php/scripts/install_php.py'.format(config_task.remote_user), '--version={}'.format(version)]]
self.commands_to_execute=[['/home/{}/pythonenv/bin/python3 -u modules/phpserver/scripts/install_php.py'.format(config_task.remote_user), '--version={}'.format(version)]]
#self.commands_to_execute=[['/home/{}/pythonenv/bin/python3 -u modules/apache/scripts/install_apache.py'.format(config_task.remote_user), '']]
return True