cloudfoundry / service-fabrik-broker

Cloud Foundry service broker which provisions service instances as Docker containers and BOSH deployments.
Apache License 2.0
41 stars 50 forks source link

Service specific Deployment Status #389

Closed welfwalter closed 2 years ago

welfwalter commented 6 years ago

After Cloud Foundry's Cloud Controller has sent the service provisioning request to Service Fabrik, it polls for the status. When the Service Fabrik triggered bosh and bosh finished the deployment, the Service Fabrik sends back the status "Created".

But for some services, some further initialization are then still necessary. These may take a while before the service is really consumable. In Cloud Cockpit we would then still want to see status "Creating". (Or maybe an additional status like "Finalizing".) So we would like to have the possibility to control which status is returned from Service Fabrik to Cloud Controller – specific for a service.

A possible implementation could be a new method “getDeploymentStatus” in the Service Fabrik Agent API.

cf-gitbot commented 6 years ago

We have created an issue in Pivotal Tracker to manage this:

https://www.pivotaltracker.com/story/show/160235391

The labels on this github issue will be updated when the story is started.

subhankarc commented 5 years ago

@welfwalter For asynchronous service provisioning, initial create request is responded with 202 and then platform(cloud controller) starts polling for the last operation. According to the OSBAPI spec the broker should return state as part of the body and here it mentions that the valid values are in progress, succeeded, and failed.

So, I don't think we can send anything else other than in progress where the service instance is not yet ready to be used.

To support the use-case you have, I could think of some post processing hook which polls agent for its readiness and then sets the status as succeeded.

@jagadish-kb please let us know your view.

welfwalter commented 5 years ago

Hi subhankarc, if the list of status is fixed to these three values then the value should stay as in progress. The post processing hook polling the agent sounds fine. With regards Welf