mirror of https://github.com/jumpserver/jumpserver
				
				
				
			
		
			
				
	
	
		
			32 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
from django.utils.translation import gettext_lazy as _
 | 
						|
from rest_framework import serializers
 | 
						|
 | 
						|
from common.serializers.fields import LabeledChoiceField
 | 
						|
from terminal import const
 | 
						|
from ..models import AppProvider
 | 
						|
 | 
						|
__all__ = ['AppProviderSerializer', 'AppProviderContainerSerializer', ]
 | 
						|
 | 
						|
 | 
						|
class AppProviderSerializer(serializers.ModelSerializer):
 | 
						|
    load = LabeledChoiceField(
 | 
						|
        read_only=True, label=_('Load status'), choices=const.ComponentLoad.choices,
 | 
						|
    )
 | 
						|
 | 
						|
    class Meta:
 | 
						|
        model = AppProvider
 | 
						|
        field_mini = ['id', 'name', 'hostname']
 | 
						|
        read_only_fields = [
 | 
						|
            'date_created', 'date_updated',
 | 
						|
        ]
 | 
						|
        fields = field_mini + ['load', 'terminal'] + read_only_fields
 | 
						|
 | 
						|
 | 
						|
class AppProviderContainerSerializer(serializers.Serializer):
 | 
						|
    container_id = serializers.CharField(label=_('Container ID'))
 | 
						|
    container_image = serializers.CharField(label=_('Container Image'))
 | 
						|
    container_name = serializers.CharField(label=_('Container Name'))
 | 
						|
    container_status = serializers.CharField(label=_('Container Status'))
 | 
						|
    container_ports = serializers.ListField(child=serializers.CharField(), label=_('Container Ports'))
 | 
						|
 |