imjoseangel / powerline-k8sstatus

A Powerline segment for showing the status of a K8s context
MIT License
2 stars 0 forks source link

Add another test for empty return from kubernetes module #26

Closed imjoseangel closed 3 years ago

imjoseangel commented 3 years ago

SUMMARY

when doing:

contexts, active_context = config.list_kube_config_contexts()

and if .kube/config is empty, it returns:

TypeError: 'NoneType' object is not iterable

Add exception and tests

ISSUE TYPE

COMPONENT NAME

tests

ADDITIONAL INFORMATION

>>> from kubernetes import config
>>> contexts, active_context = config.list_kube_config_contexts()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/imjoseangel/.pyenv/versions/3.7.9/Python.framework/Versions/3.7/lib/python3.7/site-packages/kubernetes/config/kube_config.py", line 715, in list_kube_config_contexts
    loader = _get_kube_config_loader_for_yaml_file(config_file)
  File "/Users/imjoseangel/.pyenv/versions/3.7.9/Python.framework/Versions/3.7/lib/python3.7/site-packages/kubernetes/config/kube_config.py", line 695, in _get_kube_config_loader_for_yaml_file
    kcfg = KubeConfigMerger(filename)
  File "/Users/imjoseangel/.pyenv/versions/3.7.9/Python.framework/Versions/3.7/lib/python3.7/site-packages/kubernetes/config/kube_config.py", line 650, in __init__
    self.load_config(path)
  File "/Users/imjoseangel/.pyenv/versions/3.7.9/Python.framework/Versions/3.7/lib/python3.7/site-packages/kubernetes/config/kube_config.py", line 668, in load_config
    self._merge(item, config.get(item, {}), path)
  File "/Users/imjoseangel/.pyenv/versions/3.7.9/Python.framework/Versions/3.7/lib/python3.7/site-packages/kubernetes/config/kube_config.py", line 672, in _merge
    for new_item in add_cfg:
TypeError: 'NoneType' object is not iterable