Fixes in maridb

This commit is contained in:
absurdo 2023-07-01 01:03:30 +02:00
parent a6455547a2
commit b950f48245
5 changed files with 348 additions and 1 deletions

View file

@ -15,6 +15,8 @@ from paramecio2.libraries.db.coreforms import HiddenForm, SelectForm, TextForm
from paramecio2.libraries.slugify import slugify
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
import os
try:
@ -79,7 +81,7 @@ def options_options(row_id, row):
#arr_options=['<a href="{}">{}</a>'.format(url_for('admin_app.virtualhost', dbservermariadb_id=row_id), I18n.lang('dbservermariadb', 'websites', 'Websites'))]
#
#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("", I18n.lang('dbservermariadb', 'edit', 'Edit')))
arr_options.append('<a href="{}">{}</a>'.format(url_for('admin_app.edit_mariadbserver', mariadbserver_id=row_id), I18n.lang('dbservermariadb', 'edit', 'Edit')))
arr_options.append('<a href="{}">{}</a>'.format(url_for('admin_app.delete_mariadbserver', mariadbserver_id=row_id), I18n.lang('dbservermariadb', 'delete', 'Delete')))
return '<br />'.join(arr_options)
@ -115,3 +117,72 @@ def delete_mariadbserver_db(mariadbserver_id):
return {'error': error}
@admin_app.route('/mariadbservers/edit/<int:mariadbserver_id>', methods=['GET', 'POST'])
def edit_mariadbserver(mariadbserver_id):
db=g.connection
mariadbserver=DbServerMariaDb(db)
arr_mariadbserver=mariadbserver.select_a_row(mariadbserver_id)
if arr_mariadbserver:
return t.load_template('edit_mariadbserver.phtml', title=I18n.lang('mariadbservers', 'edit_mariadbserver', 'Edit MariaDb server'), path_module='admin_app.mariadbservers', mariadbserver_id=arr_mariadbserver['id'], domain=arr_mariadbserver['server_id'], access_ip=arr_mariadbserver['access_ip'])
else:
return ""
@admin_app.route('/mariadbservers/task/<int:mariadbserver_id>', methods=['GET', 'POST'])
def edit_mariadbserver_task(mariadbserver_id):
db=g.connection
access_ip=request.form.get('access_ip').strip()
error=0
error_form={}
serverdb=DbServerMariaDb(db)
server=ServerDbTask(db)
arr_serverdb=serverdb.select_a_row(mariadbserver_id, [], True)
if access_ip=='':
access_ip='127.0.0.1'
if arr_serverdb:
arr_server=server.select_a_row(arr_serverdb['server_id'])
print(arr_serverdb['server_id'])
access_ip=serverdb.fields['access_ip'].check(access_ip)
if not access_ip:
error=1
error_form['#access_ip_error']=I18n.lang('mariadb', 'error_wrong_ip_format', 'Error: wrong ip format')
# modules/mariadb/tasks/change_ip_mysql.py
if not error:
sshtask=SSHTask(db)
#user=config_task.remote_user
ssh_key_priv='./ssh/id_rsa'
if not sshtask.run_task(arr_server['ip'], 'modules.mariadb.tasks.change_ip_mysql', 'Edit mariadb server', 'edit_mariadb_server', 'Task for edit a MariaDB server', {'ip': access_ip, 'mariadb_id': mariadbserver_id}, config_task.remote_user, '', '', url_for('admin_app.edit_mariadbserver', mariadbserver_id=mariadbserver_id), ssh_key_priv):
error=1
task_id=sshtask.task_id
return {'error': error, 'error_form': error_form, 'task_id': task_id}
else:
error_form['#access_ip_error']=I18n.lang('mariadb', 'error_cannot_set_the_task', 'Error: cannot set the task')
error=1
return {'error': error, 'error_form': error_form}