v1alpha1

package
v0.5.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 29, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the cf v1alpha1 API group

Index

Constants

View Source
const (
	LabelKeySpace           = "service-operator.cf.cs.sap.com/space"
	LabelKeyClusterSpace    = "service-operator.cf.cs.sap.com/cluster-space"
	LabelKeyServiceInstance = "service-operator.cf.cs.sap.com/service-instance"
	LabelKeyServiceBinding  = "service-operator.cf.cs.sap.com/service-binding"

	// annotation on custom resources
	AnnotationRecreate = "service-operator.cf.cs.sap.com/recreate-on-creation-failure"
	// annotation max number of retries for a failed operation on a service instance
	AnnotationMaxRetries = "service-operator.cf.cs.sap.com/max-retries"
	// annotation to hold the reconciliation timeout value
	AnnotationReconcileTimeout = "service-operator.cf.cs.sap.com/timeout-on-reconcile"
	// annotation to increase or decrease the requeue interval at which the operator polls the status of CR after final state ready.
	AnnotationPollingIntervalReady = "service-operator.cf.cs.sap.com/polling-interval-ready"
	// annotation to increase or decrease the requeue interval at which the operator polls the status of CR after final state failed.
	AnnotationPollingIntervalFail = "service-operator.cf.cs.sap.com/polling-interval-fail"
	// annotation to adopt orphan CF resources. If set to 'adopt', the operator will adopt orphan CF resource.
	// Ex. "service-operator.cf.cs.sap.com/adopt-cf-resources"="adopt"
	AnnotationAdoptCFResources = "service-operator.cf.cs.sap.com/adopt-cf-resources"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "cf.cs.sap.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	// Needed by kubernetes/code-generator
	SchemeGroupVersion = GroupVersion
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Needed by kubernetes/code-generator

Types

type ClusterSpace

type ClusterSpace struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec SpaceSpec `json:"spec,omitempty"`

	// +kubebuilder:default={"observedGeneration":-1}
	Status SpaceStatus `json:"status,omitempty"`
}

ClusterSpace is the Schema for the clusterspaces API

func (*ClusterSpace) DeepCopy

func (in *ClusterSpace) DeepCopy() *ClusterSpace

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpace.

func (*ClusterSpace) DeepCopyInto

func (in *ClusterSpace) DeepCopyInto(out *ClusterSpace)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterSpace) DeepCopyObject

func (in *ClusterSpace) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClusterSpace) Default

func (r *ClusterSpace) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*ClusterSpace) GetKind

func (clusterSpace *ClusterSpace) GetKind() string

Return the kind

func (*ClusterSpace) GetReadyCondition

func (clusterSpace *ClusterSpace) GetReadyCondition() *SpaceCondition

Get ready condition

func (*ClusterSpace) GetSpec

func (clusterSpace *ClusterSpace) GetSpec() *SpaceSpec

Return the spec

func (*ClusterSpace) GetStatus

func (clusterSpace *ClusterSpace) GetStatus() *SpaceStatus

Return the status

func (*ClusterSpace) IsNamespaced

func (clusterSpace *ClusterSpace) IsNamespaced() bool

Indicate that this object is not namespaced

func (*ClusterSpace) IsReady

func (clusterSpace *ClusterSpace) IsReady() bool

Check if space is in a ready state

func (*ClusterSpace) SetReadyCondition

func (clusterSpace *ClusterSpace) SetReadyCondition(conditionStatus ConditionStatus, reason, message string)

Set ready condition

func (*ClusterSpace) SetupWebhookWithManager

func (r *ClusterSpace) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ClusterSpace) ValidateCreate

func (r *ClusterSpace) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ClusterSpace) ValidateDelete

func (r *ClusterSpace) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ClusterSpace) ValidateUpdate

func (r *ClusterSpace) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ClusterSpaceList

type ClusterSpaceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ClusterSpace `json:"items"`
}

ClusterSpaceList contains a list of ClusterSpace

func (*ClusterSpaceList) DeepCopy

func (in *ClusterSpaceList) DeepCopy() *ClusterSpaceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpaceList.

func (*ClusterSpaceList) DeepCopyInto

func (in *ClusterSpaceList) DeepCopyInto(out *ClusterSpaceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterSpaceList) DeepCopyObject

func (in *ClusterSpaceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ConditionStatus

type ConditionStatus string

ConditionStatus represents a condition's status. +kubebuilder:validation:Enum=True;False;Unknown

const (
	// ConditionTrue represents the fact that a given condition is true
	ConditionTrue ConditionStatus = "True"

	// ConditionFalse represents the fact that a given condition is false
	ConditionFalse ConditionStatus = "False"

	// ConditionUnknown represents the fact that a given condition is unknown
	ConditionUnknown ConditionStatus = "Unknown"
)

These are valid condition statuses. "ConditionTrue" means a resource is in the condition; "ConditionFalse" means a resource is not in the condition; "ConditionUnknown" means kubernetes can't decide if a resource is in the condition or not. In the future, we could add other intermediate conditions, e.g. ConditionDegraded.

type GenericSpace

type GenericSpace interface {
	client.Object
	GetKind() string
	IsNamespaced() bool
	GetSpec() *SpaceSpec
	GetStatus() *SpaceStatus
	SetReadyCondition(ConditionStatus, string, string)
	GetReadyCondition() *SpaceCondition
	IsReady() bool
	Default()
}

+kubebuilder:object:generate=false

type ParametersFromSource

type ParametersFromSource struct {
	// The Secret key to select from.
	// +optional
	SecretKeyRef *SecretKeyReference `json:"secretKeyRef,omitempty"`
}

ParametersFromSource represents the source of a set of Parameters

func (*ParametersFromSource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ParametersFromSource.

func (*ParametersFromSource) DeepCopyInto

func (in *ParametersFromSource) DeepCopyInto(out *ParametersFromSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretKeyReference

type SecretKeyReference struct {
	// The name of the secret in the current namespace to select from.
	Name string `json:"name"`
	// The key of the secret to select from.  Must be a valid secret key.
	Key string `json:"key"`
}

SecretKeyReference references a key of a Secret.

func (*SecretKeyReference) DeepCopy

func (in *SecretKeyReference) DeepCopy() *SecretKeyReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeyReference.

func (*SecretKeyReference) DeepCopyInto

func (in *SecretKeyReference) DeepCopyInto(out *SecretKeyReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceBinding

type ServiceBinding struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ServiceBindingSpec `json:"spec,omitempty"`

	// +kubebuilder:default={"observedGeneration":-1}
	Status ServiceBindingStatus `json:"status,omitempty"`
}

ServiceBinding is the Schema for the servicebindings API

func (*ServiceBinding) DeepCopy

func (in *ServiceBinding) DeepCopy() *ServiceBinding

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBinding.

func (*ServiceBinding) DeepCopyInto

func (in *ServiceBinding) DeepCopyInto(out *ServiceBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceBinding) DeepCopyObject

func (in *ServiceBinding) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ServiceBinding) Default

func (r *ServiceBinding) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*ServiceBinding) GetReadyCondition

func (serviceBinding *ServiceBinding) GetReadyCondition() *ServiceBindingCondition

func (*ServiceBinding) IsReady

func (serviceBinding *ServiceBinding) IsReady() bool

func (*ServiceBinding) SetReadyCondition

func (serviceBinding *ServiceBinding) SetReadyCondition(conditionStatus ConditionStatus, reason, message string)

func (*ServiceBinding) SetupWebhookWithManager

func (r *ServiceBinding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ServiceBinding) ValidateCreate

func (r *ServiceBinding) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ServiceBinding) ValidateDelete

func (r *ServiceBinding) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ServiceBinding) ValidateUpdate

func (r *ServiceBinding) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ServiceBindingCondition

type ServiceBindingCondition struct {
	// Type of the condition, known values are ('Ready').
	Type ServiceBindingConditionType `json:"type"`

	// Status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`

	// LastTransitionTime is the timestamp corresponding to the last status
	// change of this condition.
	// +optional
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`

	// Reason is a brief machine readable explanation for the condition's last
	// transition.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message is a human readable description of the details of the last
	// transition, complementing reason.
	// +optional
	Message string `json:"message,omitempty"`
}

ServiceBindingCondition contains condition information for a ServiceBinding.

func (*ServiceBindingCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingCondition.

func (*ServiceBindingCondition) DeepCopyInto

func (in *ServiceBindingCondition) DeepCopyInto(out *ServiceBindingCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceBindingConditionType

type ServiceBindingConditionType string

ServiceBindingConditionType represents a ServiceBinding condition value.

const (
	// ServiceBindingConditionReady represents the fact that a given service is ready.
	ServiceBindingConditionReady ServiceBindingConditionType = "Ready"
)

type ServiceBindingList

type ServiceBindingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ServiceBinding `json:"items"`
}

ServiceBindingList contains a list of ServiceBinding

func (*ServiceBindingList) DeepCopy

func (in *ServiceBindingList) DeepCopy() *ServiceBindingList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingList.

func (*ServiceBindingList) DeepCopyInto

func (in *ServiceBindingList) DeepCopyInto(out *ServiceBindingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceBindingList) DeepCopyObject

func (in *ServiceBindingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ServiceBindingSpec

type ServiceBindingSpec struct {
	// Name of the service binding in Cloud Foundry; if unspecified, metadata.name will be used.
	// +optional
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name,omitempty"`

	// Name of a ServiceInstance resource in the same namespace,
	// identifying the Cloud Foundry service instance this binding refers to.
	// +kubebuilder:validation:MinLength=1
	ServiceInstanceName string `json:"serviceInstanceName"`

	// Binding parameters.
	// Do not provide any sensitve data here; instead use ParametersFrom for such data.
	// +optional
	Parameters *apiextensionsv1.JSON `json:"parameters,omitempty"`

	// References to secrets containing binding parameters.
	// Top level keys must occur only once across Parameters and the secrest listed here.
	// +optional
	ParametersFrom []ParametersFromSource `json:"parametersFrom,omitempty"`

	// Secret name where the binding credentials shall be stored (in the same namespace where the binding exists).
	// If unspecified, metadata.name will be used.
	// +optional
	// +kubebuilder:validation:MinLength=1
	SecretName string `json:"secretName,omitempty"`

	// Secret key (referring to SecretName) where the binding credentials will be stored.
	// If unspecified, the top level keys of the binding credentials will become the secret keys.
	// +optional
	// +kubebuilder:validation:MinLength=1
	SecretKey string `json:"secretKey,omitempty"`
}

ServiceBindingSpec defines the desired state of ServiceBinding

func (*ServiceBindingSpec) DeepCopy

func (in *ServiceBindingSpec) DeepCopy() *ServiceBindingSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingSpec.

func (*ServiceBindingSpec) DeepCopyInto

func (in *ServiceBindingSpec) DeepCopyInto(out *ServiceBindingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceBindingState

type ServiceBindingState string

ServiceBindingState represents a condition state in a readable form +kubebuilder:validation:Enum=Processing;Deleting;Ready;Error

const (
	// ServiceBindingStateProcessing represents the fact that the service binding is reconciling
	ServiceBindingStateProcessing ServiceBindingState = "Processing"

	// ServiceBindingStateProcessing represents the fact that the service binding is being deleted
	ServiceBindingStateDeleting ServiceBindingState = "Deleting"

	// ServiceBindingStateProcessing represents the fact that the service binding is ready
	ServiceBindingStateReady ServiceBindingState = "Ready"

	// ServiceBindingStateProcessing represents the fact that the service binding is not ready resp. has an error
	ServiceBindingStateError ServiceBindingState = "Error"
)

These are valid condition states

type ServiceBindingStatus

type ServiceBindingStatus struct {
	// Observed generation
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Last reconciliation timestamp
	// +optional
	LastReconciledAt *metav1.Time `json:"lastReconciledAt,omitempty"`

	// Last modification timestamp (when the last create/update/delete request was sent to Cloud Foundry)
	// +optional
	LastModifiedAt *metav1.Time `json:"lastModifiedAt,omitempty"`

	// Cloud Foundry space guid
	// +optional
	SpaceGuid string `json:"spaceGuid,omitempty"`

	// Cloud Foundry service instance guid
	// +optional
	ServiceInstanceGuid string `json:"serviceInstanceGuid,omitempty"`

	// Digest identifying the current target state of the service instance (including praameters)
	// +optional
	ServiceInstanceDigest string `json:"serviceInstanceDigest,omitempty"`

	// Cloud Foundry service binding guid
	// +optional
	ServiceBindingGuid string `json:"serviceBindingGuid,omitempty"`

	// Digest identifying the current target state of the service binding (including praameters)
	// +optional
	ServiceBindingDigest string `json:"serviceBindingDigest,omitempty"`

	// List of status conditions to indicate the status of a ServiceBinding.
	// Known condition types are `Ready`.
	// +optional
	Conditions []ServiceBindingCondition `json:"conditions,omitempty"`

	// Readable form of the state.
	// +optional
	State ServiceBindingState `json:"state,omitempty"`
}

ServiceBindingStatus defines the observed state of ServiceBinding

func (*ServiceBindingStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBindingStatus.

func (*ServiceBindingStatus) DeepCopyInto

func (in *ServiceBindingStatus) DeepCopyInto(out *ServiceBindingStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceInstance

type ServiceInstance struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ServiceInstanceSpec `json:"spec,omitempty"`

	// +kubebuilder:default={"observedGeneration":-1}
	Status ServiceInstanceStatus `json:"status,omitempty"`
}

ServiceInstance is the Schema for the serviceinstances API

func (*ServiceInstance) DeepCopy

func (in *ServiceInstance) DeepCopy() *ServiceInstance

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInstance.

func (*ServiceInstance) DeepCopyInto

func (in *ServiceInstance) DeepCopyInto(out *ServiceInstance)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceInstance) DeepCopyObject

func (in *ServiceInstance) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ServiceInstance) Default

func (r *ServiceInstance) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*ServiceInstance) GetReadyCondition

func (serviceInstance *ServiceInstance) GetReadyCondition() *ServiceInstanceCondition

func (*ServiceInstance) IsReady

func (serviceInstance *ServiceInstance) IsReady() bool

func (*ServiceInstance) SetReadyCondition

func (serviceInstance *ServiceInstance) SetReadyCondition(conditionStatus ConditionStatus, reason, message string)

func (*ServiceInstance) SetupWebhookWithManager

func (r *ServiceInstance) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ServiceInstance) ValidateCreate

func (r *ServiceInstance) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ServiceInstance) ValidateDelete

func (r *ServiceInstance) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ServiceInstance) ValidateUpdate

func (r *ServiceInstance) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ServiceInstanceCondition

type ServiceInstanceCondition struct {
	// Type of the condition, known values are ('Ready').
	Type ServiceInstanceConditionType `json:"type"`

	// Status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`

	// LastTransitionTime is the timestamp corresponding to the last status
	// change of this condition.
	// +optional
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`

	// Reason is a brief machine readable explanation for the condition's last
	// transition.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message is a human readable description of the details of the last
	// transition, complementing reason.
	// +optional
	Message string `json:"message,omitempty"`
}

ServiceInstanceCondition contains condition information for a ServiceInstance.

func (*ServiceInstanceCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInstanceCondition.

func (*ServiceInstanceCondition) DeepCopyInto

func (in *ServiceInstanceCondition) DeepCopyInto(out *ServiceInstanceCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceInstanceConditionType

type ServiceInstanceConditionType string

ServiceInstanceConditionType represents a ServiceInstance condition value.

const (
	// ServiceInstanceConditionReady represents the fact that a given service is ready.
	ServiceInstanceConditionReady ServiceInstanceConditionType = "Ready"
)

type ServiceInstanceList

type ServiceInstanceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ServiceInstance `json:"items"`
}

ServiceInstanceList contains a list of ServiceInstance

func (*ServiceInstanceList) DeepCopy

func (in *ServiceInstanceList) DeepCopy() *ServiceInstanceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInstanceList.

func (*ServiceInstanceList) DeepCopyInto

func (in *ServiceInstanceList) DeepCopyInto(out *ServiceInstanceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceInstanceList) DeepCopyObject

func (in *ServiceInstanceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ServiceInstanceSpec

type ServiceInstanceSpec struct {
	// Name of the service instance in Cloud Foundry; if unspecified, metadata.name will be used.
	// +optional
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name,omitempty"`

	// Name of a Space resource in the same namespace,
	// identifying the Cloud Foundry space where the instance will be provisioned.
	// Exactly one of SpaceName and ClusterSpaceName have to be specified.
	// +optional
	// +kubebuilder:validation:MinLength=1
	SpaceName string `json:"spaceName,omitempty"`

	// Name of a ClusterSpace resource,
	// identifying the Cloud Foundry space where the instance will be provisioned.
	// Exactly one of SpaceName and ClusterSpaceName have to be specified.
	// +optional
	// +kubebuilder:validation:MinLength=1
	ClusterSpaceName string `json:"clusterSpaceName,omitempty"`

	// Name of the service offering in Cloud Foundry.
	// Either ServiceOfferingName and ServicePlanName, or ServicePlanGuid must be specified.
	// +optional
	// +kubebuilder:validation:MinLength=1
	ServiceOfferingName string `json:"serviceOfferingName,omitempty"`

	// Name of the service plan in Cloud Foundry.
	// Either ServiceOfferingName and ServicePlanName, or ServicePlanGuid must be specified.
	// +optional
	// +kubebuilder:validation:MinLength=1
	ServicePlanName string `json:"servicePlanName,omitempty"`

	// GUID of the service plan in Cloud Foundry.
	// Either ServiceOfferingName and ServicePlanName, or ServicePlanGuid must be specified.
	// +optional
	// +kubebuilder:validation:MinLength=1
	ServicePlanGuid string `json:"servicePlanGuid,omitempty"`

	// Instance parameters.
	// Do not provide any sensitve data here; instead use ParametersFrom for such data.
	// +optional
	Parameters *apiextensionsv1.JSON `json:"parameters,omitempty"`

	// References to secrets containing instance parameters.
	// Top level keys must occur only once across Parameters and the secrest listed here.
	// +optional
	ParametersFrom []ParametersFromSource `json:"parametersFrom,omitempty"`

	// Tags to be attached to the instance.
	// +optional
	Tags []string `json:"tags,omitempty"`
}

ServiceInstanceSpec defines the desired state of ServiceInstance

func (*ServiceInstanceSpec) DeepCopy

func (in *ServiceInstanceSpec) DeepCopy() *ServiceInstanceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInstanceSpec.

func (*ServiceInstanceSpec) DeepCopyInto

func (in *ServiceInstanceSpec) DeepCopyInto(out *ServiceInstanceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceInstanceState

type ServiceInstanceState string

ServiceInstanceState represents a condition state in a readable form +kubebuilder:validation:Enum=Processing;Deleting;Ready;Error

const (
	// ServiceInstanceStateProcessing represents the fact that the service instance is reconciling
	ServiceInstanceStateProcessing ServiceInstanceState = "Processing"

	// ServiceInstanceStateProcessing represents the fact that the service instance is being deleted
	ServiceInstanceStateDeleting ServiceInstanceState = "Deleting"

	// ServiceInstanceStateProcessing represents the fact that the service instance is ready
	ServiceInstanceStateReady ServiceInstanceState = "Ready"

	// ServiceInstanceStateProcessing represents the fact that the service instance is not ready resp. has an error
	ServiceInstanceStateError ServiceInstanceState = "Error"
)

These are valid condition states

type ServiceInstanceStatus

type ServiceInstanceStatus struct {
	// Observed generation
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Last reconciliation timestamp
	// +optional
	LastReconciledAt *metav1.Time `json:"lastReconciledAt,omitempty"`

	// Last modification timestamp (when the last create/update/delete request was sent to Cloud Foundry)
	// +optional
	LastModifiedAt *metav1.Time `json:"lastModifiedAt,omitempty"`

	// Cloud Foundry space guid
	// +optional
	SpaceGuid string `json:"spaceGuid,omitempty"`

	// Cloud Foundry service plan guid
	// +optional
	ServicePlanGuid string `json:"servicePlanGuid,omitempty"`

	// Cloud Foundry service instance guid
	// +optional
	ServiceInstanceGuid string `json:"serviceInstanceGuid,omitempty"`

	// Digest identifying the current target state of the service instance (including praameters)
	// +optional
	ServiceInstanceDigest string `json:"serviceInstanceDigest,omitempty"`

	// Counts the number of retries that have been attempted for the reconciliation of this service instance.
	// This counter can be used to fail the instance if too many retries occur.
	// +optional
	RetryCounter int `json:"retryCounter,omitempty"`

	// This is the maximum number of retries that are allowed for the reconciliation of this service instance.
	// If the retry counter exceeds this value, the service instance will be marked as failed.
	// +optional
	MaxRetries int `json:"maxRetries,omitempty"`

	// List of status conditions to indicate the status of a ServiceInstance.
	// Known condition types are `Ready`.
	// +optional
	Conditions []ServiceInstanceCondition `json:"conditions,omitempty"`

	// Readable form of the state.
	// +optional
	State ServiceInstanceState `json:"state,omitempty"`
}

ServiceInstanceStatus defines the observed state of ServiceInstance

func (*ServiceInstanceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInstanceStatus.

func (*ServiceInstanceStatus) DeepCopyInto

func (in *ServiceInstanceStatus) DeepCopyInto(out *ServiceInstanceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Space

type Space struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec SpaceSpec `json:"spec,omitempty"`

	// +kubebuilder:default={"observedGeneration":-1}
	Status SpaceStatus `json:"status,omitempty"`
}

Space is the Schema for the spaces API

func (*Space) DeepCopy

func (in *Space) DeepCopy() *Space

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Space.

func (*Space) DeepCopyInto

func (in *Space) DeepCopyInto(out *Space)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Space) DeepCopyObject

func (in *Space) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Space) Default

func (r *Space) Default()

Default implements webhook.Defaulter so a webhook will be registered for the type

func (*Space) GetKind

func (space *Space) GetKind() string

Return the kind

func (*Space) GetReadyCondition

func (space *Space) GetReadyCondition() *SpaceCondition

Get ready condition

func (*Space) GetSpec

func (space *Space) GetSpec() *SpaceSpec

Return the spec

func (*Space) GetStatus

func (space *Space) GetStatus() *SpaceStatus

Return the status

func (*Space) IsNamespaced

func (space *Space) IsNamespaced() bool

Indicate that this object is namespaced

func (*Space) IsReady

func (space *Space) IsReady() bool

Check if space is in a ready state

func (*Space) SetReadyCondition

func (space *Space) SetReadyCondition(conditionStatus ConditionStatus, reason, message string)

Set ready condition

func (*Space) SetupWebhookWithManager

func (r *Space) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Space) ValidateCreate

func (r *Space) ValidateCreate() (admission.Warnings, error)

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Space) ValidateDelete

func (r *Space) ValidateDelete() (admission.Warnings, error)

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Space) ValidateUpdate

func (r *Space) ValidateUpdate(old runtime.Object) (admission.Warnings, error)

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SpaceCondition

type SpaceCondition struct {
	// Type of the condition, known values are ('Ready').
	Type SpaceConditionType `json:"type"`

	// Status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`

	// LastTransitionTime is the timestamp corresponding to the last status
	// change of this condition.
	// +optional
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`

	// Reason is a brief machine readable explanation for the condition's last
	// transition.
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message is a human readable description of the details of the last
	// transition, complementing reason.
	// +optional
	Message string `json:"message,omitempty"`
}

SpaceCondition contains condition information for a Space.

func (*SpaceCondition) DeepCopy

func (in *SpaceCondition) DeepCopy() *SpaceCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceCondition.

func (*SpaceCondition) DeepCopyInto

func (in *SpaceCondition) DeepCopyInto(out *SpaceCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SpaceConditionType

type SpaceConditionType string

SpaceConditionType represents a Space condition value.

const (
	// SpaceConditionReady represents the fact that a given Space condition
	// is in ready state and able to provision service instances.
	// If the `status` of this condition is `False`, ServiceInstance controllers
	// should prevent attempts to provision service instances.
	SpaceConditionReady SpaceConditionType = "Ready"
)

type SpaceList

type SpaceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Space `json:"items"`
}

SpaceList contains a list of Space

func (*SpaceList) DeepCopy

func (in *SpaceList) DeepCopy() *SpaceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceList.

func (*SpaceList) DeepCopyInto

func (in *SpaceList) DeepCopyInto(out *SpaceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SpaceList) DeepCopyObject

func (in *SpaceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SpaceSpec

type SpaceSpec struct {
	// Space GUID.
	// Must not be specified if Name or OrganizationName is present.
	// +optional
	// +kubebuilder:validation:MinLength=1
	Guid string `json:"guid,omitempty"`

	// Space name.
	// Must not be specified if Guid is present; defauls to metadata.name otherwise.
	// +optional
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name,omitempty"`

	// Organization name.
	// Must not be specified if Guid is present; required otherwise.
	// +optional
	// +kubebuilder:validation:MinLength=1
	OrganizationName string `json:"organizationName,omitempty"`

	// A reference to a secret containing the space authentication data.
	// +kubebuilder:validation:MinLength=1
	AuthSecretName string `json:"authSecretName"`
}

SpaceSpec defines the desired state of Space.

func (*SpaceSpec) DeepCopy

func (in *SpaceSpec) DeepCopy() *SpaceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceSpec.

func (*SpaceSpec) DeepCopyInto

func (in *SpaceSpec) DeepCopyInto(out *SpaceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SpaceState

type SpaceState string

SpaceState represents a condition state in a readable form +kubebuilder:validation:Enum=Processing;Deleting;Ready;Error

const (
	// SpaceStateProcessing represents the fact that the space is reconciling
	SpaceStateProcessing SpaceState = "Processing"

	// SpaceStateProcessing represents the fact that the space is being deleted
	SpaceStateDeleting SpaceState = "Deleting"

	// SpaceStateProcessing represents the fact that the space is ready
	SpaceStateReady SpaceState = "Ready"

	// SpaceStateProcessing represents the fact that the space is not ready resp. has an error
	SpaceStateError SpaceState = "Error"
)

These are valid condition states

type SpaceStatus

type SpaceStatus struct {
	// Observed generation
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// Last reconciliation timestamp
	// +optional
	LastReconciledAt *metav1.Time `json:"lastReconciledAt,omitempty"`

	// Last modification timestamp (when the last create/update/delete request was sent to Cloud Foundry)
	// +optional
	LastModifiedAt *metav1.Time `json:"lastModifiedAt,omitempty"`

	// Cloud Foundry space guid
	// +optional
	SpaceGuid string `json:"spaceGuid,omitempty"`

	// List of status conditions to indicate the status of a Space.
	// Known condition types are `Ready`.
	// +optional
	Conditions []SpaceCondition `json:"conditions,omitempty"`

	// Readable form of the state.
	// +optional
	State SpaceState `json:"state,omitempty"`
}

SpaceStatus defines the observed state of Space.

func (*SpaceStatus) DeepCopy

func (in *SpaceStatus) DeepCopy() *SpaceStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceStatus.

func (*SpaceStatus) DeepCopyInto

func (in *SpaceStatus) DeepCopyInto(out *SpaceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL