Service brokered route services binding issues


Rozenszajn, Sergio
 

Hi,
I've created a service broker in Pivotal CF that generates service instances that should be used as route services. According to the documentation (https://docs.pivotal.io/pivotalcf/1-9/services/route-services.html) it is only required to provide " requires: ["route_forwarding"] " in catalog endpoint - route_service_url is optional.
This is my catalog response:
{
"services": [
{
"name": "approuter-service-i022338",
"requires": [
"route_forwarding"
],
"id": "278cb0e4-2b3c-4851-b49a-c8cc3dc61f4f-i022338",
"description": "Applications Router Service",
"bindable": true,
"plans": [
{
"id": "0cbb410b-015a-417b-ae51-1337028d8e89-i022338",
"name": "default",
"description": "Applications Router Service Plan"
}
]
}
]
}
When trying to bind the route I get an error:
$ cf bind-route-service cfapps.io --hostname i022338-appRouterTest-ui approuter-appRouterTest-ui
Binding route i022338-appRouterTest-ui.cfapps.io to service instance approuter-appRouterTest-ui in org sergio-org / space development as sergio.rozenszajn(a)sap.com...
FAILED
Server error, status code: 400, error code: 130006, message: This service does not support route binding.

Remark: route binding of user provided services work fine.

Can you assist?

Thanks, Sergio


Christian Brinker
 

Hi Sergio,

on first glance this looks, as you seems to be a problem of your catalog
definition because the cloud controller only checks the returned JSON and
the return messages/status codes of the service broker. No other sanity
checks are done.

So first I would start by setting bindable to "false" because it a route
service is not generally not able to bind to an app. It binds to a route.
The name of the property may seem to be a bit confusing here. The rest of
the definition seems to me correct. But maybe I missed something.

Then I would proceed with the Service Brokers endpoint return codes. Do you
log the messages send from/to the service broker from the cloud controller?

The route binding as user provided service does not use the service broker
api at all. So this does not interfere with your problem. But good to here
your service works.

Greets
Christian

On Tue, 23 May 2017 at 17:07 Sergio Rozenszajn <sergio.rozenszajn(a)sap.com>
wrote:

Hi,
I've created a service broker in Pivotal CF that generates service
instances that should be used as route services. According to the
documentation (
https://docs.pivotal.io/pivotalcf/1-9/services/route-services.html) it is
only required to provide " requires: ["route_forwarding"] " in catalog
endpoint - route_service_url is optional.
This is my catalog response:
{
"services": [
{
"name": "approuter-service-i022338",
"requires": [
"route_forwarding"
],
"id": "278cb0e4-2b3c-4851-b49a-c8cc3dc61f4f-i022338",
"description": "Applications Router Service",
"bindable": true,
"plans": [
{
"id": "0cbb410b-015a-417b-ae51-1337028d8e89-i022338",
"name": "default",
"description": "Applications Router Service Plan"
}
]
}
]
}
When trying to bind the route I get an error:
$ cf bind-route-service cfapps.io --hostname i022338-appRouterTest-ui
approuter-appRouterTest-ui
Binding route i022338-appRouterTest-ui.cfapps.io to service instance
approuter-appRouterTest-ui in org sergio-org / space development as
sergio.rozenszajn(a)sap.com...
FAILED
Server error, status code: 400, error code: 130006, message: This service
does not support route binding.

Remark: route binding of user provided services work fine.

Can you assist?

Thanks, Sergio
--
E-Mail: cbrinker(a)evoila.de

evoila GmbH
Wilhelm-Theodor-Römheld-Str. 34
55130 Mainz
Germany

Geschäftsführer: Johannes Hiemer

Amtsgericht Mainz HRB 42719

Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte
Weitergabe dieser Mail ist nicht gestattet.

This e-mail may contain confidential and/or privileged information. If You
are not the intended recipient (or have received this e-mail in error)
please notify the sender immediately and destroy this e-mail. Any
unauthorised copying, disclosure or distribution of the material in this
e-mail is strictly forbidden.


Rozenszajn, Sergio
 

Hi Christian,

I've set bindable to false as you suggested and it is still failing.
I added some logs in our "handleBinding" method but it is not reached. I guess Cloud Controller is not trying to bind because it considers that this service does not meet the route service binding requirements. Is this check (error code: 130006) based on Catalog data only?. Do you know where it is raised?

Regards, Sergio


Rozenszajn, Sergio
 

Hi Christian,

The issue is solved now. After adding some logs I realized that the catalog is read by Cloud Controller only once, during service broker registration. After deleting the service-broker and creating it again, bind succeeded.
BTW: bindable should be true. The issue was Cloud Controller did not get the "requires": ["route_forwarding"],

Thanks, Sergio


Christian Brinker
 

Hi Sergio,

Good to hear. If you want to update the service catalog you can run cf
update-service-broker.

Greets
Christian

Sergio Rozenszajn <sergio.rozenszajn(a)sap.com> schrieb am Mi., 24. Mai 2017
08:33:

Hi Christian,

The issue is solved now. After adding some logs I realized that the
catalog is read by Cloud Controller only once, during service broker
registration. After deleting the service-broker and creating it again, bind
succeeded.
BTW: bindable should be true. The issue was Cloud Controller did not get
the "requires": ["route_forwarding"],

Thanks, Sergio
--
E-Mail: cbrinker(a)evoila.de

evoila GmbH
Wilhelm-Theodor-Römheld-Str. 34
55130 Mainz
Germany

Geschäftsführer: Johannes Hiemer

Amtsgericht Mainz HRB 42719

Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte
Weitergabe dieser Mail ist nicht gestattet.

This e-mail may contain confidential and/or privileged information. If You
are not the intended recipient (or have received this e-mail in error)
please notify the sender immediately and destroy this e-mail. Any
unauthorised copying, disclosure or distribution of the material in this
e-mail is strictly forbidden.