]> git.eshelyaron.com Git - kubed.git/commitdiff
Update default namespace when setting namespace for default context master
authorEshel Yaron <me@eshelyaron.com>
Sat, 28 Jun 2025 10:17:32 +0000 (12:17 +0200)
committerEshel Yaron <me@eshelyaron.com>
Sat, 28 Jun 2025 10:17:32 +0000 (12:17 +0200)
* kubed.el (kubed-set-namespace): Update
'kubed-default-context-and-namespace' when setting the
default namespace for the default context.

See https://github.com/eshelyaron/kubed/issues/12#issuecomment-3013004972

kubed.el

index f28a5e3dfcd176462b1ebf83119fb838f586aeb8..6feda9c3fc4cadd3bab17b345b68997a5c8d155e 100644 (file)
--- a/kubed.el
+++ b/kubed.el
@@ -2605,17 +2605,18 @@ prefix argument, prompt for CONTEXT as well."
      (list (kubed-read-namespace "Set namespace" (kubed--namespace context)
                                  nil context)
            context)))
-  (unless (zerop
-           (call-process
-            kubed-kubectl-program nil nil nil
-            "config" "set-context" (or context "--current")
-            "--namespace" namespace))
-    (user-error "Failed to set Kubernetes namespace to `%s'" namespace))
-  (message "Default Kubernetes namespace%s is now `%s'."
-           (if context
-               (substitute-quotes (concat " for context `" context "'"))
-             "")
-           namespace))
+  (let ((context (or context (kubed-local-context))))
+    (unless (zerop
+             (call-process
+              kubed-kubectl-program nil nil nil
+              "config" "set-context" context
+              "--namespace" namespace))
+      (user-error "Failed to set Kubernetes namespace to `%s' in context `%s'"
+                  namespace context))
+    (when (equal context (car kubed-default-context-and-namespace))
+      (setcdr kubed-default-context-and-namespace namespace))
+    (message "Default Kubernetes namespace for context `%s' is now `%s'."
+             context namespace)))
 
 (defcustom kubed-read-resource-definition-filter-files-by-kind t
   "Whether to filter file completion candidates by their Kubernetes \"kind\".