Lifecycle Exposure
Lifecycle events will be published by cloud services when service instances are created, updated or deleted.
Lifecycle Actions
The following lifecycle actions are forwarded:
CREATE: a new service instance has been provisionedUPDATE: the configuration or state of the service instance has been changedDELETE: a service instance has been deprovisioned
Event Schema
The events forwarded to the topic follow a schema that is described below:
| Field | Type | Description |
|---|---|---|
| version | string | The version of the event schema. Fixed: 1.1 |
| timestamp | string | The UTC time of the event in ISO8601 format. Check the specific cloud service documentation about the precise semantics of this time. |
| id | string | The UUID of this event generated by the cloud service |
| platform | string | Constant ESC |
| tenant_name | string | The name of the tenant owning this event |
| space_name | string | The name of the space where the service instance was deployed |
| cloud_service_name | string | The name of the cloud service that produced this event |
| service_instance.id | string | The UUID of the service instance that produced this event |
| service_instance.name | string | The name of the service instance that produced this event |
| service_instance.instance_class_name | string | The type of the service instance that produced this event |
| lifecycle_action | string | One of: CREATE, UPDATE, DELETE |
| lifecycle_parameters | object | Details describing the service instance and its most recent operation |
Example:
{
"version": "1.1",
"timestamp": "2023-02-14T12:40:00.000Z",
"id": "958e11dd-a12s-425e-8738-7ba3a83958c6",
"platform": "ESC",
"tenant_name": "orion-123",
"cloud_service_name": "Managed OS RHEL",
"space_name": "marketing",
"service_instance": {
"name": "orion1230001",
"id": "df22bc90-ebdd-4c8e-a051-b088f89f8897",
"instance_class_name": "Managed RHEL"
},
"lifecycle_action": "UPDATE",
"lifecycle_parameters": {
"some_string": "string",
"some_int": 2,
"some_double": 2.92,
"some_bool": true
}
}
Lifecycle Event Stream
┌──────────────────┐ ┌────────────────┐
│ Service │ lifecycle-orion-123 │ Customer │
│ ├──────► [ ----------------- ] ◄──────│ │
│ lifecycle events │ (Kafka topic) │ Kafka client │
└──────────────────┘ └────────────────┘
Lifecycle events are exposed using the schema above and published to the tenant's Kafka topic. The topic name is the name of the tenant prefixed with lifecycle-. Example: lifecycle-orion-123.
