diff --git a/src/nebari_plugin_self_registration/__about__.py b/src/nebari_plugin_self_registration/__about__.py index a73339b..00ec2dc 100644 --- a/src/nebari_plugin_self_registration/__about__.py +++ b/src/nebari_plugin_self_registration/__about__.py @@ -1 +1 @@ -__version__ = "0.0.8" +__version__ = "0.0.9" diff --git a/src/nebari_plugin_self_registration/__init__.py b/src/nebari_plugin_self_registration/__init__.py index 4686f60..68ccb71 100644 --- a/src/nebari_plugin_self_registration/__init__.py +++ b/src/nebari_plugin_self_registration/__init__.py @@ -20,7 +20,6 @@ class SelfRegistrationAffinitySelectorConfig(Base): app: Optional[str] = "" job: Optional[str] = "" - class SelfRegistrationAffinityConfig(Base): enabled: Optional[bool] = True selector: Union[SelfRegistrationAffinitySelectorConfig, str] = "general" @@ -168,6 +167,7 @@ def input_vars(self, stage_outputs: Dict[str, Dict[str, Any]]): else self.config.self_registration.affinity.selector ), }, + "cloud_provider": self.config.provider, "theme": self.config.theme.jupyterhub.dict(), } diff --git a/src/nebari_plugin_self_registration/terraform/main.tf b/src/nebari_plugin_self_registration/terraform/main.tf index 834a133..3d76909 100644 --- a/src/nebari_plugin_self_registration/terraform/main.tf +++ b/src/nebari_plugin_self_registration/terraform/main.tf @@ -28,5 +28,6 @@ module "self-registration" { overrides = var.overrides realm_id = var.realm_id affinity = var.affinity + cloud_provider = var.cloud_provider theme = var.theme } \ No newline at end of file diff --git a/src/nebari_plugin_self_registration/terraform/modules/self-registration/main.tf b/src/nebari_plugin_self_registration/terraform/modules/self-registration/main.tf index 31e384d..0ad94cf 100644 --- a/src/nebari_plugin_self_registration/terraform/modules/self-registration/main.tf +++ b/src/nebari_plugin_self_registration/terraform/modules/self-registration/main.tf @@ -12,6 +12,11 @@ locals { enabled = false selector = null } + + affinity_selector_key = { + aws = "eks.amazonaws.com/nodegroup" + gcp = "cloud.google.com/gke-nodepool" + } } resource "kubernetes_namespace" "this" { @@ -42,7 +47,7 @@ resource "helm_release" "self_registration" { { matchExpressions = [ { - key = "eks.amazonaws.com/nodegroup" + key = local.affinity_selector_key[var.cloud_provider] operator = "In" values = [local.affinity.selector.app] } @@ -60,7 +65,7 @@ resource "helm_release" "self_registration" { { matchExpressions = [ { - key = "eks.amazonaws.com/nodegroup" + key = local.affinity_selector_key[var.cloud_provider] operator = "In" values = [local.affinity.selector.job] } diff --git a/src/nebari_plugin_self_registration/terraform/modules/self-registration/variables.tf b/src/nebari_plugin_self_registration/terraform/modules/self-registration/variables.tf index 02a7905..421b272 100644 --- a/src/nebari_plugin_self_registration/terraform/modules/self-registration/variables.tf +++ b/src/nebari_plugin_self_registration/terraform/modules/self-registration/variables.tf @@ -84,8 +84,13 @@ variable "affinity" { } } + +variable "cloud_provider" { + type = string +} + variable "theme" { description = "Theme configured in theme.jupyterhub" type = map(any) default = {} -} \ No newline at end of file +} diff --git a/src/nebari_plugin_self_registration/terraform/variables.tf b/src/nebari_plugin_self_registration/terraform/variables.tf index a4b7a79..ae81d66 100644 --- a/src/nebari_plugin_self_registration/terraform/variables.tf +++ b/src/nebari_plugin_self_registration/terraform/variables.tf @@ -97,8 +97,17 @@ variable "affinity" { } } + +# GENERAL SETTINGS +# ----------------- +variable "cloud_provider" { + description = "Cloud provider where Nebari is deployed to" + type = string +} + variable "theme" { description = "Theme configured in theme.jupyterhub" type = map(any) default = {} + }