- 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
15 lines
916 B
SQL
15 lines
916 B
SQL
-- Migration: Add cluster_id to storage_backends for layered storage config
|
|
-- This enables storage backends to be associated with specific clusters
|
|
-- Priority order: User Override > Workspace Default > Cluster Default > Shared Storage
|
|
|
|
-- Add cluster_id column to storage_backends table
|
|
ALTER TABLE storage_backends ADD COLUMN IF NOT EXISTS cluster_id VARCHAR(36) REFERENCES clusters(id) ON DELETE SET NULL;
|
|
|
|
-- Index for faster lookups by cluster
|
|
CREATE INDEX IF NOT EXISTS idx_storage_backends_cluster ON storage_backends(cluster_id);
|
|
|
|
-- Composite index for cluster + default storage lookup
|
|
CREATE INDEX IF NOT EXISTS idx_storage_backends_default_cluster ON storage_backends(cluster_id, is_default) WHERE cluster_id IS NOT NULL;
|
|
|
|
-- Add comment for documentation
|
|
COMMENT ON COLUMN storage_backends.cluster_id IS 'Associated cluster ID for cluster-level default storage. NULL means workspace or shared storage.'; |