Skip to content
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

Update Environment Variables call is not able to delete Environment Variable v3 #1203

Open
mayankmendix opened this issue Oct 16, 2023 · 5 comments

Comments

@mayankmendix
Copy link

If a null value is sent in UpdateApplicationEnvironmentVariableRequest for ApplicationsV3().updateEnvironmentVariables, it does not delete the variable form the application. It even does not changes the value of the variable.

@bhavinshah-mendix
Copy link

bhavinshah-mendix commented Mar 26, 2024

Hello @anthonydahanne , @cf-buildpacks-eng , @dmikusa
Please help!

I am also not able to delete the environment variable using the call.
Here is my code block: Please suggest what to do!

cloudFoundryClient.applicationsV3()
.updateEnvironmentVariables(UpdateApplicationEnvironmentVariablesRequest.builder()
.applicationId(applicationResource.getId())
.var(key_var_name, null)
.build())
.timeout(CF_REQUEST_TIMEOUT)
.block();

@anthonydahanne
Copy link
Contributor

hello!
sorry for late answer!
did that work fine with v2 api? is it a regression introduced with v3 ?
Thanks!

@bhavinshah-mendix
Copy link

Thank you for your prompt response, @anthonydahanne

The provided code snippet for the v2 API worked successfully:
java:
cloudFoundryOperations.applications()
.unsetEnvironmentVariable(UnsetEnvironmentVariableApplicationRequest.builder()
.name(appName)
.variableName(key)
.build());

However, when we attempted to use the v3 API with similar logic, it failed.
java:
cloudFoundryClient.applicationsV3()
.updateEnvironmentVariables(UpdateApplicationEnvironmentVariablesRequest.builder()
.applicationId(applicationResource.getId())
.var(key_var_name, null)
.build());

For reference, I tested the v3 API directly using Postman, referencing this link, and it succeeded by sending null in the payload request body. However, the same approach failed when using the cf-java-client library.

Could you please help? incase if we are missing something

FYI: I have added the latest jar of
cloudfoundry-client, client-reactor, operation, util - version 5.12.1

@bhavinshah-mendix
Copy link

Hello @anthonydahanne
It's urgent! can you please check once? It would be very much helpful for me :)

Thank you in advance!

@LitschiW
Copy link

LitschiW commented Jul 8, 2024

see also #1232 . This might be the same issue of the ObjectMapper not serializing null-Objects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants