synapse-sdk 1.0.0a8__py3-none-any.whl → 1.0.0a9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of synapse-sdk might be problematic. Click here for more details.

@@ -1,21 +1,23 @@
1
+ from synapse_sdk.clients.agent.core import CoreClientMixin
1
2
  from synapse_sdk.clients.agent.service import ServiceClientMixin
2
3
 
3
4
 
4
- class AgentClient(ServiceClientMixin):
5
+ class AgentClient(CoreClientMixin, ServiceClientMixin):
5
6
  name = 'Agent'
6
7
  agent_token = None
7
8
  user_token = None
8
9
  tenant = None
9
10
 
10
- def __init__(self, base_url, agent_token, user_token, tenant):
11
+ def __init__(self, base_url, agent_token, user_token=None, tenant=None):
11
12
  super().__init__(base_url)
12
13
  self.agent_token = agent_token
13
14
  self.user_token = user_token
14
15
  self.tenant = tenant
15
16
 
16
17
  def _get_headers(self):
17
- return {
18
- 'Authorization': self.agent_token,
19
- 'SYNAPSE-User': f'Token {self.user_token}',
20
- 'SYNAPSE-Tenant': f'Token {self.tenant}',
21
- }
18
+ headers = {'Authorization': self.agent_token}
19
+ if self.user_token:
20
+ headers['SYNAPSE-User'] = f'Token {self.user_token}'
21
+ if self.tenant:
22
+ headers['SYNAPSE-Tenant'] = f'Token {self.tenant}'
23
+ return headers
@@ -0,0 +1,7 @@
1
+ from synapse_sdk.clients.base import BaseClient
2
+
3
+
4
+ class CoreClientMixin(BaseClient):
5
+ def health_check(self):
6
+ path = 'health/'
7
+ return self._get(path)
@@ -9,14 +9,15 @@ class BackendClient(AnnotationClientMixin, DatasetClientMixin, IntegrationClient
9
9
  token = None
10
10
  tenant = None
11
11
 
12
- def __init__(self, base_url, token, tenant=None):
12
+ def __init__(self, base_url, token=None, tenant=None):
13
13
  super().__init__(base_url)
14
14
  self.token = token
15
- if tenant:
16
- self.tenant = tenant
15
+ self.tenant = tenant
17
16
 
18
17
  def _get_headers(self):
19
- headers = {'Authorization': f'Token {self.token}'}
18
+ headers = {}
19
+ if self.token:
20
+ headers = {'Authorization': f'Token {self.token}'}
20
21
  if self.tenant:
21
22
  headers['SYNAPSE-Tenant'] = f'Token {self.tenant}'
22
23
  return headers
@@ -2,6 +2,10 @@ from synapse_sdk.clients.base import BaseClient
2
2
 
3
3
 
4
4
  class IntegrationClientMixin(BaseClient):
5
+ def health_check_agent(self, token):
6
+ path = f'agents/{token}/connect/'
7
+ return self._post(path)
8
+
5
9
  def get_plugin(self, pk):
6
10
  path = f'plugins/{pk}/'
7
11
  return self._get(path)
@@ -50,7 +50,10 @@ class BaseClient:
50
50
  except requests.ConnectionError:
51
51
  raise ClientError(408, f'{self.name} is not responding')
52
52
 
53
- return response.json()
53
+ try:
54
+ return response.json()
55
+ except ValueError:
56
+ return response.text
54
57
 
55
58
  def _get(self, path, url_conversion=None, **kwargs):
56
59
  response = self._request('get', path, **kwargs)
@@ -74,7 +74,7 @@ class Action:
74
74
  @property
75
75
  def plugin_url(self):
76
76
  if self.debug:
77
- plugin_path = self.envs.get('SYNAPSE_DEBUG_PLUGIN_PATH', '.')
77
+ plugin_path = self.envs.get('SYNAPSE_DEBUG_PLUGIN_PATH') or '.'
78
78
  if plugin_path.startswith('https://'): # TODO ray에서 지원하는 remote uri 형식 (https, s3, gs) 모두 지원
79
79
  plugin_url = plugin_path
80
80
  elif plugin_path.startswith('http://'):
@@ -0,0 +1,24 @@
1
+ # RAY 관련
2
+ RAY_ADDRESS=
3
+ RAY_DASHBOARD_ADDRESS=
4
+ RAY_SERVE_ADDRESS=
5
+
6
+ # 플러그인 관련
7
+ SYNAPSE_PLUGIN_STORAGE=
8
+
9
+ # 플러그인 디버그 관련
10
+ SYNAPSE_DEBUG_PLUGIN_PATH=
11
+ SYNAPSE_DEBUG_MODULES=
12
+
13
+ # 플러그인 PUBLISH 관련
14
+ SYNAPSE_PLUGIN_PUBLISH_HOST=https://synapse.datamaker.io
15
+ SYNAPSE_PLUGIN_PUBLISH_USER_TOKEN=
16
+ SYNAPSE_PLUGIN_PUBLISH_TENANT=
17
+
18
+ # 플러그인 RUN 관련
19
+ SYNAPSE_PLUGIN_RUN_HOST=
20
+ SYNAPSE_PLUGIN_RUN_AGENT=
21
+ SYNAPSE_PLUGIN_RUN_AGENT_HOST=
22
+ SYNAPSE_PLUGIN_RUN_AGENT_TOKEN=
23
+ SYNAPSE_PLUGIN_RUN_USER_TOKEN=
24
+ SYNAPSE_PLUGIN_RUN_TENANT=
@@ -0,0 +1,4 @@
1
+ from synapse_sdk import plugins
2
+
3
+ if __name__ == '__main__':
4
+ plugins.init()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: synapse-sdk
3
- Version: 1.0.0a8
3
+ Version: 1.0.0a9
4
4
  Summary: synapse sdk
5
5
  Author-email: datamaker <developer@datamaker.io>
6
6
  License: MIT
@@ -3,15 +3,16 @@ synapse_sdk/loggers.py,sha256=avoceBBu9VuSNS_CC3M5X8rWmAlk5xCTYEAVqxAXzBM,4008
3
3
  synapse_sdk/cli/__init__.py,sha256=WmYGW1qZEXXIGJe3SGr8QjOStY4svuZKK1Lp_aPvtPs,140
4
4
  synapse_sdk/cli/create_plugin.py,sha256=egbW_92WwxfHz50Gy4znX5Bf5fxDdQj3GFyd0l3Y3SY,228
5
5
  synapse_sdk/clients/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- synapse_sdk/clients/base.py,sha256=HfUJDP5FerRkiCJ0eaAZvs4F_kv73PtZ5FSnz_lKV0o,3069
6
+ synapse_sdk/clients/base.py,sha256=vVt6Qi3R3lVnzCTD0WMRDYw99u2d1SMAqDXgkcvq4VM,3146
7
7
  synapse_sdk/clients/exceptions.py,sha256=ylv7x10eOp4aA3a48jwonnvqvkiYwzJYXjkVkRTAjwk,220
8
8
  synapse_sdk/clients/utils.py,sha256=8pPJTdzHiRPSbZMoQYHAgR2BAMO6u_R_jMV6a2p34iQ,392
9
- synapse_sdk/clients/agent/__init__.py,sha256=n4exZwc8gwuH6zqZUhstcD_sqIdm-ZoPvUcAxnCrnOQ,609
9
+ synapse_sdk/clients/agent/__init__.py,sha256=k5cGnN-dUAYYfeQDiRW4XEFWUgwSH9mwJFcvjzgwpOc,768
10
+ synapse_sdk/clients/agent/core.py,sha256=YicfkO0YvjDDOt1jNWoZ0mokrh8xxKibBL4qF5yOjKs,169
10
11
  synapse_sdk/clients/agent/service.py,sha256=NnRu0XPVRqry6PWN_8-3iuzdXx20zO1lPXw-yVWQbdg,1433
11
- synapse_sdk/clients/backend/__init__.py,sha256=850EjxNoGWXJpVZLRIaajrymBuW0MXiP3M3onRHDGbQ,800
12
+ synapse_sdk/clients/backend/__init__.py,sha256=SVC7kDO_z_4YqpLDR-O_RrrxJFkWmMhJC8Hl_Mc5Sz4,830
12
13
  synapse_sdk/clients/backend/annotation.py,sha256=eZc5EidgR_RfMGwvv1r1_mLkPdRd8e52c4zuuMjMX34,979
13
14
  synapse_sdk/clients/backend/dataset.py,sha256=X8R71vff1gLytlEaOnKhBWjVQaZcIG_WYy32new4Vq0,1737
14
- synapse_sdk/clients/backend/integration.py,sha256=wYfxRI2miZIwC1n7JoVRuSeq1cw5FkNIpKMxcMjj-b0,1628
15
+ synapse_sdk/clients/backend/integration.py,sha256=Z0Vvhp4NsbP4W9esTH_0SDrPkzHy84t1joSinvtjWgI,1744
15
16
  synapse_sdk/clients/backend/ml.py,sha256=SwA4_noRCZ1dVIzyXfrs2zHuRlQZdZt17o1We5QOxl8,1053
16
17
  synapse_sdk/plugins/__init__.py,sha256=9vsbYhxah4_ofTaG0x0qLFID_raHNkO57Y8A31Ws-lU,222
17
18
  synapse_sdk/plugins/enums.py,sha256=s59P6Oz2WAK9IX-kLVhNOvNKYJifKlWBhPpZbc9-ttE,486
@@ -20,7 +21,7 @@ synapse_sdk/plugins/models.py,sha256=pzzJl9zKL8v2XjBQC0UR-W9rG4Vyp95DzJ9MMG2W5L0
20
21
  synapse_sdk/plugins/upload.py,sha256=SSCHUR4HJ_mdLN7mUkk5UlXmL9028SKP6tpBS2rpf0A,3175
21
22
  synapse_sdk/plugins/utils.py,sha256=n3s-zFnj4hrGWFtaBTJFbaupI8qUQL6S8_5YcbxOmeY,1482
22
23
  synapse_sdk/plugins/categories/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- synapse_sdk/plugins/categories/base.py,sha256=QBC96T0VIe-Lp63itjh0E13dgRriU7FT4_xZw7-7Zw8,7060
24
+ synapse_sdk/plugins/categories/base.py,sha256=8WhcLa406V3rR31byhueQssRKeJsoO-kFWGzpre7O20,7062
24
25
  synapse_sdk/plugins/categories/decorators.py,sha256=Gw6T-UHwpCKrSt596X-g2sZbY_Z1zbbogowClj7Pr5Q,518
25
26
  synapse_sdk/plugins/categories/registry.py,sha256=KdQR8SUlLT-3kgYzDNWawS1uJnAhrcw2j4zFaTpilRs,636
26
27
  synapse_sdk/plugins/categories/templates.py,sha256=FF5FerhkZMeW1YcKLY5cylC0SkWSYdJODA_Qcm4OGYQ,887
@@ -71,11 +72,13 @@ synapse_sdk/plugins/cli/run.py,sha256=lw1KbsL-xTGllF4NtD2cq-Rh6HMbhi-sO862_Ds-sU
71
72
  synapse_sdk/plugins/templates/cookiecutter.json,sha256=NxOWk9A_v1pO0Ny4IYT9Cj5iiJ16--cIQrGC67QdR0I,396
72
73
  synapse_sdk/plugins/templates/hooks/post_gen_project.py,sha256=jqlYkY1O2TxIR-Vh3gnwILYy8k-D39Xx66d2KNQVMCs,147
73
74
  synapse_sdk/plugins/templates/hooks/pre_prompt.py,sha256=aOAMM623s0sKFGjTZaotAOYFvsNMxeii4tPyhOAFKVE,539
75
+ synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.env,sha256=YlAG5YKwFEiwKm5NUbPsqvOJ9FJKoN0lbT3sxymBJpE,551
74
76
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.env.dist,sha256=YlAG5YKwFEiwKm5NUbPsqvOJ9FJKoN0lbT3sxymBJpE,551
75
77
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.gitignore,sha256=RvBmUbwmzgv0vYzYk2aQ0HpvKyPj6sCpBqsrthCuA4s,243
76
78
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.pre-commit-config.yaml,sha256=p0yZwCUC8tYS1B0GPkjKiXYoRY9EZlq_ejFP98hB50g,154
77
79
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/README.md,sha256=ETBZv_2Ocgzn4Fe3o5Y842mZiz00ABuAalrXpNVnWU0,56
78
80
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml,sha256=CRfKjPJ6K2UlYbcHMSAYUGzn2TGmV7kDbZmKHwNuq3w,210
81
+ synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/main.py,sha256=fPFaIPBwskS84YvnmDGERXn3wC5z_yV_f4NbisVvBfQ,79
79
82
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/pyproject.toml,sha256=Usgd80tHZAD1Ug5MAjPfETUZxtKKgZW-xovFEAEbQDo,317
80
83
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt,sha256=F5UwinpTLQFfyakFGTFxgBOo4H-EKD9d4e77WKOPHhk,17
81
84
  synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/plugin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -89,9 +92,9 @@ synapse_sdk/utils/pydantic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
89
92
  synapse_sdk/utils/pydantic/config.py,sha256=1vYOcUI35GslfD1rrqhFkNXXJOXt4IDqOPSx9VWGfNE,123
90
93
  synapse_sdk/utils/pydantic/errors.py,sha256=0v0T12eQBr1KrFiEOBu6KMaPK4aPEGEC6etPJGoR5b4,1061
91
94
  synapse_sdk/utils/pydantic/validators.py,sha256=G47P8ObPhsePmd_QZDK8EdPnik2CbaYzr_N4Z6En8dc,193
92
- synapse_sdk-1.0.0a8.dist-info/LICENSE,sha256=bKzmC5YAg4V1Fhl8OO_tqY8j62hgdncAkN7VrdjmrGk,1101
93
- synapse_sdk-1.0.0a8.dist-info/METADATA,sha256=-qf5IZO1tU5DNWmiT4BMVD_26XoKjF3KaFsAfceIRx8,567
94
- synapse_sdk-1.0.0a8.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
95
- synapse_sdk-1.0.0a8.dist-info/entry_points.txt,sha256=VNptJoGoNJI8yLXfBmhgUefMsmGI0m3-0YoMvrOgbxo,48
96
- synapse_sdk-1.0.0a8.dist-info/top_level.txt,sha256=ytgJMRK1slVOKUpgcw3LEyHHP7S34J6n_gJzdkcSsw8,12
97
- synapse_sdk-1.0.0a8.dist-info/RECORD,,
95
+ synapse_sdk-1.0.0a9.dist-info/LICENSE,sha256=bKzmC5YAg4V1Fhl8OO_tqY8j62hgdncAkN7VrdjmrGk,1101
96
+ synapse_sdk-1.0.0a9.dist-info/METADATA,sha256=4pnZMrqZytZAvodVHryUt8WTbLnPwreD2iYPr7XTvvE,567
97
+ synapse_sdk-1.0.0a9.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
98
+ synapse_sdk-1.0.0a9.dist-info/entry_points.txt,sha256=VNptJoGoNJI8yLXfBmhgUefMsmGI0m3-0YoMvrOgbxo,48
99
+ synapse_sdk-1.0.0a9.dist-info/top_level.txt,sha256=ytgJMRK1slVOKUpgcw3LEyHHP7S34J6n_gJzdkcSsw8,12
100
+ synapse_sdk-1.0.0a9.dist-info/RECORD,,