Documentation ¶
Index ¶
- Constants
- Variables
- func ConvertTemplateInstanceRequesterToUser(templateReq *templateapi.TemplateInstanceRequester) user.Info
- func ConvertUserToTemplateInstanceRequester(u user.Info) templateapi.TemplateInstanceRequester
- func ValidateBindRequest(breq *BindRequest) field.ErrorList
- func ValidateProvisionRequest(preq *ProvisionRequest) field.ErrorList
- func ValidateUUID(path *field.Path, uuid string) field.ErrorList
- type BindRequest
- type BindResponse
- type Broker
- type CatalogResponse
- type DashboardClient
- type DeprovisionResponse
- type ErrorResponse
- type KubernetesContext
- type LastOperationResponse
- type LastOperationState
- type OpenShiftMetadata
- type Operation
- type ParameterSchema
- type ParameterSchemas
- type Plan
- type ProvisionRequest
- type ProvisionResponse
- type Response
- type Schema
- type Service
- type ServiceBindings
- type ServiceInstances
- type UnbindResponse
- type UpdateRequest
- type UpdateResponse
Constants ¶
View Source
const ( XBrokerAPIVersion = "X-Broker-Api-Version" APIVersion = "2.11" XBrokerAPIOriginatingIdentity = "X-Broker-API-Originating-Identity" OriginatingIdentitySchemeKubernetes = "kubernetes" )
View Source
const ( ServiceMetadataDisplayName = "displayName" ServiceMetadataImageURL = "imageUrl" ServiceMetadataLongDescription = "longDescription" ServiceMetadataProviderDisplayName = "providerDisplayName" ServiceMetadataDocumentationURL = "documentationUrl" ServiceMetadataSupportURL = "supportUrl" )
View Source
const ContextPlatformKubernetes = "kubernetes"
View Source
const OpenServiceBrokerInstanceExternalID = "openservicebroker.openshift.io/instance-external-id"
OpenServiceBrokerInstanceExternalID is a common, optional annotation that stores the OSBAPI instance (UU)ID associated with an object.
Variables ¶
View Source
var AsyncRequired = ErrorResponse{
Error: "AsyncRequired",
Description: "This request requires client support for asynchronous service operations.",
}
View Source
var ConcurrencyError = ErrorResponse{
Error: "ConcurrencyError",
Description: "Another operation for this Service Instance is in progress.",
}
Functions ¶
func ConvertTemplateInstanceRequesterToUser ¶
func ConvertTemplateInstanceRequesterToUser(templateReq *templateapi.TemplateInstanceRequester) user.Info
ConvertTemplateInstanceRequesterToUser copies analogous fields from TemplateInstanceRequester to user.Info
func ConvertUserToTemplateInstanceRequester ¶
func ConvertUserToTemplateInstanceRequester(u user.Info) templateapi.TemplateInstanceRequester
ConvertUserToTemplateInstanceRequester copies analogous fields from user.Info to TemplateInstanceRequester
func ValidateBindRequest ¶
func ValidateBindRequest(breq *BindRequest) field.ErrorList
func ValidateProvisionRequest ¶
func ValidateProvisionRequest(preq *ProvisionRequest) field.ErrorList
Types ¶
type BindRequest ¶
type BindRequest struct { ServiceID string `json:"service_id"` PlanID string `json:"plan_id"` AppGUID string `json:"app_guid,omitempty"` BindResource struct { AppGUID string `json:"app_guid,omitempty"` Route string `json:"route,omitempty"` } `json:"bind_resource,omitempty"` Parameters map[string]string `json:"parameters,omitempty"` }
type BindResponse ¶
type Broker ¶
type Broker interface { Catalog() *Response Provision(u user.Info, instanceID string, preq *ProvisionRequest) *Response Deprovision(u user.Info, instanceID string) *Response Bind(u user.Info, instanceID string, bindingID string, breq *BindRequest) *Response Unbind(u user.Info, instanceID string, bindingID string) *Response LastOperation(u user.Info, instanceID string, operation Operation) *Response }
type CatalogResponse ¶
type CatalogResponse struct {
Services []*Service `json:"services"`
}
type DashboardClient ¶
type DeprovisionResponse ¶
type DeprovisionResponse struct {
Operation Operation `json:"operation,omitempty"`
}
type ErrorResponse ¶
type KubernetesContext ¶
type LastOperationResponse ¶
type LastOperationResponse struct { State LastOperationState `json:"state"` Description string `json:"description,omitempty"` }
type LastOperationState ¶
type LastOperationState string
const ( LastOperationStateInProgress LastOperationState = "in progress" LastOperationStateSucceeded LastOperationState = "succeeded" LastOperationStateFailed LastOperationState = "failed" )
type OpenShiftMetadata ¶
type OpenShiftMetadata struct {
OpenShiftFormDefinition []string `json:"openshift_form_definition,omitempty"`
}
type ParameterSchema ¶
type ParameterSchema struct {
Create OpenShiftMetadata `json:"create,omitempty"`
}
type ParameterSchemas ¶
type ParameterSchemas struct {
ServiceInstance ParameterSchema `json:"service_instance,omitempty"`
}
ParameterSchemas is an OpenShift extension to allow for form building for provision/bind parameters.
type ProvisionRequest ¶
type ProvisionResponse ¶
type Schema ¶
type Schema struct { ServiceInstance ServiceInstances `json:"service_instance,omitempty"` ServiceBinding ServiceBindings `json:"service_binding,omitempty"` }
type Service ¶
type Service struct { Name string `json:"name"` ID string `json:"id"` Description string `json:"description"` Tags []string `json:"tags,omitempty"` Requires []string `json:"requires,omitempty"` Bindable bool `json:"bindable"` Metadata map[string]interface{} `json:"metadata,omitempty"` DashboardClient *DashboardClient `json:"dashboard_client,omitempty"` PlanUpdatable bool `json:"plan_updateable,omitempty"` Plans []Plan `json:"plans"` }
type ServiceBindings ¶
type ServiceInstances ¶
type UnbindResponse ¶
type UnbindResponse struct { }
type UpdateRequest ¶
type UpdateRequest struct { Context KubernetesContext `json:"context,omitempty"` ServiceID string `json:"service_id"` PlanID string `json:"plan_id,omitempty"` Parameters map[string]string `json:"parameters,omitempty"` PreviousValues struct { ServiceID string `json:"service_id,omitempty"` PlanID string `json:"plan_id,omitempty"` OrganizationID string `json:"organization_id,omitempty"` SpaceID string `json:"space_id,omitempty"` } `json:"previous_values,omitempty"` }
type UpdateResponse ¶
type UpdateResponse struct {
Operation Operation `json:"operation,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.