openservicebrokerapi / servicebroker

Open Service Broker API Specification
https://openservicebrokerapi.org/
Apache License 2.0
1.19k stars 433 forks source link

support unattended service instance updates #726

Closed alexwo closed 4 years ago

alexwo commented 4 years ago

What is the problem? Allow platforms to trigger unattended service instance updates

Who does this affect?

API Changes

Get catalog

Provision Service Instance

Service Instance Update

a new update_version parameter can be passed to indicate the desired upgrade to apply.

New /v2/:service_plan_catalog_id/available_versions

GET /v2/:service_plan_catalog_id/available_versions

Response: JSON document with service plan upgrade options

{
   "updates":[
      {
         "version":"9.6.1",
         "description":"Remove public execute privilege from contrib"
      },
      {
         "version":"9.6.4",
         "description":"Fix incorrect volatility markings"
      }
   ]
}

Returns the list of all available upgrade versions Only available in case unattended upgrades are allowed for a service plan (version_info_available boolean)

Flows:

  1. User triggered upgrades The user triggers an upgrade by calling the update API

  2. Unattended upgrades by the platform To allow unattended-upgrades, a platform can provide the capability to define maintenance windows ( out of spec scope ). the platform can query the API (/v2/:service_plan_catalog_id/available_versions) within the maintenance window timeframe to determine if there are upgrades available, in case there are, the platform can upgrade the service instance by executing the update service instance API and specifying the required uprgade_version.

liorokman commented 4 years ago
  1. Maybe change the flag name in the Catalog to version_info_available in order to be more clear as to what this flag requires from the Broker developer.
  2. Maybe change the new endpoint to /v2/:service_plan_catalog_id/available_versions to make it clear what this endpoint is about.