Merge pull request #11537 from jbradberry/enhancements-for-meshviz-endpoint

Enhancements for meshviz endpoint
This commit is contained in:
Jeff Bradberry
2022-01-13 16:42:21 -05:00
committed by GitHub
6 changed files with 19 additions and 5 deletions

View File

@@ -243,7 +243,7 @@ class IsSystemAdminOrAuditor(permissions.BasePermission):
"""
def has_permission(self, request, view):
if not request.user:
if not (request.user and request.user.is_authenticated):
return False
if request.method == 'GET':
return request.user.is_superuser or request.user.is_system_auditor

View File

@@ -1,17 +1,19 @@
# Copyright (c) 2018 Red Hat, Inc.
# All Rights Reserved.
from awx.main.models import InstanceLink, Instance
from django.utils.translation import ugettext_lazy as _
from awx.api.generics import APIView, Response
from awx.api.permissions import IsSystemAdminOrAuditor
from awx.api.serializers import InstanceLinkSerializer, InstanceNodeSerializer
from awx.main.models import InstanceLink, Instance
class MeshVisualizer(APIView):
name = _("Mesh Visualizer")
permission_classes = (IsSystemAdminOrAuditor,)
swagger_topic = "System Configuration"
def get(self, request, format=None):

View File

@@ -123,7 +123,7 @@ class ApiVersionRootView(APIView):
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_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)

View 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)

View File

@@ -116,6 +116,7 @@ class Resources(object):
_labels = 'labels/'
_me = 'me/'
_metrics = 'metrics/'
_mesh_visualizer = 'mesh_visualizer/'
_notification = r'notifications/\d+/'
_notification_template = r'notification_templates/\d+/'
_notification_template_any = r'\w+/\d+/notification_templates_any/\d+/'

View File

@@ -11,7 +11,7 @@ from awxkit.cli.format import FORMATTERS, format_response, add_authentication_ar
from awxkit.cli.utils import CustomRegistryMeta, cprint
CONTROL_RESOURCES = ['ping', 'config', 'me', 'metrics']
CONTROL_RESOURCES = ['ping', 'config', 'me', 'metrics', 'mesh_visualizer']
DEPRECATED_RESOURCES = {
'ad_hoc_commands': 'ad_hoc',