From c3d5415f110aa17c668d54e4ac33a0a59cea7ba1 Mon Sep 17 00:00:00 2001 From: sayan1101 Date: Tue, 22 Aug 2023 13:38:51 +0530 Subject: [PATCH 1/2] fixed toolconfig update when installed from marketplace --- superagi/controllers/toolkit.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/superagi/controllers/toolkit.py b/superagi/controllers/toolkit.py index a61677bef..214a5b059 100644 --- a/superagi/controllers/toolkit.py +++ b/superagi/controllers/toolkit.py @@ -157,7 +157,7 @@ def install_toolkit_from_marketplace(toolkit_name: str, folder_name=tool['folder_name'], class_name=tool['class_name'], file_name=tool['file_name'], toolkit_id=db_toolkit.id) for config in toolkit['configs']: - ToolConfig.add_or_update(session=db.session, toolkit_id=db_toolkit.id, key=config['key'], value=config['value']) + ToolConfig.add_or_update(session=db.session, toolkit_id=db_toolkit.id, key=config['key'], value=config['value'], key_type = config['key_type'], is_secret = config['is_secret'], is_required = config['is_required']) return {"message": "ToolKit installed successfully"} @@ -364,4 +364,4 @@ def update_toolkit(toolkit_name: str, organisation: Organisation = Depends(get_u for tool_config_key in marketplace_toolkit["configs"]: ToolConfig.add_or_update(db.session, toolkit_id=update_toolkit.id, - key=tool_config_key["key"]) + key=tool_config_key["key"], key_type = tool_config_key['key_type'], is_secret = tool_config_key['is_secret'], is_required = tool_config_key['is_required']) From 793275c7b9b8609b0bc034ed90dbf973c194a8fc Mon Sep 17 00:00:00 2001 From: sayan1101 Date: Tue, 22 Aug 2023 14:16:15 +0530 Subject: [PATCH 2/2] toolconfig and toolkit test fix --- tests/unit_tests/controllers/test_toolkit.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tests/unit_tests/controllers/test_toolkit.py b/tests/unit_tests/controllers/test_toolkit.py index 0694c7666..68aef8c88 100644 --- a/tests/unit_tests/controllers/test_toolkit.py +++ b/tests/unit_tests/controllers/test_toolkit.py @@ -7,6 +7,7 @@ from superagi.models.organisation import Organisation from superagi.models.tool import Tool from superagi.models.tool_config import ToolConfig +from superagi.types.key_type import ToolConfigKeyType from superagi.models.toolkit import Toolkit client = TestClient(app) @@ -86,11 +87,18 @@ def mock_toolkit_details(): "configs": [ { "key": "config_key_1", - "value": "config_value_1" + "value": "config_value_1", + 'key_type': ToolConfigKeyType.STRING, + 'is_secret': True, + 'is_required': False }, { "key": "config_key_2", - "value": "config_value_2" + "value": "config_value_2", + 'key_type': ToolConfigKeyType.FILE, + 'is_secret': True, + 'is_required': False + } ] }