mirror of
https://github.com/ansible/awx.git
synced 2026-05-19 23:07:42 -02:30
Merge pull request #11537 from jbradberry/enhancements-for-meshviz-endpoint
Enhancements for meshviz endpoint
This commit is contained in:
@@ -243,7 +243,7 @@ class IsSystemAdminOrAuditor(permissions.BasePermission):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def has_permission(self, request, view):
|
def has_permission(self, request, view):
|
||||||
if not request.user:
|
if not (request.user and request.user.is_authenticated):
|
||||||
return False
|
return False
|
||||||
if request.method == 'GET':
|
if request.method == 'GET':
|
||||||
return request.user.is_superuser or request.user.is_system_auditor
|
return request.user.is_superuser or request.user.is_system_auditor
|
||||||
|
|||||||
@@ -1,17 +1,19 @@
|
|||||||
# Copyright (c) 2018 Red Hat, Inc.
|
# Copyright (c) 2018 Red Hat, Inc.
|
||||||
# All Rights Reserved.
|
# All Rights Reserved.
|
||||||
|
|
||||||
from awx.main.models import InstanceLink, Instance
|
|
||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
|
|
||||||
from awx.api.generics import APIView, Response
|
from awx.api.generics import APIView, Response
|
||||||
|
from awx.api.permissions import IsSystemAdminOrAuditor
|
||||||
from awx.api.serializers import InstanceLinkSerializer, InstanceNodeSerializer
|
from awx.api.serializers import InstanceLinkSerializer, InstanceNodeSerializer
|
||||||
|
from awx.main.models import InstanceLink, Instance
|
||||||
|
|
||||||
|
|
||||||
class MeshVisualizer(APIView):
|
class MeshVisualizer(APIView):
|
||||||
|
|
||||||
name = _("Mesh Visualizer")
|
name = _("Mesh Visualizer")
|
||||||
|
permission_classes = (IsSystemAdminOrAuditor,)
|
||||||
|
swagger_topic = "System Configuration"
|
||||||
|
|
||||||
def get(self, request, format=None):
|
def get(self, request, format=None):
|
||||||
|
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ class ApiVersionRootView(APIView):
|
|||||||
data['workflow_approvals'] = reverse('api:workflow_approval_list', request=request)
|
data['workflow_approvals'] = reverse('api:workflow_approval_list', request=request)
|
||||||
data['workflow_job_template_nodes'] = reverse('api:workflow_job_template_node_list', request=request)
|
data['workflow_job_template_nodes'] = reverse('api:workflow_job_template_node_list', request=request)
|
||||||
data['workflow_job_nodes'] = reverse('api:workflow_job_node_list', request=request)
|
data['workflow_job_nodes'] = reverse('api:workflow_job_node_list', request=request)
|
||||||
data['mesh_visualizer_view'] = reverse('api:mesh_visualizer_view', request=request)
|
data['mesh_visualizer'] = reverse('api:mesh_visualizer_view', request=request)
|
||||||
return Response(data)
|
return Response(data)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
11
awxkit/awxkit/api/pages/mesh_visualizer.py
Normal file
11
awxkit/awxkit/api/pages/mesh_visualizer.py
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
from awxkit.api.resources import resources
|
||||||
|
from . import base
|
||||||
|
from . import page
|
||||||
|
|
||||||
|
|
||||||
|
class MeshVisualizer(base.Base):
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
page.register_page(resources.mesh_visualizer, MeshVisualizer)
|
||||||
@@ -116,6 +116,7 @@ class Resources(object):
|
|||||||
_labels = 'labels/'
|
_labels = 'labels/'
|
||||||
_me = 'me/'
|
_me = 'me/'
|
||||||
_metrics = 'metrics/'
|
_metrics = 'metrics/'
|
||||||
|
_mesh_visualizer = 'mesh_visualizer/'
|
||||||
_notification = r'notifications/\d+/'
|
_notification = r'notifications/\d+/'
|
||||||
_notification_template = r'notification_templates/\d+/'
|
_notification_template = r'notification_templates/\d+/'
|
||||||
_notification_template_any = r'\w+/\d+/notification_templates_any/\d+/'
|
_notification_template_any = r'\w+/\d+/notification_templates_any/\d+/'
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ from awxkit.cli.format import FORMATTERS, format_response, add_authentication_ar
|
|||||||
from awxkit.cli.utils import CustomRegistryMeta, cprint
|
from awxkit.cli.utils import CustomRegistryMeta, cprint
|
||||||
|
|
||||||
|
|
||||||
CONTROL_RESOURCES = ['ping', 'config', 'me', 'metrics']
|
CONTROL_RESOURCES = ['ping', 'config', 'me', 'metrics', 'mesh_visualizer']
|
||||||
|
|
||||||
DEPRECATED_RESOURCES = {
|
DEPRECATED_RESOURCES = {
|
||||||
'ad_hoc_commands': 'ad_hoc',
|
'ad_hoc_commands': 'ad_hoc',
|
||||||
|
|||||||
Reference in New Issue
Block a user