67 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
"""Outpost API Views"""
 | 
						|
from rest_framework.serializers import JSONField, ModelSerializer
 | 
						|
from rest_framework.viewsets import ModelViewSet
 | 
						|
 | 
						|
from passbook.outposts.models import (
 | 
						|
    DockerServiceConnection,
 | 
						|
    KubernetesServiceConnection,
 | 
						|
    Outpost,
 | 
						|
)
 | 
						|
 | 
						|
 | 
						|
class OutpostSerializer(ModelSerializer):
 | 
						|
    """Outpost Serializer"""
 | 
						|
 | 
						|
    _config = JSONField()
 | 
						|
 | 
						|
    class Meta:
 | 
						|
 | 
						|
        model = Outpost
 | 
						|
        fields = ["pk", "name", "providers", "service_connection", "_config"]
 | 
						|
 | 
						|
 | 
						|
class OutpostViewSet(ModelViewSet):
 | 
						|
    """Outpost Viewset"""
 | 
						|
 | 
						|
    queryset = Outpost.objects.all()
 | 
						|
    serializer_class = OutpostSerializer
 | 
						|
 | 
						|
 | 
						|
class DockerServiceConnectionSerializer(ModelSerializer):
 | 
						|
    """DockerServiceConnection Serializer"""
 | 
						|
 | 
						|
    class Meta:
 | 
						|
 | 
						|
        model = DockerServiceConnection
 | 
						|
        fields = [
 | 
						|
            "pk",
 | 
						|
            "name",
 | 
						|
            "local",
 | 
						|
            "url",
 | 
						|
            "tls_verification",
 | 
						|
            "tls_authentication",
 | 
						|
        ]
 | 
						|
 | 
						|
 | 
						|
class DockerServiceConnectionViewSet(ModelViewSet):
 | 
						|
    """DockerServiceConnection Viewset"""
 | 
						|
 | 
						|
    queryset = DockerServiceConnection.objects.all()
 | 
						|
    serializer_class = DockerServiceConnectionSerializer
 | 
						|
 | 
						|
 | 
						|
class KubernetesServiceConnectionSerializer(ModelSerializer):
 | 
						|
    """KubernetesServiceConnection Serializer"""
 | 
						|
 | 
						|
    class Meta:
 | 
						|
 | 
						|
        model = KubernetesServiceConnection
 | 
						|
        fields = ["pk", "name", "local", "kubeconfig"]
 | 
						|
 | 
						|
 | 
						|
class KubernetesServiceConnectionViewSet(ModelViewSet):
 | 
						|
    """KubernetesServiceConnection Viewset"""
 | 
						|
 | 
						|
    queryset = KubernetesServiceConnection.objects.all()
 | 
						|
    serializer_class = KubernetesServiceConnectionSerializer
 |