-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
list_node: v1_container_image: ValueError: Invalid value for names
, must not be None
#895
Comments
names
, must not be None
names
, must not be None
My workaround is a monkey-patch: from kubernetes.client.models.v1_container_image import V1ContainerImage
def names(self, names):
self._names = names
V1ContainerImage.names = V1ContainerImage.names.setter(names) |
/assign |
The problem is either in k8s or in the image being used, where kubelet could report Please either file an issue in k8s to follow up on kubernetes/kubernetes#79018, or provide repo tag / digest for the image /close |
@roycaihw: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
After talking with @saschagrunert this seems to be related to how cri-o reports images to k8s. And there was a backport to a later patch release of 1.14. |
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` - related information kubernetes-client/python#895 Because I'm using containerd as a CRI (Container Runtime Interface), it might trigger this issue. This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
If you specify the command like: f4i.py add-thingvisor -y thingVisor-helloWorld.yaml -z Earth you got an error. Traceback (most recent call last): File "/app/master-controller.py", line 977, in recv_addThingVisor deploy_zone, available_zones = get_deploy_zone(tv_zone) # receive {"zone":zone_tv, "gw":floatingIP} if zone exists, otherwise none File "/app/master-controller.py", line 559, in get_deploy_zone_on_kubernetes available_zones = k8s.list_available_node_zone() File "/app/kubernetes_functions.py", line 152, in list_available_node_zone api_response = api_instance.list_node() File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api/core_v1_api.py", line 13726, in list_node (data) = self.list_node_with_http_info(**kwargs) # noqa: E501 (snip) File "/usr/local/lib/python3.6/site-packages/kubernetes/client/api_client.py", line 295, in __deserialize File "/usr/local/lib/python3.6/site-packages/kubernetes/client/models/v1_container_image.py", line 75, in names raise ValueError("Invalid value for `names`, must not be `None`") # noqa: E501 ValueError: Invalid value for `names`, must not be `None` kubernetes-client/python#895 This commit adds a workaround for this error. Signed-off-by: Hajime Tazaki <[email protected]>
* Avoids having dangling docker images on the Kubernetes nodes because the Kubernetes Python library fails to list nodes (required by REANA-Commons and REANA-Server scheduler to determine if more workflows can be submitted) because of a validation error of data coming from the Kubernetes API. More information [here](kubernetes-client/python#895 (comment)). * Tags the kindest/node image to latest because after installation it has `none` tag, which makes it count as a dangling image.
* Avoids having dangling docker images on the Kubernetes nodes because the Kubernetes Python library fails to list nodes (required by REANA-Commons and REANA-Server scheduler to determine if more workflows can be submitted) because of a validation error of data coming from the Kubernetes API. More information [here](kubernetes-client/python#895 (comment)). * Tags the kindest/node image to latest because after installation it has `none` tag, which makes it count as a dangling image.
Just ran into an issue with an Azure Kubernetes Service (AKS) 1.19.5 cluster where the above 'monkey patch' worked for me. We are migrating from 1.18.x to 1.19.x and found that a service using this API was broken. The issue reproduces trivially on both the release (12.0.1) and alpha (17.14.0a1) packages. Should this issue really be closed? |
Ok, this is a still open |
We've just run into this issue, I'm surprised this is closed. I appreciate the spec says it's required but it seems quite tight to reject the entire server response on a null field! Whatever happened to the Robustness Principal, i.e. be liberal in what you accept. We'll try the monkey patch for now. |
just get the same issue |
I ran into the same issue as well. |
There's some more discussion related to this issue here kubernetes/kubernetes#100802 |
/reopen Please see more details in kubernetes/kubernetes#100802 (comment) Until an agreement for some API change in SIG Node is made, we need to patch this client to treat /help The fix can be made directly to python/kubernetes/client/models/v1_container_image.py Lines 79 to 80 in 821618f
After the fix is merged, the commit should be added to apply-hotfixes.sh as a cherrypick command, so that we can carry this fix when we re-generate this client. |
@roycaihw: Reopened this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
update: the |
To remove once Kubernetes releases the new version fixing it reanahub#197 kubernetes-client/python#895 kubernetes/kubernetes#102159
To remove once Kubernetes releases the new version fixing it reanahub#197 kubernetes-client/python#895 kubernetes/kubernetes#102159
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle rotten |
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /close |
@k8s-triage-robot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
get the same issue,when node in k8s has some image's name are $ circtl images
IMAGE TAG IMAGE ID SIZE
<none> <none> b24daf1f40e32 1.88GB and when i remove this image,it works. crictl rmi b24daf1f40e32 |
Hey all,
I'm getting this when calling
list_node()
:Installed versions in the client (CentOS 7):
kubernetes:
Found in ceph/ceph#29131
Is there any chance of getting
list_node
to work?The text was updated successfully, but these errors were encountered: