diff --git a/src/servala/api/views.py b/src/servala/api/views.py index 015e091..5fdb91a 100644 --- a/src/servala/api/views.py +++ b/src/servala/api/views.py @@ -239,9 +239,9 @@ The Servala Team""" service_offering = ServiceOffering.objects.get( osb_plan_id=plan_id, service=service ) - except Service.DoesNotExist: # pragma: no-cover + except Service.DoesNotExist: return self._error(f"Unknown service_id: {service_id}") - except ServiceOffering.DoesNotExist: # pragma: no-cover + except ServiceOffering.DoesNotExist: return self._error( f"Unknown plan_id: {plan_id} for service_id: {service_id}" ) @@ -284,7 +284,7 @@ The Servala Team""" if service_instance: organization = service_instance.organization - except Exception: # pragma: no cover + except Exception: pass description_parts = [f"Action: {action}", f"Service: {service.name}"] diff --git a/src/servala/core/crd/forms.py b/src/servala/core/crd/forms.py index 0f825ce..659684e 100644 --- a/src/servala/core/crd/forms.py +++ b/src/servala/core/crd/forms.py @@ -1,12 +1,10 @@ -from contextlib import suppress - from django import forms from django.core.validators import MaxValueValidator, MinValueValidator from django.forms.models import ModelForm, ModelFormMetaclass from servala.core.crd.utils import deslugify from servala.core.models import ControlPlaneCRD -from servala.frontend.forms.widgets import DynamicArrayWidget, NumberInputWithAddon +from servala.frontend.forms.widgets import DynamicArrayWidget # Fields that must be present in every form MANDATORY_FIELDS = ["name"] @@ -27,11 +25,6 @@ DEFAULT_FIELD_CONFIGS = { "help_text": "Domain names for accessing this service", "required": False, }, - "spec.parameters.size.disk": { - "type": "number", - "label": "Disk size", - "addon_text": "Gi", - }, } @@ -342,19 +335,6 @@ class CustomFormMixin(FormGeneratorMixin): if field_type == "number": min_val = field_config.get("min_value") max_val = field_config.get("max_value") - unit = field_config.get("addon_text") - - if unit: - field.widget = NumberInputWithAddon(addon_text=unit) - field.addon_text = unit - value = self.initial.get(field_name) - if value and isinstance(value, str) and value.endswith(unit): - numeric_value = value[: -len(unit)] - with suppress(ValueError): - if "." in numeric_value: - self.initial[field_name] = float(numeric_value) - else: - self.initial[field_name] = int(numeric_value) validators = [] if min_val is not None: @@ -426,11 +406,6 @@ class CustomFormMixin(FormGeneratorMixin): mapping = field_name value = self.cleaned_data.get(field_name) - field = self.fields[field_name] - - if addon_text := getattr(field, "addon_text", None): - value = f"{value}{addon_text}" - parts = mapping.split(".") current = nested for part in parts[:-1]: diff --git a/src/servala/frontend/forms/widgets.py b/src/servala/frontend/forms/widgets.py index 99b7a59..d67030f 100644 --- a/src/servala/frontend/forms/widgets.py +++ b/src/servala/frontend/forms/widgets.py @@ -2,7 +2,6 @@ import json from django import forms from django.core.exceptions import ValidationError -from django.forms.widgets import NumberInput class DynamicArrayWidget(forms.Widget): @@ -217,21 +216,3 @@ class DynamicArrayField(forms.JSONField): raise ValidationError( f"Item {i + 1} must be one of: {', '.join(enum_values)}" ) - - -class NumberInputWithAddon(NumberInput): - """ - Widget for number input fields with a suffix add-on (e.g., "Gi", "MB"). - Renders as a Bootstrap input-group with the suffix displayed as an add-on. - """ - - template_name = "frontend/forms/number_input_with_addon.html" - - def __init__(self, addon_text="", attrs=None): - super().__init__(attrs) - self.addon_text = addon_text - - def get_context(self, name, value, attrs): - context = super().get_context(name, value, attrs) - context["widget"]["addon_text"] = self.addon_text - return context diff --git a/src/servala/frontend/templates/frontend/forms/number_input_with_addon.html b/src/servala/frontend/templates/frontend/forms/number_input_with_addon.html deleted file mode 100644 index 4fe3b54..0000000 --- a/src/servala/frontend/templates/frontend/forms/number_input_with_addon.html +++ /dev/null @@ -1,11 +0,0 @@ -