Show specific schema version, handle errors
All checks were successful
Tests / test (push) Successful in 24s

This commit is contained in:
Tobias Kunze 2025-03-26 11:17:59 +01:00
parent 193b9761d0
commit 24e1ce8cb8
2 changed files with 10 additions and 5 deletions

View file

@ -324,6 +324,8 @@ class ServiceOfferingControlPlane(models.Model):
@cached_property
def resource_schema(self):
for version in self.resource_definition.spec.versions:
if self.service_definition.api_definition["version"] != version.name:
continue
if version.schema and version.schema.open_apiv3_schema:
schema_dict = kubernetes.client.ApiClient().sanitize_for_serialization(
version.schema.open_apiv3_schema

View file

@ -75,11 +75,14 @@ class ServiceOfferingDetailView(OrganizationViewMixin, HtmxViewMixin, DetailView
context["select_form"] = self.select_form
if "control_plane" in self.request.GET:
if self.select_form.is_valid():
so_cp = ServiceOfferingControlPlane.objects.filter(
control_plane=self.select_form.cleaned_data["control_plane"],
service_offering=self.object,
).first()
if not so_cp:
try:
so_cp = ServiceOfferingControlPlane.objects.filter(
control_plane=self.select_form.cleaned_data["control_plane"],
service_offering=self.object,
).first()
if not so_cp:
context["form_error"] = True
except Exception:
context["form_error"] = True
else:
context["service_form"] = so_cp.model_form_class()