cozystack/internal
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
..
backupcontroller refactor: rename mysql application to mariadb 2026-02-12 15:15:20 +01:00
controller [dashboard] Add storageClass dropdown for stateful apps (#2131) 2026-03-02 23:55:12 +05:00
cozyvaluesreplicator Improve Reconcile function 2026-01-06 18:53:17 +03:00
crdinstall fix(operator): validate CRD apiVersion, respect SIGTERM during install 2026-02-18 00:49:56 +03:00
fluxinstall refactor(operator): extract shared manifest utils from crdinstall and fluxinstall 2026-02-18 00:49:56 +03:00
lineagecontrollerwebhook refactor(api): rename CozystackResourceDefinition to ApplicationDefinition 2026-01-15 22:35:56 +01:00
manifestutil fix(manifestutil): check apiVersion in CollectCRDNames for consistent GVK matching 2026-02-18 00:49:57 +03:00
operator fix(operator): resolve namespace privileged flag by checking all Packages 2026-02-13 17:09:12 +01:00
shared/crdmem refactor(api): rename CozystackResourceDefinition to ApplicationDefinition 2026-01-15 22:35:56 +01:00
sse [kubeovn] Implement the KubeOVN plunger 2025-09-11 02:11:58 +03:00
telemetry fix(telemetry): use APIReader instead of cached client in operator 2026-01-27 18:06:30 +01:00
template [backups] Add templating of velero backups 2026-01-04 13:31:15 +03:00