outposts: allow individual components of managed outposts to be disabled
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
		| @ -49,6 +49,9 @@ class KubernetesController(BaseController): | |||||||
|         try: |         try: | ||||||
|             all_logs = [] |             all_logs = [] | ||||||
|             for reconcile_key in self.reconcile_order: |             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: |                 with capture_logs() as logs: | ||||||
|                     reconciler = self.reconcilers[reconcile_key](self) |                     reconciler = self.reconcilers[reconcile_key](self) | ||||||
|                     reconciler.up() |                     reconciler.up() | ||||||
| @ -71,6 +74,9 @@ class KubernetesController(BaseController): | |||||||
|         try: |         try: | ||||||
|             all_logs = [] |             all_logs = [] | ||||||
|             for reconcile_key in self.reconcile_order: |             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: |                 with capture_logs() as logs: | ||||||
|                     reconciler = self.reconcilers[reconcile_key](self) |                     reconciler = self.reconcilers[reconcile_key](self) | ||||||
|                     reconciler.down() |                     reconciler.down() | ||||||
|  | |||||||
| @ -64,6 +64,7 @@ class OutpostConfig: | |||||||
|     kubernetes_ingress_annotations: dict[str, str] = field(default_factory=dict) |     kubernetes_ingress_annotations: dict[str, str] = field(default_factory=dict) | ||||||
|     kubernetes_ingress_secret_name: str = field(default="authentik-outpost-tls") |     kubernetes_ingress_secret_name: str = field(default="authentik-outpost-tls") | ||||||
|     kubernetes_service_type: str = field(default="ClusterIP") |     kubernetes_service_type: str = field(default="ClusterIP") | ||||||
|  |     kubernetes_disabled_components: list[str] = field(default_factory=list) | ||||||
|  |  | ||||||
|  |  | ||||||
| class OutpostModel(Model): | class OutpostModel(Model): | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 Jens Langhammer
					Jens Langhammer