From 219b8d1a573f56968bf63a23021981a4bac758d7 Mon Sep 17 00:00:00 2001 From: Jens Langhammer Date: Mon, 10 May 2021 19:27:48 +0200 Subject: [PATCH] outposts: allow individual components of managed outposts to be disabled Signed-off-by: Jens Langhammer --- authentik/outposts/controllers/kubernetes.py | 6 ++++++ authentik/outposts/models.py | 1 + 2 files changed, 7 insertions(+) diff --git a/authentik/outposts/controllers/kubernetes.py b/authentik/outposts/controllers/kubernetes.py index b13cc5315f..b412ee9859 100644 --- a/authentik/outposts/controllers/kubernetes.py +++ b/authentik/outposts/controllers/kubernetes.py @@ -49,6 +49,9 @@ class KubernetesController(BaseController): try: all_logs = [] for reconcile_key in self.reconcile_order: + if reconcile_key in self.outpost.config.kubernetes_disabled_components: + all_logs += [f"{reconcile_key.title()}: Disabled"] + continue with capture_logs() as logs: reconciler = self.reconcilers[reconcile_key](self) reconciler.up() @@ -71,6 +74,9 @@ class KubernetesController(BaseController): try: all_logs = [] for reconcile_key in self.reconcile_order: + if reconcile_key in self.outpost.config.kubernetes_disabled_components: + all_logs += [f"{reconcile_key.title()}: Disabled"] + continue with capture_logs() as logs: reconciler = self.reconcilers[reconcile_key](self) reconciler.down() diff --git a/authentik/outposts/models.py b/authentik/outposts/models.py index 9eb4cdce31..d7bbdf3005 100644 --- a/authentik/outposts/models.py +++ b/authentik/outposts/models.py @@ -64,6 +64,7 @@ class OutpostConfig: kubernetes_ingress_annotations: dict[str, str] = field(default_factory=dict) kubernetes_ingress_secret_name: str = field(default="authentik-outpost-tls") kubernetes_service_type: str = field(default="ClusterIP") + kubernetes_disabled_components: list[str] = field(default_factory=list) class OutpostModel(Model):