From 78c2fa283a85724fff6e9960b25d39a5b9c36add Mon Sep 17 00:00:00 2001 From: dvanaken Date: Fri, 3 Apr 2020 01:22:39 -0400 Subject: [PATCH] Return http error if views.give_result() is called and it's not a tuning session and updated .gitignore --- server/website/.gitignore | 1 + server/website/website/views.py | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/server/website/.gitignore b/server/website/.gitignore index a7fa9a3..31a5175 100644 --- a/server/website/.gitignore +++ b/server/website/.gitignore @@ -14,3 +14,4 @@ celerybeat-schedule* debug_*.tar.gz session_knobs.json dump_website.json +.info diff --git a/server/website/website/views.py b/server/website/website/views.py index 1891cce..c9e25b0 100644 --- a/server/website/website/views.py +++ b/server/website/website/views.py @@ -1217,6 +1217,12 @@ def give_result(request, upload_code): # pylint: disable=unused-argument LOG.warning("Invalid upload code: %s", upload_code) return HttpResponse("Invalid upload code: " + upload_code, status=400) + if session.tuning_session == 'no_tuning_session': + err_msg = "Session type '{}' does not generate configurations (upload only)".format( + session.get_tuning_session_display()) + LOG.warning(err_msg) + return HttpResponse(err_msg, status=404) + latest_result = Result.objects.filter(session=session).latest('creation_time') task_tuple = JSONUtil.loads(latest_result.task_ids) task_res = celery.result.result_from_tuple(task_tuple) @@ -1295,7 +1301,7 @@ def train_ddpg_loops(request, session_id): # pylint: disable=unused-argument def alt_get_info(request, name): # pylint: disable=unused-argument # Backdoor method for getting basic info if name in ('website', 'logs'): - tmpdir = os.path.realpath('.info_{}'.format(int(time.time()))) + tmpdir = os.path.realpath('.info/info_{}'.format(int(time.time()))) os.makedirs(tmpdir, exist_ok=False) try: