From 9b81d5e02d4e3132e792876e2b26745dc15404d8 Mon Sep 17 00:00:00 2001 From: allegroai <> Date: Wed, 2 Jun 2021 14:18:39 +0300 Subject: [PATCH] Fix passing --id and --project/--name --- clearml_serving/__main__.py | 8 +++++--- clearml_serving/serving_service.py | 14 ++++++++++---- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/clearml_serving/__main__.py b/clearml_serving/__main__.py index c976d0c..2986181 100644 --- a/clearml_serving/__main__.py +++ b/clearml_serving/__main__.py @@ -13,7 +13,9 @@ def restore_state(args): state = json.load(f) except Exception: state = {} - + # store command line passed ID + args.cmd_id = getattr(args, 'id', None) + # restore ID from state args.id = getattr(args, 'id', None) or state.get('id') return args @@ -37,8 +39,8 @@ def cmd_triton(args): if not args.id and not args.name: raise ValueError("Serving service must have a name, use --name ") - if args.id and not args.project and not args.name: - a_serving = ServingService(task_id=args.id) + if args.cmd_id or (args.id and not args.project and not args.name): + a_serving = ServingService(task_id=args.cmd_id or args.id) else: a_serving = ServingService(task_project=args.project, task_name=args.name, engine_type='triton') args.id = a_serving.get_id() diff --git a/clearml_serving/serving_service.py b/clearml_serving/serving_service.py index dc7659e..bc2692e 100644 --- a/clearml_serving/serving_service.py +++ b/clearml_serving/serving_service.py @@ -45,10 +45,16 @@ class ServingService(object): elif task_id: self._task = Task.get_task(task_id=task_id) else: - # noinspection PyProtectedMember - if Task._query_tasks(project_name=task_project, task_name=task_name): - self._task = Task.get_task(project_name=task_project, task_name=task_name) - else: + # try to get a Task if we can find one + self._task = None + try: + # noinspection PyProtectedMember + if Task._query_tasks(project_name=task_project, task_name=task_name): + self._task = Task.get_task(project_name=task_project, task_name=task_name) + except ValueError: + pass + + if not self._task: self._task = Task.create( project_name=task_project, task_name=task_name, task_type=Task.TaskTypes.service, repo="https://github.com/allegroai/clearml-serving.git",