orange-cloudfoundry / cf-ops-automation-broker

On demand dedicated services through COA concourse pipeline engine
4 stars 0 forks source link

OSB service instance update support (metadata, plan, params) #40

Closed gberche-orange closed 3 years ago

gberche-orange commented 6 years ago

Requirements

version update

As a service operator,

As a service operator,

As a service user,

Service authors that have built services using the On-Demand Broker want to allow Service Instances to be upgraded individually after a new version of their Service Broker has been deployed.

Now cf services will inform users that an upgrade is available; running cf service provides additional details. To upgrade a service instance, run cf update-service --upgrade. This flag is in experimental stage and may change without notice.

plan and param update

As a service user, I need to be able to update plans and params provisionned in an provisionning request (see #29)

As a service author, in order to handle user update param request, I may need be notified that an update was requested (in order to handle differently an update from an initial provisionning).

As a service author, I may need to have be given previous plan, params, and potentially context (such as service instance name) in order to trigger focussed update on the underlying database upon detecting changes

Example of coab-vars.yml enriched with previous_values

---
epoq:<epoq>.<timestamp> #epoq
deployment_name: "c_aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaa0"
instance_id: "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaa0"
service_id: "service_definition_id"
plan_id: "plan_guid" # updated value
context:
  platform: "cloudfoundry"
  user_guid: "user_guid1"
  space_guid: "space_guid1"
  organization_guid: "org_guid1"
  name: "updated service instance name"
parameters:
  cacheRatio: 0.9 # updated value
  cacheSizeMb: 20 # updated value
  slowQuery: true # updated value
previous_values:
  plan_id: "previous_plan_guid"
gberche-orange commented 3 years ago

Note: middleware update has been moved to #245

gberche-orange commented 3 years ago

Initial design outline (moved here from the issue body)

Design outline

Steps

Details of state storage and update:

gberche-orange commented 3 years ago

Current design

Steps

gberche-orange commented 3 years ago

Update following exchange with @psycofdj : publicly available Cf-Wall is being deprecated in favor of a closed source cftools suite of microservices designed to integrate CF with Orange IT (CMDB, email alerting, etc). Expressed rationales for deprecating cf-wall: