#Spring Boot with Kubernetes Java Client API - Edit Namespace

1 messages · Page 1 of 1 (latest)

mystic condor
#

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 (kupeteer-namespace-update) does not match the name on the URL (kupeteer-namespace-new)","reason":"BadRequest","code":400}

How can I fix it?

haughty questBOT
#

<@&1004656351647117403> please have a look, thanks.

#

Here is an AI assisted attempt to answer your question 🤖. Maybe it helps! In any case, a human is on the way 👍. To continue talking to the AI, you can use </chatgpt:1108714622413963314>.

#

own = true)
public class EditNamespaceRequest {
private String name;
private Map<String, String> labels;
private Map<String, String> annotations;
}


In this request, we have the following fields:

1. `name`: The name of the namespace to be edited.
2. `labels`: A map of labels to be added or updated for the namespace.
3. `annotations`: A map of annotations to be added or updated for the namespace.

This request can be used to edit the metadata of a namespace in Kubernetes using the Java client API.
supple dock
#

I close it