feat: Add initial Tenant traits and data structures #43
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/tenant"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
There is a bit of cleaning up to do but the general idea is advanced enough to be worth reviewing. Tell me what you think!
See https://git.nationtech.io/NationTech/harmony/src/branch/master/adr/011-multi-tenant-cluster.md for some background thoughts on this PR.
Also this for more of the thought process and the llm generated code directly https://poe.com/s/NG7MYgyqJiqiCsijyBnt
dc43be99fetobf16566b4eBAD
@@ -0,0 +60,4 @@/// * `tenant_name`: The logical name of the tenant to deprovision.async fn deprovision_tenant(&self, tenant_name: &str) -> Result<(), ExecutorError>;/// Lists the logical names of all tenants currently managed by this `TenantManager` instance.YAGNI
@@ -0,0 +8,4 @@pub struct TenantConfig {/// A unique, human-readable name for the tenant (e.g., "client-alpha", "project-phoenix")./// This will be used as the primary identifier for management operations.pub name: String,Tenant name can change. Our business context for this is typically a client or project name. Clients can change names, be bought, etc.
So, let's use an ID and have the name in addition for human-readable interactions.
@@ -0,0 +11,4 @@pub name: String,/// An optional description for the tenant.pub description: Option<String>,YAGNI
@@ -0,0 +22,4 @@/// Key-value pairs for provider-specific tagging, labeling, or metadata./// Useful for billing, organization, or filtering within the provider's console.pub labels_or_tags: HashMap<String, String>,// Note: User/group management for the tenant is deferred to a future ADR.Useless comments
@@ -0,0 +28,4 @@}#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]pub struct TenantContext {YAGNI
@@ -0,0 +58,4 @@/// Total persistent storage allocation in Gigabytes across all volumes.pub storage_total_gb: Option<u64>,/// Maximum number of distinct persistent volumes/claims.Delete from here
WIP: feat: Add initial Tenant traits and data structuresto feat: Add initial Tenant traits and data structures