platform/web/views/fetch.py
Administrator 20448aa6b0 fetch
2024-02-11 14:22:01 +03:00

24 lines
870 B
Python

from django.http import HttpResponse, JsonResponse
from Platform import settings
from configs.models import Config
from experiments.models import Experiment
def fetch(request):
if request.headers.get("X-Security-Token") != settings.PLATFORM_SECURITY_TOKEN:
return HttpResponse('', status=403)
project = request.GET.get('project')
stage = request.GET.get('stage')
if project is None or stage is None:
return HttpResponse('', status=400)
configs = Config.objects.filter(stage=stage, project__name=project)
experiments = Experiment.objects.filter(stage=stage, project__name=project)
return JsonResponse(
data={
'configs': {config.name: config.data for config in configs},
'experiments': {experiment.name: experiment.condition for experiment in experiments}
},
safe=False,
)