cloudquery-plugin-sdk 0.1.22__tar.gz → 0.1.24__tar.gz

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.
Files changed (58) hide show
  1. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/PKG-INFO +1 -1
  2. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/memdb/memdb.py +14 -0
  3. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/plugin_v3/plugin.py +7 -1
  4. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scheduler/scheduler.py +6 -0
  5. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/PKG-INFO +1 -1
  6. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/setup.py +1 -1
  7. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/README.md +0 -0
  8. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/__init__.py +0 -0
  9. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/__init__.py +0 -0
  10. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/memdb/__init__.py +0 -0
  11. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/__init__.py +0 -0
  12. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/discovery_v1/__init__.py +0 -0
  13. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/discovery_v1/discovery.py +0 -0
  14. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/internal/servers/plugin_v3/__init__.py +0 -0
  15. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/message/__init__.py +0 -0
  16. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/message/sync.py +0 -0
  17. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/message/write.py +0 -0
  18. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/plugin/__init__.py +0 -0
  19. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/plugin/plugin.py +0 -0
  20. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/py.typed +0 -0
  21. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/__init__.py +0 -0
  22. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/binary.py +0 -0
  23. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/bool.py +0 -0
  24. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/date32.py +0 -0
  25. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/date64.py +0 -0
  26. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/float.py +0 -0
  27. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/int.py +0 -0
  28. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/json.py +0 -0
  29. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/list.py +0 -0
  30. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/scalar.py +0 -0
  31. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/scalar_factory.py +0 -0
  32. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/string.py +0 -0
  33. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/timestamp.py +0 -0
  34. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/uint.py +0 -0
  35. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/uuid.py +0 -0
  36. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scalar/vector.py +0 -0
  37. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scheduler/__init__.py +0 -0
  38. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/scheduler/table_resolver.py +0 -0
  39. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/__init__.py +0 -0
  40. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/arrow.py +0 -0
  41. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/column.py +0 -0
  42. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/resource.py +0 -0
  43. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/schema/table.py +0 -0
  44. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/serve/__init__.py +0 -0
  45. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/serve/plugin.py +0 -0
  46. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/transformers/__init__.py +0 -0
  47. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/transformers/openapi.py +0 -0
  48. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/transformers/transformers.py +0 -0
  49. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/types/__init__.py +0 -0
  50. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/types/json.py +0 -0
  51. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery/sdk/types/uuid.py +0 -0
  52. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/SOURCES.txt +0 -0
  53. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/dependency_links.txt +0 -0
  54. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/namespace_packages.txt +0 -0
  55. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/not-zip-safe +0 -0
  56. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/requires.txt +0 -0
  57. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/cloudquery_plugin_sdk.egg-info/top_level.txt +0 -0
  58. {cloudquery_plugin_sdk-0.1.22 → cloudquery_plugin_sdk-0.1.24}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudquery-plugin-sdk
3
- Version: 0.1.22
3
+ Version: 0.1.24
4
4
  Summary: CloudQuery Plugin SDK for Python
5
5
  Home-page: https://github.com/cloudquery/plugin-sdk-python
6
6
  Author: CloudQuery LTD
@@ -1,14 +1,22 @@
1
+ import json
2
+
1
3
  from cloudquery.sdk import plugin
2
4
  from cloudquery.sdk import message
3
5
  from cloudquery.sdk import schema
4
6
  from typing import List, Generator, Dict
5
7
  import pyarrow as pa
6
8
  from cloudquery.sdk.types import JSONType
9
+ from dataclasses import dataclass, field
7
10
 
8
11
  NAME = "memdb"
9
12
  VERSION = "development"
10
13
 
11
14
 
15
+ @dataclass
16
+ class Spec:
17
+ abc: str = field(default="abc")
18
+
19
+
12
20
  class MemDB(plugin.Plugin):
13
21
  def __init__(self) -> None:
14
22
  super().__init__(
@@ -73,6 +81,12 @@ class MemDB(plugin.Plugin):
73
81
  ),
74
82
  }
75
83
 
84
+ def init(self, spec, no_connection: bool = False):
85
+ if no_connection:
86
+ return
87
+ self._spec_json = json.loads(spec)
88
+ self._spec = Spec(**self._spec_json)
89
+
76
90
  def get_tables(self, options: plugin.TableOptions = None) -> List[plugin.Table]:
77
91
  tables = list(self._tables.values())
78
92
  return schema.filter_dfs(tables, options.tables, options.skip_tables)
@@ -32,7 +32,9 @@ class PluginServicer(plugin_pb2_grpc.PluginServicer):
32
32
  return plugin_pb2.GetSpecSchema.Response(json_schema=self._plugin.json_schema())
33
33
 
34
34
  def Init(self, request: plugin_pb2.Init.Request, context):
35
- self._plugin.init(request.spec, no_connection=request.no_connection)
35
+ self._plugin.init(
36
+ sanitize_spec(request.spec), no_connection=request.no_connection
37
+ )
36
38
  return plugin_pb2.Init.Response()
37
39
 
38
40
  def GetTables(self, request: plugin_pb2.GetTables.Request, context):
@@ -113,3 +115,7 @@ class PluginServicer(plugin_pb2_grpc.PluginServicer):
113
115
  def Close(self, request, context):
114
116
  self._plugin.close()
115
117
  return plugin_pb2.Close.Response()
118
+
119
+
120
+ def sanitize_spec(spec=None):
121
+ return b"{}" if spec is None or spec == b"" or spec == b"null" else spec
@@ -116,6 +116,12 @@ class Scheduler:
116
116
  depth=depth,
117
117
  exc_info=e,
118
118
  )
119
+ self._logger.debug(
120
+ "details about resource that failed to resolve",
121
+ client_id=client.id(),
122
+ table=resolver.table.name,
123
+ resource=item,
124
+ )
119
125
  continue
120
126
  res.put(SyncInsertMessage(resource.to_arrow_record()))
121
127
  for child_resolvers in resolver.child_resolvers:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudquery-plugin-sdk
3
- Version: 0.1.22
3
+ Version: 0.1.24
4
4
  Summary: CloudQuery Plugin SDK for Python
5
5
  Home-page: https://github.com/cloudquery/plugin-sdk-python
6
6
  Author: CloudQuery LTD
@@ -51,7 +51,7 @@ packages = [
51
51
  ]
52
52
  setuptools.setup(
53
53
  name=name,
54
- version="0.1.22",
54
+ version="0.1.24",
55
55
  description=description,
56
56
  long_description=long_description,
57
57
  author="CloudQuery LTD",