Here is the EditNamespaceRequest shown below
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class EditNamespaceRequest {
private String name;
}
Here is the updateNamespace method of my Service
public V1Namespace updateNamespace(String currentName, EditNamespaceRequest editNamespaceRequest) throws ApiException {
try {
// Retrieve the existing namespace
V1Namespace existingNamespace = coreV1Api.readNamespace(currentName, null);
// Update the existing namespace with the new values
existingNamespace.metadata(new V1ObjectMeta().name(editNamespaceRequest.getName()));
// Perform the update
coreV1Api.replaceNamespace(currentName, existingNamespace, null, null, null,null);
return existingNamespace;
} catch (ApiException e) {
// Handle API exception (e.g., namespace not found, permission issues, etc.)
throw new RuntimeException("Failed to update namespace: " + e.getResponseBody(), e);
}
}
I have a problem to update Namespace by name through Kubernetes Java Client API.
this error message is shown below when I run
{"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"the name of the object (namespace-update) does not match the name on the URL (namespace-new)","reason":"BadRequest","code":400}
How can I fix it?