diff --git a/config/kube_config.py b/config/kube_config.py index cb1326f4..ddfd0b38 100644 --- a/config/kube_config.py +++ b/config/kube_config.py @@ -586,7 +586,7 @@ def load_config(self, path): self.config_merged = ConfigNode(path, config_merged, path) for item in ('clusters', 'contexts', 'users'): - self._merge(item, config[item], path) + self._merge(item, config.get(item, {}), path) self.config_files[path] = config def _merge(self, item, add_cfg, path): diff --git a/config/kube_config_test.py b/config/kube_config_test.py index ff16ede8..c8fb7967 100644 --- a/config/kube_config_test.py +++ b/config/kube_config_test.py @@ -1355,13 +1355,17 @@ class TestKubeConfigMerger(BaseTestCase): }, ] } + TEST_KUBE_CONFIG_PART4 = { + "current-context": "no_user", + } def _create_multi_config(self): files = [] for part in ( self.TEST_KUBE_CONFIG_PART1, self.TEST_KUBE_CONFIG_PART2, - self.TEST_KUBE_CONFIG_PART3): + self.TEST_KUBE_CONFIG_PART3, + self.TEST_KUBE_CONFIG_PART4): files.append(self._create_temp_file(yaml.safe_dump(part))) return ENV_KUBECONFIG_PATH_SEPARATOR.join(files)