java icon indicating copy to clipboard operation
java copied to clipboard

Lack of content types in patchNamespacedDeploymentCall

Open kozjan opened this issue 1 year ago • 3 comments
trafficstars

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.

kozjan avatar Mar 11 '24 09:03 kozjan

you should use PatchUtils

brendandburns avatar Mar 12 '24 16:03 brendandburns

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

oreissig avatar Mar 13 '24 07:03 oreissig