From 1e48433b158468330d95f2f30834721bff83dc4a Mon Sep 17 00:00:00 2001 From: Davanum Srinivas Date: Mon, 23 Jan 2017 11:39:04 -0500 Subject: [PATCH] Fix ValueError in list_namespaced_config_map Make sure we set an empty dict/list if we don't get any data from the server Fixes #104 --- kubernetes/client/api_client.py | 2 ++ kubernetes/e2e_test/test_client.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/kubernetes/client/api_client.py b/kubernetes/client/api_client.py index c1b015fff..d553aef6f 100644 --- a/kubernetes/client/api_client.py +++ b/kubernetes/client/api_client.py @@ -626,6 +626,8 @@ class ApiClient(object): and instance.attribute_map[attr] in data\ and isinstance(data, (list, dict)): value = data[instance.attribute_map[attr]] + if value is None: + value = [] if isinstance(data, list) else {} setattr(instance, attr, self.__deserialize(value, attr_type)) return instance diff --git a/kubernetes/e2e_test/test_client.py b/kubernetes/e2e_test/test_client.py index e23cf0c48..5ccdf3c8f 100644 --- a/kubernetes/e2e_test/test_client.py +++ b/kubernetes/e2e_test/test_client.py @@ -187,6 +187,8 @@ class TestClient(unittest.TestCase): resp = api.delete_namespaced_config_map( name='test-configmap', body={}, namespace='default') + resp = api.list_namespaced_config_map('kube-system', pretty=True) + self.assertEqual([], resp.items) @unittest.skipUnless( _is_k8s_running(), "Kubernetes is not available")