From af64d5468f89f28177a5dbbefc96875e62e67cf5 Mon Sep 17 00:00:00 2001 From: Tobias Kunze Date: Tue, 25 Mar 2025 16:08:27 +0100 Subject: [PATCH] Implement CRD retrieval --- src/servala/core/models/service.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/servala/core/models/service.py b/src/servala/core/models/service.py index f1dc20b..b659b2d 100644 --- a/src/servala/core/models/service.py +++ b/src/servala/core/models/service.py @@ -310,6 +310,15 @@ class ServiceOfferingControlPlane(models.Model): def __str__(self): return f"{self.service_offering} on {self.control_plane} with {self.service_definition}" + def get_resource_definition(self): + client = self.control_plane.get_kubernetes_client() + api_instance = kubernetes.client.ApiextensionsV1Api(client) + kind = self.service_definition.api_definition["kind"].lower() + group = self.service_definition.api_definition["group"] + name = f"{kind}.{group}" + crd = api_instance.read_custom_resource_definition(name) + return crd + class ServiceOffering(models.Model): """