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

[ENHANCEMENT] migrate cf v2 api to v3 api #380

Open
metskem opened this issue Oct 30, 2024 · 1 comment
Open

[ENHANCEMENT] migrate cf v2 api to v3 api #380

metskem opened this issue Oct 30, 2024 · 1 comment
Assignees

Comments

@metskem
Copy link
Contributor

metskem commented Oct 30, 2024

<

What would you like to be added
The nozzle currently uses the go-cfclient library to interact with CF (mostly getting App information).
We would like this to be replaced/upgraded to the go-cfclient v3 api.

Why is this needed:
During the last Cloud Foundry day (October 9, 2024) in Karlsruhe, the v2 removal proposal was once more mentioned, where 2027 would be the year the v2 api will be removed from the CF cloud controller.

Additional context
Not sure if somebody else is already looking into this migration, but I had a quick look at the code.
It seems do-able, except the handling of the App Environment, for example here.
In V2, each App object has the environment_variables included, no additional api calls needed.
However, in v3, this is no longer the case. In order to get the environment_variables it would take an api call for each app, which would become a performance issue if you have many applications.
An option would be to use CF Labels (instead of app envvars) to store the SPLUNK_INDEX and F2S_DISABLE_LOGGING.
Clearly this would be a breaking change, but we could keep the current situation (app envvars) as a fallback, which does come with a performance penalty.

@metskem
Copy link
Contributor Author

metskem commented Nov 19, 2024

In case you're interested, I have a fork where the v2 calls have been replaced with v3 calls, and the use of envvars (for SPLUNK_INDEX and F2S_DISABLE_LOGGING) has been replaced with the use of CF Labels:
https://github.com/rabobank/splunk-firehose-nozzle/tree/V3

@ajasnosz ajasnosz self-assigned this Nov 20, 2024
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

2 participants