Improving Service Access in Cloud Foundry Application Runtime
In Cloud Foundry Application Runtime, a Service Broker can only be registered once (either globally or space-scoped). This is because the Cloud Controller detects conflicts in the information exposed in a Service Broker's Catalog. However, we are aware of a number of use cases in which the same Service Broker should be registered multiple times in the platform, for example:
The CF Services API team would like to tackle this problem and have outlined a number of possible solutions in this proposal . The solution we believe best solves this problem is allowing the name of a Service Broker to be used as an optional argument when multiple services with the same name are available in the marketplace. This would mean exposing the user-defined name of Service Brokers to all developers for the first time (we don't believe these to be confidential), and updating a number of CLI commands to display/consume this additional field.
For example, the marketplace would now should the name of a broker:
$ cf marketplace
service plans broker description
service1 small broker1 An example service
service1 small broker2 An example service
And to create a new service instance using service1, the broker name would have to be provided:
$ cf create-service service1 small my-service
More than one service called ‘mysql’ is available. Please specify the name of the broker from which to provision this service with the ‘-b’ flag.
$ cf create-service service1 small my-service -b broker1
We are looking for feedback on this proposal before we start this work, so please provide any feedback you have over the next week!