mirror of
https://github.com/eduardogsilva/wireguard_webadmin.git
synced 2026-01-01 22:26:17 +00:00
add API endpoint for worker ping status check
This commit is contained in:
@@ -159,6 +159,24 @@ def api_get_worker_config_files(request):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def api_worker_ping(request):
|
||||||
|
worker, success = get_worker(request)
|
||||||
|
if worker:
|
||||||
|
if worker.error_status or not success:
|
||||||
|
data = {'status': 'error', 'message': worker.error_status}
|
||||||
|
return JsonResponse(data, status=400)
|
||||||
|
else:
|
||||||
|
data = {'status': 'error', 'message': 'Worker not found'}
|
||||||
|
return JsonResponse(data, status=403)
|
||||||
|
|
||||||
|
data = {
|
||||||
|
'status': 'success',
|
||||||
|
'worker_error_status': worker.error_status,
|
||||||
|
}
|
||||||
|
|
||||||
|
return JsonResponse(data, status=200)
|
||||||
|
|
||||||
|
|
||||||
def api_cluster_status(request):
|
def api_cluster_status(request):
|
||||||
worker, success = get_worker(request)
|
worker, success = get_worker(request)
|
||||||
if worker:
|
if worker:
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ from django.utils import timezone
|
|||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
|
|
||||||
from cluster.models import ClusterSettings
|
from cluster.models import ClusterSettings
|
||||||
from dns.views import export_dns_configuration
|
|
||||||
from firewall.models import RedirectRule
|
from firewall.models import RedirectRule
|
||||||
from firewall.tools import export_user_firewall, generate_firewall_footer, generate_firewall_header, \
|
from firewall.tools import export_user_firewall, generate_firewall_footer, generate_firewall_header, \
|
||||||
generate_port_forward_firewall, generate_redirect_dns_rules
|
generate_port_forward_firewall, generate_redirect_dns_rules
|
||||||
@@ -89,7 +88,6 @@ def export_wireguard_configs(request):
|
|||||||
base_dir = "/etc/wireguard"
|
base_dir = "/etc/wireguard"
|
||||||
|
|
||||||
export_firewall_configuration()
|
export_firewall_configuration()
|
||||||
export_dns_configuration()
|
|
||||||
|
|
||||||
firewall_inserted = False
|
firewall_inserted = False
|
||||||
for instance in instances:
|
for instance in instances:
|
||||||
|
|||||||
@@ -21,7 +21,8 @@ from accounts.views import view_create_first_user, view_login, view_logout
|
|||||||
from api.views import api_instance_info, api_peer_invite, api_peer_list, cron_check_updates, \
|
from api.views import api_instance_info, api_peer_invite, api_peer_list, cron_check_updates, \
|
||||||
cron_update_peer_latest_handshake, peer_info, routerfleet_authenticate_session, routerfleet_get_user_token, \
|
cron_update_peer_latest_handshake, peer_info, routerfleet_authenticate_session, routerfleet_get_user_token, \
|
||||||
wireguard_status
|
wireguard_status
|
||||||
from cluster.cluster_api import api_cluster_status, api_get_worker_config_files, api_get_worker_dnsmasq_config
|
from cluster.cluster_api import api_cluster_status, api_get_worker_config_files, api_get_worker_dnsmasq_config, \
|
||||||
|
api_worker_ping
|
||||||
from cluster.views import cluster_main, cluster_settings, worker_manage
|
from cluster.views import cluster_main, cluster_settings, worker_manage
|
||||||
from console.views import view_console
|
from console.views import view_console
|
||||||
from dns.views import view_apply_dns_config, view_manage_dns_settings, view_manage_filter_list, view_manage_static_host, \
|
from dns.views import view_apply_dns_config, view_manage_dns_settings, view_manage_filter_list, view_manage_static_host, \
|
||||||
@@ -79,6 +80,7 @@ urlpatterns = [
|
|||||||
path('api/cluster/status/', api_cluster_status, name='api_cluster_status'),
|
path('api/cluster/status/', api_cluster_status, name='api_cluster_status'),
|
||||||
path('api/cluster/worker/get_config_files/', api_get_worker_config_files, name='api_get_worker_config_files'),
|
path('api/cluster/worker/get_config_files/', api_get_worker_config_files, name='api_get_worker_config_files'),
|
||||||
path('api/cluster/worker/get_dnsmasq_config/', api_get_worker_dnsmasq_config, name='api_get_worker_dnsmasq_config'),
|
path('api/cluster/worker/get_dnsmasq_config/', api_get_worker_dnsmasq_config, name='api_get_worker_dnsmasq_config'),
|
||||||
|
path('api/cluster/worker/ping/', api_worker_ping, name='api_worker_ping'),
|
||||||
path('firewall/port_forward/', view_redirect_rule_list, name='redirect_rule_list'),
|
path('firewall/port_forward/', view_redirect_rule_list, name='redirect_rule_list'),
|
||||||
path('firewall/manage_port_forward_rule/', manage_redirect_rule, name='manage_redirect_rule'),
|
path('firewall/manage_port_forward_rule/', manage_redirect_rule, name='manage_redirect_rule'),
|
||||||
path('firewall/rule_list/', view_firewall_rule_list, name='firewall_rule_list'),
|
path('firewall/rule_list/', view_firewall_rule_list, name='firewall_rule_list'),
|
||||||
|
|||||||
Reference in New Issue
Block a user