Dynamic service ordering forms #27

Merged
rixx merged 14 commits from 14-dynamic-service-ordering-forms into main 2025-03-26 14:43:16 +00:00
2 changed files with 10 additions and 5 deletions
Showing only changes of commit 24e1ce8cb8 - Show all commits

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,12 +75,15 @@ class ServiceOfferingDetailView(OrganizationViewMixin, HtmxViewMixin, DetailView
context["select_form"] = self.select_form
if "control_plane" in self.request.GET:
if self.select_form.is_valid():
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()
return context