Esempio n. 1
0
 class Meta:
     resource_name = 'route_config'
     list_allowed_methods = ['get']
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     fields = ['lefts', 'actions', 'operators']
     include_resource_uri = False
Esempio n. 2
0
 class Meta:
     queryset = Backend.objects\
         .select_related('director__time_profile', 'dc')\
         .prefetch_related('tags')\
         .extra(select={
             'status':
                 "SELECT status from monitor_backendstatus"
                 " WHERE monitor_backendstatus.address=manager_backend.address"
                 " AND monitor_backendstatus.port=manager_backend.port"
                 " LIMIT 1"
         })\
         .all()
     resource_name = 'backend'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=BackendModelForm)
     always_return_data = True
     filtering = {
         'dc': ALL_WITH_RELATIONS,
         'director': ALL_WITH_RELATIONS,
         'address': ['exact'],
         'port': ['exact']
     }
Esempio n. 3
0
 class Meta:
     resource_name = 'validate_routes'
     list_allowed_methods = ['post']
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication(),
                                              SessionAuthentication())
     include_resource_uri = False
Esempio n. 4
0
 class Meta:
     resource_name = 'task'
     list_allowed_methods = ['get']
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     fields = ['status', 'info']
     include_resource_uri = True
Esempio n. 5
0
 class Meta:
     queryset = Director.objects\
         .select_related('time_profile', 'probe')\
         .prefetch_related(
             Prefetch('cluster', queryset=LogicalCluster.objects.annotate(Count('varnishserver')).all()),
             Prefetch('backends', queryset=Backend.objects.all().only('id', 'director_id'))
         )\
         .all()
     resource_name = 'director'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication(),
                                              SessionAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=DirectorModelForm)
     always_return_data = True
     filtering = {
         'name': ['exact'],
         'enabled': ['exact'],
         'probe': ALL_WITH_RELATIONS,
         'cluster': ALL_WITH_RELATIONS,
         'service': ['exact'],
         'virtual': ['exact'],
         'service_tag': ['exact'],
         'reachable_via_service_mesh': ['exact'],
     }
Esempio n. 6
0
 class Meta:
     resource_name = 'outdated_server'
     object_class = OutdatedServer
     authorization = DjangoAuthorization()
     include_resource_uri = False
     filtering = {
         'cluster__name': ['exact'],
     }
Esempio n. 7
0
 class Meta:
     resource_name = 'validation_report'
     list_allowed_methods = ['get']
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication(),
                                              SessionAuthentication())
     fields = ['validation_results', 'validation_status', 'task_status']
     include_resource_uri = False
Esempio n. 8
0
 class Meta:
     queryset = VclTemplateBlock.objects.all()
     resource_name = 'vcl_template_block'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=VclTemplateBlockModelForm)
     always_return_data = True
     filtering = {'name': ['exact'], 'template': ALL_WITH_RELATIONS}
Esempio n. 9
0
File: api.py Progetto: yenaing/vaas
 class Meta:
     queryset = Route.objects.all()
     resource_name = 'route'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = ApiKeyAuthentication()
     always_return_data = True
     filtering = {
         'director': ALL_WITH_RELATIONS,
         'cluster': ALL_WITH_RELATIONS
     }
Esempio n. 10
0
 class Meta:
     queryset = Dc.objects.all()
     resource_name = 'dc'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(form_class=DcModelForm)
     always_return_data = True
     filtering = {
         'symbol': ['exact'],
     }
Esempio n. 11
0
 class Meta:
     queryset = VclTemplate.objects.all()
     resource_name = 'vcl_template'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = ApiKeyAuthentication()
     validation = ModelCleanedDataFormValidation(form_class=VclTemplateModelForm)
     always_return_data = True
     filtering = {
         'name': ['exact'],
     }
Esempio n. 12
0
 class Meta:
     queryset = LogicalCluster.objects.all()
     resource_name = 'logical_cluster'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     validation = ModelCleanedDataFormValidation(form_class=LogicalCLusterModelForm)
     authentication = ApiKeyAuthentication()
     always_return_data = True
     filtering = {
         'name': ['exact'],
         'reload_timestamp': ['exact'],
     }
Esempio n. 13
0
 class Meta:
     queryset = VarnishServer.objects.all()
     resource_name = 'varnish_server'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = ApiKeyAuthentication()
     validation = ModelCleanedDataFormValidation(form_class=VarnishServerModelForm)
     always_return_data = True
     filtering = {
         'ip': ['exact'],
         'cluster': ['exact']
     }
Esempio n. 14
0
 class Meta:
     queryset = Route.objects.all().prefetch_related('clusters')
     resource_name = 'route'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(form_class=RouteModelForm)
     always_return_data = True
     filtering = {
         'director': ALL_WITH_RELATIONS,
         'clusters': ALL_WITH_RELATIONS,
         'condition': ['icontains']
     }
Esempio n. 15
0
 class Meta:
     queryset = Probe.objects.all()
     resource_name = 'probe'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(form_class=ProbeModelForm)
     always_return_data = True
     filtering = {
         'name': ['exact'],
         'url': ['exact'],
         'expected_response': ['exact']
     }
Esempio n. 16
0
 class Meta:
     queryset = TimeProfile.objects.all()
     resource_name = 'time_profile'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=TimeProfileModelForm)
     always_return_data = True
     filtering = {
         'max_connections': ['exact'],
         'connect_timeout': ['exact'],
         'first_byte_timeout': ['exact'],
         'between_bytes_timeout': ['exact']
     }
Esempio n. 17
0
 class Meta:
     queryset = Backend.objects.all()
     resource_name = 'backend'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=BackendModelForm)
     always_return_data = True
     filtering = {
         'dc': ALL_WITH_RELATIONS,
         'director': ALL_WITH_RELATIONS,
         'address': ['exact'],
         'port': ['exact']
     }
Esempio n. 18
0
 class Meta:
     queryset = VarnishServer.objects.select_related('dc').prefetch_related(
         'template', 'cluster').all()
     resource_name = 'varnish_server'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = VaasMultiAuthentication(ApiKeyAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=VarnishServerModelForm)
     always_return_data = True
     filtering = {
         'ip': ['exact'],
         'port': ['exact'],
         'http_port': ['exact'],
         'cluster': ['exact']
     }
Esempio n. 19
0
 class Meta:
     queryset = Director.objects.all()
     resource_name = 'director'
     serializer = PrettyJSONSerializer()
     authorization = DjangoAuthorization()
     authentication = MultiAuthentication(ApiKeyAuthentication(),
                                          SessionAuthentication())
     validation = ModelCleanedDataFormValidation(
         form_class=DirectorModelForm)
     always_return_data = True
     filtering = {
         'name': ['exact'],
         'enabled': ['exact'],
         'probe': ALL_WITH_RELATIONS,
         'cluster': ALL_WITH_RELATIONS
     }