mirror of https://github.com/jumpserver/jumpserver
perf: 修改host info 接口, 社区开放applet, 修改改密发邮件bug (#9760)
Co-authored-by: feng <1304903146@qq.com>pull/9761/head^2
parent
a1dcef0ba0
commit
0ad461a804
|
@ -206,7 +206,7 @@ class ChangeSecretManager(AccountBasePlaybookManager):
|
||||||
serializer = serializer_cls(recorders, many=True)
|
serializer = serializer_cls(recorders, many=True)
|
||||||
|
|
||||||
header = [str(v.label) for v in serializer.child.fields.values()]
|
header = [str(v.label) for v in serializer.child.fields.values()]
|
||||||
rows = [list(row.values()) for row in serializer.data]
|
rows = [[str(i) for i in row.values()] for row in serializer.data]
|
||||||
if not rows:
|
if not rows:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
|
@ -99,13 +99,14 @@ class AssetViewSet(SuggestionMixin, NodeFilterMixin, OrgBulkModelViewSet):
|
||||||
("platform", serializers.PlatformSerializer),
|
("platform", serializers.PlatformSerializer),
|
||||||
("suggestion", serializers.MiniAssetSerializer),
|
("suggestion", serializers.MiniAssetSerializer),
|
||||||
("gateways", serializers.GatewaySerializer),
|
("gateways", serializers.GatewaySerializer),
|
||||||
("spec_info", serializers.SpecSerializer)
|
("spec_info", serializers.SpecSerializer),
|
||||||
)
|
)
|
||||||
rbac_perms = (
|
rbac_perms = (
|
||||||
("match", "assets.match_asset"),
|
("match", "assets.match_asset"),
|
||||||
("platform", "assets.view_platform"),
|
("platform", "assets.view_platform"),
|
||||||
("gateways", "assets.view_gateway"),
|
("gateways", "assets.view_gateway"),
|
||||||
("spec_info", "assets.view_asset"),
|
("spec_info", "assets.view_asset"),
|
||||||
|
("info", "assets.view_asset"),
|
||||||
)
|
)
|
||||||
extra_filter_backends = [LabelFilterBackend, IpInFilterBackend, NodeFilterBackend]
|
extra_filter_backends = [LabelFilterBackend, IpInFilterBackend, NodeFilterBackend]
|
||||||
|
|
||||||
|
|
|
@ -21,4 +21,10 @@ class HostViewSet(AssetViewSet):
|
||||||
@action(methods=["GET"], detail=True, url_path="info")
|
@action(methods=["GET"], detail=True, url_path="info")
|
||||||
def info(self, *args, **kwargs):
|
def info(self, *args, **kwargs):
|
||||||
asset = super().get_object()
|
asset = super().get_object()
|
||||||
return Response(asset.info)
|
serializer = self.get_serializer(asset.info)
|
||||||
|
data = serializer.data
|
||||||
|
data['asset'] = {
|
||||||
|
'id': asset.id, 'name': asset.name,
|
||||||
|
'address': asset.address
|
||||||
|
}
|
||||||
|
return Response(data)
|
||||||
|
|
|
@ -137,8 +137,6 @@ class AppletMethod:
|
||||||
from .models import Applet, AppletHost
|
from .models import Applet, AppletHost
|
||||||
|
|
||||||
methods = defaultdict(list)
|
methods = defaultdict(list)
|
||||||
if not settings.XPACK_ENABLED:
|
|
||||||
return methods
|
|
||||||
|
|
||||||
has_applet_hosts = AppletHost.objects.all().exists()
|
has_applet_hosts = AppletHost.objects.all().exists()
|
||||||
applets = Applet.objects.filter(is_active=True)
|
applets = Applet.objects.filter(is_active=True)
|
||||||
|
|
Loading…
Reference in New Issue