feat: complete E2E deployment flow with storage layered config and values template versioning
- Instance deployment: charts browser, deploy modal, instances list - Values Template version management (create/history/rollback) - Storage layered config (cluster > workspace > shared priority) - Cluster credential decryptIfNeeded for mixed encrypted/plaintext kubeconfig - YAML syntax validation (client-side + server-side warning) - Frontend: charts, instances, storage, templates, admin pages - Backend: storage service, instance service, cluster service, helm client - Multi-Tenant Kubeconfig.md: added by user
This commit is contained in:
@ -156,6 +156,9 @@ func main() {
|
||||
storageService := service.NewStorageService(repos.StorageRepo)
|
||||
storageHandler := rest.NewStorageHandler(storageService)
|
||||
|
||||
// Wire storage service into instance service for layered storage config
|
||||
instanceService.SetStorageService(storageService)
|
||||
|
||||
// Chart Reference Handler
|
||||
chartRefService := service.NewChartReferenceService(repos.ChartRefRepo, repos.RegistryRepo)
|
||||
chartRefHandler := rest.NewChartReferenceHandler(chartRefService)
|
||||
@ -377,6 +380,7 @@ func setupRouter(
|
||||
// ===== Storage Backend 路由 =====
|
||||
api.HandleFunc("/storage-backends", storageHandler.CreateStorage).Methods(http.MethodPost)
|
||||
api.HandleFunc("/storage-backends", storageHandler.GetAllStorage).Methods(http.MethodGet)
|
||||
api.HandleFunc("/storage-backends/resolve", storageHandler.ResolveStorage).Methods(http.MethodGet)
|
||||
api.HandleFunc("/storage-backends/{storage_id}", storageHandler.GetStorage).Methods(http.MethodGet)
|
||||
api.HandleFunc("/storage-backends/{storage_id}", storageHandler.UpdateStorage).Methods(http.MethodPut)
|
||||
api.HandleFunc("/storage-backends/{storage_id}", storageHandler.DeleteStorage).Methods(http.MethodDelete)
|
||||
|
||||
Reference in New Issue
Block a user