java
java copied to clipboard
Lack of content types in patchNamespacedDeploymentCall
Describe the bug I am migrating from client version v19.0.0. When using AppsV1Api::patchNamespacedDeploymentCall, I get an error:
io.kubernetes.client.openapi.ApiException: Message:
HTTP response code: 415
HTTP response body:
{
"kind": "Status",
"apiVersion": "v1",
"metadata": {},
"status": "Failure",
"message": "415: Unsupported Media Type",
"reason": "UnsupportedMediaType",
"details": {},
"code": 415
}
I see that v19.0.0 defines more content types:
final String[] localVarContentTypes = {
"application/json-patch+json", "application/merge-patch+json", "application/strategic-merge-patch+json", "application/apply-patch+yaml"
};
compared to v20.0.0:
final String[] localVarContentTypes = {
"application/json"
};
Is there any reason for this?
Client Version v20.0.0
Kubernetes Version 1.24
Java Version Java 8
To Reproduce Steps to reproduce the behavior:
- execute an APIpatchNamespacedDeploymentRequest
Expected behavior K8s accepts the request without problems.
KubeConfig If applicable, add a KubeConfig file with secrets redacted.
Server (please complete the following information):
- OS: [e.g. Linux]
- Environment [e.g. container]
- Cloud [e.g. Azure]
Additional context Add any other context about the problem here.
you should use PatchUtils
you should use
PatchUtils
This works as a workaround, but in fact this really is a bug in the client.
Looks related to https://github.com/kubernetes-client/java/issues/3106