Cloud Foundry do not parse SB response and do not include custom metadata #4618
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Tanzu Data service tiles (like Postgres) bundle a specific engine version (e.g., Postgres 16.6), but this version is not visible on the ServiceInstance object in Cloud Foundry. This makes it hard for users to know which version they are consuming.
The Open Service Broker API (OSBI) already has a ServiceInstanceMetadata field to store this type of information, Even if the on-demand-service-broker (ODB) propagate the metadata it is not consumed during parsing in CAPI.
This change makes the service version visible in Cloud Foundry by using the existing OSBI metadata field. This is a three-part process:
Service Adapter: The service-adapter (e.g., the Postgres tile's adapter) will be updated to add the engine version as a key-value pair in the tags section of the BOSH manifest it generates (e.g., postgres_version: "16.6").
On-Demand Service Broker (ODB): The ODB will be modified to read this new version tag from the manifest. The ODB will then take this value and populate the Metadata field in its ProvisionedServiceSpec and UpdateServiceSpec responses to Cloud Foundry.
Cloud Controller will parse that metadata and merge with labels that comes from the Service Broker. The labels which comes from Service Broker will be shown only if the SI is managed.
[Yes ] I have reviewed the contributing guide
[Yes] I have viewed, signed, and submitted the Contributor License Agreement
[ Yes] I have made this pull request to the
mainbranch[Yes ] I have run all the unit tests using
bundle exec rake[ No] I have run CF Acceptance Tests