Bugs fix
pull/19/head
Aidaho12 2018-05-08 15:12:16 +06:00
parent 9b76d5e21e
commit 89b0ec5fbe
14 changed files with 284 additions and 134 deletions

View File

@ -62,7 +62,7 @@ if form.getvalue('serv') is not None and form.getvalue('config') is not None:
if master[0] != None: if master[0] != None:
funct.upload_and_restart(master[0], configver, just_save=save) funct.upload_and_restart(master[0], configver, just_save=save)
stderr, error = funct.upload_and_restart(serv, configver, just_save=save) stderr = funct.upload_and_restart(serv, configver, just_save=save)
aftersave = 1 aftersave = 1

View File

@ -144,34 +144,40 @@ def ssh_connect(serv, **kwargs):
return False return False
else: else:
return 'Authentication failed, please verify your credentials' return 'Authentication failed, please verify your credentials'
pass
except paramiko.SSHException as sshException: except paramiko.SSHException as sshException:
if kwargs.get('check'): if kwargs.get('check'):
print('<div class="alert alert-danger">Unable to establish SSH connection: %s </div>' % sshException) print('<div class="alert alert-danger">Unable to establish SSH connection: %s </div>' % sshException)
return False return False
else: else:
return 'Unable to establish SSH connection: %s ' % sshException return 'Unable to establish SSH connection: %s ' % sshException
pass
except paramiko.BadHostKeyException as badHostKeyException: except paramiko.BadHostKeyException as badHostKeyException:
if kwargs.get('check'): if kwargs.get('check'):
print('<div class="alert alert-danger">Unable to verify server\'s host key: %s </div>' % badHostKeyException) print('<div class="alert alert-danger">Unable to verify server\'s host key: %s </div>' % badHostKeyException)
return False return False
else: else:
return 'Unable to verify server\'s host key: %s ' % badHostKeyException return 'Unable to verify server\'s host key: %s ' % badHostKeyException
pass
except Exception as e: except Exception as e:
if e.args[1] == "No such file or directory": if e.args[1] == "No such file or directory":
if kwargs.get('check'): if kwargs.get('check'):
print('<div class="alert alert-danger">{}. Check ssh key</div>'.format(e.args[1])) print('<div class="alert alert-danger">{}. Check ssh key</div>'.format(e.args[1]))
else: else:
return '{}. Check ssh key'.format(e.args[1]) return '{}. Check ssh key'.format(e.args[1])
pass
elif e.args[1] == "Invalid argument": elif e.args[1] == "Invalid argument":
if kwargs.get('check'): if kwargs.get('check'):
print('<div class="alert alert-danger">Check the IP of the new server</div>') print('<div class="alert alert-danger">Check the IP of the new server</div>')
else: else:
error = 'Check the IP of the new server' error = 'Check the IP of the new server'
pass
else: else:
if kwargs.get('check'): if kwargs.get('check'):
print('<div class="alert alert-danger">{}</div>'.format(e.args[1])) print('<div class="alert alert-danger">{}</div>'.format(e.args[1]))
else: else:
error = e.args[1] error = e.args[1]
pass
if kwargs.get('check'): if kwargs.get('check'):
return False return False
else: else:
@ -372,9 +378,9 @@ def show_log(stdout):
for line in stdout: for line in stdout:
i = i + 1 i = i + 1
if i % 2 == 0: if i % 2 == 0:
print('<div class="line3">' + line + '</div>') print('<div class="line3">' + escape_html(line) + '</div>')
else: else:
print('<div class="line">' + line + '</div>') print('<div class="line">' + escape_html(line) + '</div>')
def show_ip(stdout): def show_ip(stdout):
for line in stdout: for line in stdout:
@ -418,6 +424,11 @@ def ssh_command(serv, commands, **kwargs):
print('<div style="margin: -10px;">'+stdout.read().decode(encoding='UTF-8')+'</div>') print('<div style="margin: -10px;">'+stdout.read().decode(encoding='UTF-8')+'</div>')
print(stderr.read().decode(encoding='UTF-8')) print(stderr.read().decode(encoding='UTF-8'))
try:
ssh.close() ssh.close()
except:
print(ssh)
pass
def escape_html(text):
return cgi.escape(text, quote=True)

View File

@ -120,12 +120,12 @@ def add_server(hostname, ip, group, typeip, enable, master):
try: try:
cur.execute(sql) cur.execute(sql)
con.commit() con.commit()
return True
except sqltool.Error as e: except sqltool.Error as e:
print('<span class="alert alert-danger" id="error">An error occurred: ' + e.args[0] + ' <a title="Close" id="errorMess"><b>X</b></a></span>') print('<span class="alert alert-danger" id="error">An error occurred: ' + e.args[0] + ' <a title="Close" id="errorMess"><b>X</b></a></span>')
con.rollback() con.rollback()
return False return False
else:
return True
cur.close() cur.close()
con.close() con.close()
@ -220,29 +220,12 @@ def select_user_name_group(id):
return group return group
cur.close() cur.close()
con.close() con.close()
def get_groups_select(id, **kwargs):
print('<select class="multiselect" id="%s" name="%s">' % (id, id))
print('<option disabled selected>Choose group</option>')
GROUPS = select_groups()
selected = ""
print(kwargs.get('selected'))
for group in GROUPS:
if kwargs.get('selected'):
selected1 = kwargs.get('selected')
selected1 = int(selected1)
if selected1 == group[0]:
selected = 'selected'
else:
selected = ""
print('<option value="%s" %s>%s</option>' % (group[0], selected, group[1]))
print('</select>')
def select_servers(**kwargs): def select_servers(**kwargs):
con, cur = create_db.get_cur() con, cur = create_db.get_cur()
sql = """select * from servers where enable = '1' ORDER BY groups """ sql = """select * from servers where enable = '1' ORDER BY groups """
if kwargs.get("server") is not None: if kwargs.get("server") is not None:
sql = """select * from servers where hostname='%s' """ % kwargs.get("server") sql = """select * from servers where ip='%s' """ % kwargs.get("server")
if kwargs.get("full") is not None: if kwargs.get("full") is not None:
sql = """select * from servers ORDER BY groups """ sql = """select * from servers ORDER BY groups """
if kwargs.get("get_master_servers") is not None: if kwargs.get("get_master_servers") is not None:
@ -445,85 +428,40 @@ def update_ssh(enable, username, password):
cur.close() cur.close()
con.close() con.close()
def show_update_servers():
SERVERS = select_servers()
print('<tr class="overviewHead">'
'<td class="padding10">Hostname</td>'
'<td>IP</td>'
'<td>Group</td>'
'<td></td>'
'</tr>')
for server in SERVERS:
print('<tr id="server-%s">' % server[0])
print('<td class="padding10 first-collumn"><input type="text" id="server-%s" value="%s" class="form-control"></td>' % (server[0], server[1]))
print('<td><input type="text" id="descript-%s" value="%s" class="form-control"></td>' % (server[0], server[2]))
print('<td>')
get_groups_select("123", selected=server[3])
print('</td>')
print('<td>')
get_enable_checkbox(server[0])
print('</td>')
print('<td>')
get_type_ip_checkbox(server[0])
print('</td>')
print('<td><a class="delete" onclick="removeServer(%s)" style="cursor: pointer;"></a></td>' % server[0])
print('</tr>')
def show_update_user(user): def show_update_user(user):
USERS = select_users(user=user) from jinja2 import Environment, FileSystemLoader
for users in USERS: env = Environment(loader=FileSystemLoader('templates/ajax'))
print('<tr id="user-%s">' % users[0]) template = env.get_template('/new_user.html')
print('<td class="padding10 first-collumn"><input type="text" id="login-%s" value="%s" class="form-control"></td>' % (users[0], users[1]))
print('<td><input type="password" id="password-%s" value="%s" class="form-control"></td>' % (users[0], users[3])) print('Content-type: text/html\n')
print('<td><input type="text" id="email-%s" value="%s" class="form-control"></td>' % (users[0], users[2]))
print('<td>') output_from_parsed_template = template.render(users = select_users(user=user),
need_id_role = "role-%s" % users[0] groups = select_groups(),
get_roles_select(need_id_role, selected=users[4]) roles = select_roles())
print('</td>') print(output_from_parsed_template)
print('<td>')
need_id_group = "usergroup-%s" % users[0]
get_groups_select(need_id_group, selected=users[5])
print('</td>')
print('<td><a class="delete" onclick="removeUser(%s)" style="cursor: pointer;"></a></td>' % users[0])
print('</tr>')
def show_update_server(server): def show_update_server(server):
SERVERS = select_servers(server=server) from jinja2 import Environment, FileSystemLoader
for server in SERVERS: env = Environment(loader=FileSystemLoader('templates/ajax/'))
print('<tr id="server-%s">' % server[0]) template = env.get_template('/new_server.html')
print('<td class="padding10 first-collumn"><input type="text" id="hostname-%s" value="%s" class="form-control"></td>' % (server[0], server[1]))
print('<td><input type="text" id="ip-%s" value="%s" class="form-control"></td>' % (server[0], server[2])) print('Content-type: text/html\n')
print('<td>')
need_id_group = "servergroup-%s" % server[0] output_from_parsed_template = template.render(groups = select_groups(),
get_groups_select(need_id_group, selected=server[3]) servers = select_servers(server=server),
print('</td>') roles = select_roles(),
print('<td>') masters = select_servers(get_master_servers=1))
get_enable_checkbox(server[0]) print(output_from_parsed_template)
print('</td>')
print('<td>')
get_type_ip_checkbox(server[0])
print('</td>')
print('<td><select id="slavefor-%s"><option value="0" selected>Not slave</option>' % server[0])
MASTERS = select_servers(get_master_servers=1)
for master in MASTERS:
if master[0] == server[6]:
selected = "selected"
else:
selected = ""
print('<option value="%s" %s>%s</option>' % (master[0], selected, master[1]))
print('</select></td>')
print('<td><a class="delete" onclick="removeServer(%s)" style="cursor: pointer;"></a></td>' % server[0])
print('</tr>')
def show_update_group(group): def show_update_group(group):
GROUPS = select_groups(group=group) from jinja2 import Environment, FileSystemLoader
for group in GROUPS: env = Environment(loader=FileSystemLoader('templates/ajax/'))
print('<tr id="group-%s">' % group[0]) template = env.get_template('/new_group.html')
print('<td class="padding10 first-collumn"><input type="text" name="name-%s" value="%s" class="form-control"></td>' % (group[0], group[1]))
print('<td><input type="text" name="descript-%s" value="%s" class="form-control" size="100"></td>' % (group[0], group[2])) print('Content-type: text/html\n')
print('<td><a class="delete" onclick="removeGroup(%s)" style="cursor: pointer;"></a></td>' % group[0])
print('<td></td>') output_from_parsed_template = template.render(groups = select_groups(group=group))
print('</tr>') print(output_from_parsed_template)
def select_roles(**kwargs): def select_roles(**kwargs):
con, cur = create_db.get_cur() con, cur = create_db.get_cur()
@ -552,21 +490,7 @@ def select_roles(**kwargs):
return cur.fetchall() return cur.fetchall()
cur.close() cur.close()
con.close() con.close()
def get_roles_select(id, **kwargs):
print('<select id="%s" name="%s">' % (id, id))
print('<optin disabled selected>Choose role</option>')
ROLES = select_roles()
selected = ""
for role in ROLES:
if kwargs.get('selected'):
if kwargs.get('selected') == role[1]:
selected = "selected"
else:
selected = ""
print('<option value="%s" %s>%s</option>' % (role[1], selected, role[1]))
print('</select>')
form = cgi.FieldStorage() form = cgi.FieldStorage()
error_mess = '<span class="alert alert-danger" id="error">All fields must be completed <a title="Close" id="errorMess"><b>X</b></a></span>' error_mess = '<span class="alert alert-danger" id="error">All fields must be completed <a title="Close" id="errorMess"><b>X</b></a></span>'
@ -614,13 +538,10 @@ if form.getvalue('newserver') is not None:
if ip is None or group is None: if ip is None or group is None:
print('Content-type: text/html\n') print('Content-type: text/html\n')
print(error_mess) print(error_mess)
else: else:
print('Content-type: text/html\n') print('Content-type: text/html\n')
if funct.ssh_connect(ip, check=1): if add_server(hostname, ip, group, typeip, enable, master):
if add_server(hostname, ip, group, typeip, enable, master): show_update_server(ip)
show_update_server(hostname)
else:
print('<span class="alert alert-danger" id="error"><a title="Close" id="errorMess"><b>X</b></a></span>')
if form.getvalue('serverdel') is not None: if form.getvalue('serverdel') is not None:
print('Content-type: text/html\n') print('Content-type: text/html\n')

View File

@ -0,0 +1,13 @@
{% for group in groups %}
<tr id="group-{{ group.0 }}">
<td class="padding10 first-collumn">
<input type="text" id="name-{{ group.0 }}" value="{{ group.1 }}" class="form-control">
</td>
<td>
<input type="text" id="descript-{{ group.0 }}" value="{{ group.2 }}" class="form-control" size="100">
</td>
<td>
<a class="delete" onclick="removeGroup({{ group.0 }})" style="cursor: pointer;"></a>
</td>
</tr>
{% endfor %}

View File

@ -0,0 +1,13 @@
{% for group in groups %}
<tr id="group-{{ group.0 }}" class="newgroup">
<td class="padding10 first-collumn">
<input type="text" id="name-{{ group.0 }}" value="{{ group.1 }}" class="form-control">
</td>
<td>
<input type="text" id="descript-{{ group.0 }}" value="{{ group.2 }}" class="form-control" size="100">
</td>
<td>
<a class="delete" onclick="removeGroup({{ group.0 }})" style="cursor: pointer;"></a>
</td>
</tr>
{% endfor %}

View File

@ -0,0 +1,51 @@
{% for server in servers %}
<tr id="server-{{server.0}}" class="newserver">
<td class="padding10 first-collumn">
<input type="text" id="hostname-{{server.0}}" value="{{server.1}}" class="form-control">
</td>
<td>
<input type="text" id="ip-{{server.0}}" value="{{server.2}}" class="form-control">
</td>
<td>
<select id="servergroup-{{server.0}}" name="servergroup-{{server.0}}">
<option disabled selected>Choose group</option>
{% for group in groups %}
{% if server.3 == group.0|string() %}
<option value="{{ group.0 }}" selected>{{ group.1 }}</option>
{% else %}
<option value="{{ group.0 }}">{{ group.1 }}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
{% if server.5 == 1 %}
<label for="enable-{{server.0}}"></label><input type="checkbox" id="enable-{{server.0}}" checked>
{% else %}
<label for="enable-{{server.0}}"></label><input type="checkbox" id="enable-{{server.0}}">
{% endif %}
</td>
<td>
{% if server.4 == 1 %}
<label for="typeip-{{server.0}}"></label><input type="checkbox" id="typeip-{{server.0}}" checked>
{% else %}
<label for="typeip-{{server.0}}"></label><input type="checkbox" id="typeip-{{server.0}}">
{% endif %}
</td>
<td>
<select id="slavefor-{{server.0}}">
<option value="0" selected>Not slave</option>
{% for master in masters %}
{% if master.0 == server.6 %}
<option value="{{master.0}}" selected>{{master.1}}</option>
{% else %}
<option value="{{master.0}}">{{master.1}}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
<a class="delete" onclick="removeServer({{server.0}})" style="cursor: pointer;"></a>
</td>
</tr>
{% endfor %}

View File

@ -0,0 +1,32 @@
{% for user in users %}
<tr id="user-{{user.0}}" class="newuser">
<td class="padding10 first-collumn"><input type="text" id="login-{{user.0}}" value="{{user.1}}" class="form-control"></td>
<td><input type="password" id="password-{{user.0}}" value="{{user.3}}" class="form-control"></td>
<td><input type="text" id="email-{{user.0}}" value="{{user.2}}" class="form-control"></td>
<td>
<select id="role-{{user.0}}" name="role-{{user.0}}">
<option disabled selected>Choose role</option>
{% for role in roles %}
{% if user.4 == role.1 %}
<option value="{{ role.1 }}" selected>{{ role.1 }}</option>
{% else %}
<option value="{{ role.1 }}">{{ role.1 }}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
<select id="usergroup-{{user.0}}" name="usergroup-{{user.0}}">
<option disabled selected>Choose group</option>
{% for group in groups %}
{% if user.5 == group.0|string() %}
<option value="{{ group.0 }}" selected>{{ group.1 }}</option>
{% else %}
<option value="{{ group.0 }}">{{ group.1 }}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td><a class="delete" onclick="removeUser({{user.0}})" style="cursor: pointer;"></a></td>
</tr>
{% endfor %}

View File

@ -0,0 +1,53 @@
{% for server in servers %}
<tr id="server-{{server.0}}">
<td class="padding10 first-collumn">
<input type="text" id="hostname-{{server.0}}" value="{{server.1}}" class="form-control">
</td>
<td>
<input type="text" id="ip-{{server.0}}" value="{{server.2}}" class="form-control">
</td>
<td>
<select id="servergroup-{{server.0}}" name="servergroup-{{server.0}}">
<option disabled selected>Choose group</option>
{% for group in groups %}
{% if server.3 == group.0|string() %}
<option value="{{ group.0 }}" selected>{{ group.1 }}</option>
{% else %}
<option value="{{ group.0 }}">{{ group.1 }}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
{% if server.5 == 1 %}
<label for="enable-{{server.0}}"></label><input type="checkbox" id="enable-{{server.0}}" checked>
{% else %}
<label for="enable-{{server.0}}"></label><input type="checkbox" id="enable-{{server.0}}">
{% endif %}
</td>
<td>
{% if server.4 == 1 %}
<label for="typeip-{{server.0}}"></label><input type="checkbox" id="typeip-{{server.0}}" checked>
{% else %}
<label for="typeip-{{server.0}}"></label><input type="checkbox" id="typeip-{{server.0}}">
{% endif %}
</td>
<td>
<select id="slavefor-{{server.0}}">
<option value="0" selected>Not slave</option>
{% for master in masters %}
{% if master.0 == server.6 %}
<option value="{{master.0}}" selected>{{master.1}}</option>
{% else %}
<option value="{{master.0}}">{{master.1}}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
<a class="delete" onclick="removeServer({{server.0}})" style="cursor: pointer;"></a>
</td>
</tr>
{% endfor %}
<script defer src="/inc/fontawesome.min.js"></script>
<script src="/inc/script.js"></script>

View File

@ -0,0 +1,51 @@
{% for server in servers %}
<tr id="server-{{server.0}}">
<td class="padding10 first-collumn">
<input type="text" id="hostname-{{server.0}}" value="{{server.1}}" class="form-control">
</td>
<td>
<input type="text" id="ip-{{server.0}}" value="{{server.2}}" class="form-control">
</td>
<td>
<select id="servergroup-{{server.0}}" name="servergroup-{{server.0}}">
<option disabled selected>Choose group</option>
{% for group in groups %}
{% if server.3 == group.0|string() %}
<option value="{{ group.0 }}" selected>{{ group.1 }}</option>
{% else %}
<option value="{{ group.0 }}">{{ group.1 }}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
{% if server.5 == 1 %}
<label for="enable-{{server.0}}"></label><input type="checkbox" id="enable-{{server.0}}" checked>
{% else %}
<label for="enable-{{server.0}}"></label><input type="checkbox" id="enable-{{server.0}}">
{% endif %}
</td>
<td>
{% if server.4 == 1 %}
<label for="typeip-{{server.0}}"></label><input type="checkbox" id="typeip-{{server.0}}" checked>
{% else %}
<label for="typeip-{{server.0}}"></label><input type="checkbox" id="typeip-{{server.0}}">
{% endif %}
</td>
<td>
<select id="slavefor-{{server.0}}">
<option value="0" selected>Not slave</option>
{% for master in masters %}
{% if master.0 == server.6 %}
<option value="{{master.0}}" selected>{{master.1}}</option>
{% else %}
<option value="{{master.0}}">{{master.1}}</option>
{% endif %}
{% endfor %}
</select>
</td>
<td>
<a class="delete" onclick="removeServer({{server.0}})" style="cursor: pointer;"></a>
</td>
</tr>
{% endfor %}

View File

@ -19,9 +19,9 @@
<tr> <tr>
<td class="padding10 first-collumn"> <td class="padding10 first-collumn">
<form action="logs.py" method="get"> <form action="logs.py" method="get">
<select autofocus required name="serv" id="serv"> <select autofocus required name="serv" id="serv">
<option disabled selected>Choose server</option>
{% if onclick == 'showApacheLog()' %} {% if onclick == 'showApacheLog()' %}
<option disabled selected>Choose log</option>
{% for select in selects %} {% for select in selects %}
{% if select.2 == serv %} {% if select.2 == serv %}
<option value="{{ select.0 }}" selected>{{ select.1 }}</option> <option value="{{ select.0 }}" selected>{{ select.1 }}</option>
@ -31,6 +31,7 @@
{% endfor %} {% endfor %}
{% else %} {% else %}
{% for select in selects %} {% for select in selects %}
<option disabled selected>Choose server</option>
{% if select.2 == serv %} {% if select.2 == serv %}
<option value="{{ select.2 }}" selected>{{ select.1 }}</option> <option value="{{ select.2 }}" selected>{{ select.1 }}</option>
{% else %} {% else %}

View File

@ -291,6 +291,7 @@ pre {
padding-left: 10px; padding-left: 10px;
float: right; float: right;
margin-right: 10px; margin-right: 10px;
cursor: pointer;
} }
.serverDown { .serverDown {
background-color: red; background-color: red;

View File

@ -129,7 +129,7 @@ $( function() {
} else { } else {
$('.alert-danger').remove(); $('.alert-danger').remove();
$("#ajax-users").append(data); $("#ajax-users").append(data);
$( "#ajax-users tr td" ).addClass( "update", 1000, callbackUser ); $( ".newuser" ).addClass( "update", 1000, callbackUser );
$.getScript(url); $.getScript(url);
$.getScript(awesome); $.getScript(awesome);
$.getScript(users); $.getScript(users);
@ -138,6 +138,8 @@ $( function() {
} ); } );
}); });
$('#add-group').click(function() { $('#add-group').click(function() {
$('#error').remove();
$('.alert-danger').remove();
$.ajax( { $.ajax( {
url: "sql.py", url: "sql.py",
data: { data: {
@ -153,7 +155,7 @@ $( function() {
var getId = new RegExp('[0-9]+'); var getId = new RegExp('[0-9]+');
var id = data.match(getId); var id = data.match(getId);
$("#ajax-group").append(data); $("#ajax-group").append(data);
$( "#ajax-group tr td" ).addClass( "update", 1000, callbackGroup ); $( ".newgroup" ).addClass( "update", 1000, callbackGroup );
$('select:regex(id, group)').append('<option value='+id+'>'+$('#new-group-add').val()+'</option>').selectmenu("refresh"); $('select:regex(id, group)').append('<option value='+id+'>'+$('#new-group-add').val()+'</option>').selectmenu("refresh");
$.getScript(awesome); $.getScript(awesome);
} }
@ -190,10 +192,9 @@ $( function() {
} else { } else {
$('.alert-danger').remove(); $('.alert-danger').remove();
$("#ajax-servers").append(data); $("#ajax-servers").append(data);
$( "#ajax-servers tr td" ).addClass( "update", 1000, callback ); $(".newserver").addClass( "update", 1000, callbackServer );
$.getScript(url); $.getScript(url);
$.getScript(awesome); $.getScript(awesome);
$.getScript(users);
} }
} }
} ); } );
@ -201,18 +202,17 @@ $( function() {
function callbackUser() { function callbackUser() {
setTimeout(function() { setTimeout(function() {
$( "#ajax-users tr td" ).removeClass( "update" ); $( ".newuser" ).removeClass( "update" );
}, 2500 ); }, 2500 );
} }
function callback() { function callbackServer() {
setTimeout(function() { setTimeout(function() {
$( "#ajax-servers tr td" ).removeClass( "update" ); $( ".newserver" ).removeClass( "update" );
}, 2500 ); }, 2500 );
} }
function callbackGroup() { function callbackGroup() {
setTimeout(function() { setTimeout(function() {
$( "#ajax-group tr td" ).removeClass( "update" ); $( ".newgroup" ).removeClass( "update" );
}, 2500 ); }, 2500 );
} }

View File

@ -292,6 +292,7 @@ echo "Edit firewalld"
firewall-cmd --zone=public --add-port=$PORT/tcp --permanent firewall-cmd --zone=public --add-port=$PORT/tcp --permanent
firewall-cmd --reload firewall-cmd --reload
mkdir /var/www/$HOME_HAPROXY_WI/app/certs
chmod +x /var/www/$HOME_HAPROXY_WI/app/*.py chmod +x /var/www/$HOME_HAPROXY_WI/app/*.py
chown -R apache:apache /var/www/$HOME_HAPROXY_WI/ chown -R apache:apache /var/www/$HOME_HAPROXY_WI/
rm -f /var/www/$HOME_HAPROXY_WI/log/config_edit.log rm -f /var/www/$HOME_HAPROXY_WI/log/config_edit.log

View File

@ -1,9 +1,11 @@
#!/bin/bash #!/bin/bash
cp app/haproxy-webintarface.config /tmp/ cp app/haproxy-webintarface.config /tmp/
git reset --hard git reset --hard
git pull https://github.com/Aidaho12/haproxy-wi.git git pull https://github.com/Aidaho12/haproxy-wi.git
mkdir app/certs
chmod +x app/*py chmod +x app/*py
chown -R apache:apache * chown -R apache:apache *