cozystack/internal/controller
Kirill Ilin cb919f4c85
[dashboard] Add storageClass dropdown for stateful apps (#2131)
## What this PR does

Replaces the plain text input for `storageClass` fields with an
API-backed dropdown listing available StorageClasses from the cluster.
Follows the same pattern as the `instanceType` dropdown for VMInstance.

Affected applications:
- **Top-level `spec.storageClass`**: ClickHouse, Harbor, HTTPCache,
  Kubernetes, MariaDB, MongoDB, NATS, OpenBAO, Postgres, Qdrant,
  RabbitMQ, Redis, VMDisk
- **Nested `spec.storage.storageClass`**: FoundationDB
- **Nested `spec.kafka.storageClass` / `spec.zookeeper.storageClass`**:
Kafka

### Release note

```release-note
[dashboard] storageClass fields in stateful app forms now render as a
dropdown populated with available StorageClasses from the cluster,
instead of a free-text input.
```

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## Release Notes

* **New Features**
* Storage class selection dropdowns now available in configuration forms
for multiple database, messaging, and storage services.

* **Tests**
* Added comprehensive test coverage for storage class configuration
handling.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-03-02 23:55:12 +05:00
..
dashboard [dashboard] Add storageClass dropdown for stateful apps (#2131) 2026-03-02 23:55:12 +05:00
fluxplunger feat(platform): add flux-plunger controller 2026-01-19 13:20:08 +01:00
kubeovnplunger [kubeovn] Implement the KubeOVN plunger 2025-09-11 02:11:58 +03:00
applicationdefinition_controller.go [platform] Make cozystack-api reconciliation always use Deployment 2026-02-14 01:59:40 +01:00
applicationdefinition_helmreconciler.go refactor(labels): remove cozystack.io/ui label 2026-01-19 13:59:29 +01:00
suite_test.go Move project from aenix-io to cozystack repository 2025-03-10 21:16:58 +01:00
workload_controller.go [cozystack-controller] Refactor errors 2025-07-21 18:46:48 +02:00
workload_controller_test.go fix(controller): update workload test to use current label name 2026-02-18 00:49:57 +03:00
workloadmonitor_controller.go Apply suggestion from @gemini-code-assist[bot] 2026-02-02 15:52:25 +03:00