From 5039e011d52a0addbdc75d59bea39757a962a415 Mon Sep 17 00:00:00 2001 From: candiduslynx Date: Mon, 12 Feb 2024 14:00:35 +0200 Subject: [PATCH] feat: Implement `GetSpecSchema` plugin gRPC call --- cloudquery/sdk/internal/servers/plugin_v3/plugin.py | 3 +++ cloudquery/sdk/plugin/plugin.py | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/cloudquery/sdk/internal/servers/plugin_v3/plugin.py b/cloudquery/sdk/internal/servers/plugin_v3/plugin.py index 8bc561f..8246085 100644 --- a/cloudquery/sdk/internal/servers/plugin_v3/plugin.py +++ b/cloudquery/sdk/internal/servers/plugin_v3/plugin.py @@ -28,6 +28,9 @@ def GetName(self, request, context): def GetVersion(self, request, context): return plugin_pb2.GetVersion.Response(version=self._plugin.version()) + def GetSpecSchema(self, request, context): + return plugin_pb2.GetSpecSchema.Response(json_schema=self._plugin.json_schema()) + def Init(self, request: plugin_pb2.Init.Request, context): self._plugin.init(request.spec, no_connection=request.no_connection) return plugin_pb2.Init.Response() diff --git a/cloudquery/sdk/plugin/plugin.py b/cloudquery/sdk/plugin/plugin.py index ff20cd6..5b3d5f5 100644 --- a/cloudquery/sdk/plugin/plugin.py +++ b/cloudquery/sdk/plugin/plugin.py @@ -41,6 +41,7 @@ class Options: build_targets: List[BuildTarget] = None team: str = None kind: str = None + json_schema: str = None class Plugin: @@ -74,6 +75,9 @@ def team(self) -> str: def kind(self) -> str: return self._opts.kind + def json_schema(self) -> str: + return self._opts.json_schema + def dockerfile(self) -> str: return self._opts.dockerfile