v1alpha1

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Mar 14, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the dbaas v1alpha1 API group +kubebuilder:object:generate=true +groupName=dbaas.redhat.com

Index

Constants

View Source
const (
	// DBaaS condition types
	DBaaSInventoryReadyType         string = "InventoryReady"
	DBaaSInventoryProviderSyncType  string = "SpecSynced"
	DBaaSConnectionReadyType        string = "ConnectionReady"
	DBaaSConnectionProviderSyncType string = "ReadyForBinding"
	DBaaSInstanceReadyType          string = "InstanceReady"
	DBaaSInstanceProviderSyncType   string = "ProvisionReady"

	// DBaaS condition reasons
	Ready                       string = "Ready"
	DBaaSTenantNotFound         string = "DBaaSTenantNotFound"
	DBaaSProviderNotFound       string = "DBaaSProviderNotFound"
	DBaaSInventoryNotFound      string = "DBaaSInventoryNotFound"
	DBaaSInventoryNotReady      string = "DBaaSInventoryNotReady"
	DBaaSInvalidNamespace       string = "InvalidNamespace"
	ProviderReconcileInprogress string = "ProviderReconcileInprogress"
	ProviderParsingError        string = "ProviderParsingError"

	// DBaaS condition messages
	MsgProviderCRStatusSyncDone      string = "Provider Custom Resource status sync completed"
	MsgProviderCRReconcileInProgress string = "DBaaS Provider Custom Resource reconciliation in progress"
	MsgInventoryNotReady             string = "Inventory discovery not done"
	MsgTenantNotFound                string = "Failed to find DBaaS tenants"
	MsgConnInvalidNamespace          string = "Connection is not in a valid namespace"
	MsgInstInvalidNamespace          string = "Instance is not in a valid namespace"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "dbaas.redhat.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 InstanceParameterSpecs = InstanceParameterSpec{}

Functions

This section is empty.

Types

type CredentialField

type CredentialField struct {
	// The name for this field
	Key string `json:"key"`

	// A user-friendly name for this field
	DisplayName string `json:"displayName"`

	// The type of field (string, maskedstring, integer, boolean)
	Type string `json:"type"`

	// If this field is required or not
	Required bool `json:"required"`
}

func (*CredentialField) DeepCopy

func (in *CredentialField) DeepCopy() *CredentialField

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

func (*CredentialField) DeepCopyInto

func (in *CredentialField) DeepCopyInto(out *CredentialField)

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

type DBaaSConnection

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

	Spec   DBaaSConnectionSpec   `json:"spec,omitempty"`
	Status DBaaSConnectionStatus `json:"status,omitempty"`
}

+operator-sdk:csv:customresourcedefinitions:displayName="DBaaSConnection" DBaaSConnection is the Schema for the dbaasconnections API

func (*DBaaSConnection) DeepCopy

func (in *DBaaSConnection) DeepCopy() *DBaaSConnection

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

func (*DBaaSConnection) DeepCopyInto

func (in *DBaaSConnection) DeepCopyInto(out *DBaaSConnection)

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

func (*DBaaSConnection) DeepCopyObject

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

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

func (*DBaaSConnection) SetupWebhookWithManager

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

func (*DBaaSConnection) ValidateCreate

func (r *DBaaSConnection) ValidateCreate() error

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

func (*DBaaSConnection) ValidateDelete

func (r *DBaaSConnection) ValidateDelete() error

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

func (*DBaaSConnection) ValidateUpdate

func (r *DBaaSConnection) ValidateUpdate(old runtime.Object) error

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

type DBaaSConnectionList

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

DBaaSConnectionList contains a list of DBaaSConnection

func (*DBaaSConnectionList) DeepCopy

func (in *DBaaSConnectionList) DeepCopy() *DBaaSConnectionList

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

func (*DBaaSConnectionList) DeepCopyInto

func (in *DBaaSConnectionList) DeepCopyInto(out *DBaaSConnectionList)

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

func (*DBaaSConnectionList) DeepCopyObject

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

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

type DBaaSConnectionSpec

type DBaaSConnectionSpec struct {
	// A reference to the relevant DBaaSInventory CR
	InventoryRef NamespacedName `json:"inventoryRef"`

	// The ID of the instance to connect to, as seen in the Status of
	// the referenced DBaaSInventory
	InstanceID string `json:"instanceID"`
}

DBaaSConnectionSpec defines the desired state of DBaaSConnection

func (*DBaaSConnectionSpec) DeepCopy

func (in *DBaaSConnectionSpec) DeepCopy() *DBaaSConnectionSpec

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

func (*DBaaSConnectionSpec) DeepCopyInto

func (in *DBaaSConnectionSpec) DeepCopyInto(out *DBaaSConnectionSpec)

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

type DBaaSConnectionStatus

type DBaaSConnectionStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Secret holding the credentials needed for accessing the DB instance
	CredentialsRef *corev1.LocalObjectReference `json:"credentialsRef,omitempty"`

	// A ConfigMap holding non-sensitive information needed for connecting to the DB instance
	ConnectionInfoRef *corev1.LocalObjectReference `json:"connectionInfoRef,omitempty"`
}

DBaaSConnectionStatus defines the observed state of DBaaSConnection

func (*DBaaSConnectionStatus) DeepCopy

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

func (*DBaaSConnectionStatus) DeepCopyInto

func (in *DBaaSConnectionStatus) DeepCopyInto(out *DBaaSConnectionStatus)

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

type DBaaSInstance added in v0.1.4

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

	Spec   DBaaSInstanceSpec   `json:"spec,omitempty"`
	Status DBaaSInstanceStatus `json:"status,omitempty"`
}

+operator-sdk:csv:customresourcedefinitions:displayName="DBaaSInstance" DBaaSInstance is the Schema for the dbaasinstances API

func (*DBaaSInstance) DeepCopy added in v0.1.4

func (in *DBaaSInstance) DeepCopy() *DBaaSInstance

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

func (*DBaaSInstance) DeepCopyInto added in v0.1.4

func (in *DBaaSInstance) DeepCopyInto(out *DBaaSInstance)

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

func (*DBaaSInstance) DeepCopyObject added in v0.1.4

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

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

type DBaaSInstanceList added in v0.1.4

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

DBaaSInstanceList contains a list of DBaaSInstance

func (*DBaaSInstanceList) DeepCopy added in v0.1.4

func (in *DBaaSInstanceList) DeepCopy() *DBaaSInstanceList

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

func (*DBaaSInstanceList) DeepCopyInto added in v0.1.4

func (in *DBaaSInstanceList) DeepCopyInto(out *DBaaSInstanceList)

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

func (*DBaaSInstanceList) DeepCopyObject added in v0.1.4

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

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

type DBaaSInstanceSpec added in v0.1.4

type DBaaSInstanceSpec struct {
	// A reference to the relevant DBaaSInventory CR
	InventoryRef NamespacedName `json:"inventoryRef"`

	// The name of this instance in the database service
	Name string `json:"name"`

	// Identifies the desired cloud infrastructure provider
	CloudProvider string `json:"cloudProvider,omitempty"`

	// Identifies the requested deployment region within the cloud provider (e.g. us-east-1)
	CloudRegion string `json:"cloudRegion,omitempty"`

	// Any other provider-specific parameters related to the instance provisioning
	OtherInstanceParams map[string]string `json:"otherInstanceParams,omitempty"`
}

DBaaSInstanceSpec defines the desired state of DBaaSInstance

func (*DBaaSInstanceSpec) DeepCopy added in v0.1.4

func (in *DBaaSInstanceSpec) DeepCopy() *DBaaSInstanceSpec

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

func (*DBaaSInstanceSpec) DeepCopyInto added in v0.1.4

func (in *DBaaSInstanceSpec) DeepCopyInto(out *DBaaSInstanceSpec)

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

type DBaaSInstanceStatus added in v0.1.4

type DBaaSInstanceStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// The ID of the instance,
	InstanceID string `json:"instanceID"`

	// Any other provider-specific information related to this instance
	InstanceInfo map[string]string `json:"instanceInfo,omitempty"`

	// Represents the cluster provisioning phase
	// Pending - provisioning not yet started
	// Creating - provisioning in progress
	// Updating - cluster updating in progress
	// Deleting - cluster deletion in progress
	// Deleted - cluster has been deleted
	// Ready - cluster provisioning complete
	Phase string `json:"phase"`
}

DBaaSInstanceStatus defines the observed state of DBaaSInstance

func (*DBaaSInstanceStatus) DeepCopy added in v0.1.4

func (in *DBaaSInstanceStatus) DeepCopy() *DBaaSInstanceStatus

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

func (*DBaaSInstanceStatus) DeepCopyInto added in v0.1.4

func (in *DBaaSInstanceStatus) DeepCopyInto(out *DBaaSInstanceStatus)

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

type DBaaSInventory

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

	Spec   DBaaSOperatorInventorySpec `json:"spec,omitempty"`
	Status DBaaSInventoryStatus       `json:"status,omitempty"`
}

+operator-sdk:csv:customresourcedefinitions:displayName="Provider Account" DBaaSInventory is the Schema for the dbaasinventory API. Inventory objects must be created in a valid Tenant namespace.

func (*DBaaSInventory) DeepCopy

func (in *DBaaSInventory) DeepCopy() *DBaaSInventory

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

func (*DBaaSInventory) DeepCopyInto

func (in *DBaaSInventory) DeepCopyInto(out *DBaaSInventory)

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

func (*DBaaSInventory) DeepCopyObject

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

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

func (*DBaaSInventory) SetupWebhookWithManager added in v0.1.4

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

func (*DBaaSInventory) ValidateCreate added in v0.1.4

func (r *DBaaSInventory) ValidateCreate() error

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

func (*DBaaSInventory) ValidateDelete added in v0.1.4

func (r *DBaaSInventory) ValidateDelete() error

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

func (*DBaaSInventory) ValidateUpdate added in v0.1.4

func (r *DBaaSInventory) ValidateUpdate(old runtime.Object) error

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

type DBaaSInventoryList

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

DBaaSInventoryList contains a list of DBaaSInventories

func (*DBaaSInventoryList) DeepCopy

func (in *DBaaSInventoryList) DeepCopy() *DBaaSInventoryList

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

func (*DBaaSInventoryList) DeepCopyInto

func (in *DBaaSInventoryList) DeepCopyInto(out *DBaaSInventoryList)

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

func (*DBaaSInventoryList) DeepCopyObject

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

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

type DBaaSInventorySpec

type DBaaSInventorySpec struct {
	// The Secret containing the provider-specific connection credentials to use with its API
	// endpoint. The format of the Secret is specified in the provider’s operator in its
	// DBaaSProvider CR (CredentialFields key). It is recommended to place the Secret in a
	// namespace with limited accessibility.
	CredentialsRef *NamespacedName `json:"credentialsRef"`
}

DBaaSInventorySpec defines the Inventory Spec to be used by provider operators

func (*DBaaSInventorySpec) DeepCopy

func (in *DBaaSInventorySpec) DeepCopy() *DBaaSInventorySpec

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

func (*DBaaSInventorySpec) DeepCopyInto

func (in *DBaaSInventorySpec) DeepCopyInto(out *DBaaSInventorySpec)

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

type DBaaSInventoryStatus

type DBaaSInventoryStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// A list of instances returned from querying the DB provider
	Instances []Instance `json:"instances,omitempty"`
}

DBaaSInventoryStatus defines the Inventory status to be used by provider operators

func (*DBaaSInventoryStatus) DeepCopy

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

func (*DBaaSInventoryStatus) DeepCopyInto

func (in *DBaaSInventoryStatus) DeepCopyInto(out *DBaaSInventoryStatus)

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

type DBaaSOperatorInventorySpec

type DBaaSOperatorInventorySpec struct {
	// A reference to a DBaaSProvider CR
	ProviderRef NamespacedName `json:"providerRef"`

	// Optionally define developer user and group access to this inventory
	Authz DBaasUsersGroups `json:"authz,omitempty"`

	// Namespaces in which DBaaSConnections/DBaaSInstances are allowed to reference this Inventory.
	// Overrides the corresponding DBaaSTenant setting. Use "*" to allow all namespaces.
	// If not set in either the tenant or inventory object, connections will only be allowed in the inventory namespace.
	ConnectionNamespaces []string `json:"connectionNamespaces,omitempty"`

	// The properties that will be copied into the provider’s inventory Spec
	DBaaSInventorySpec `json:",inline"`
}

DBaaSOperatorInventorySpec defines the desired state of DBaaSInventory

func (*DBaaSOperatorInventorySpec) DeepCopy

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

func (*DBaaSOperatorInventorySpec) DeepCopyInto

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

type DBaaSPlatform

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

	Spec   DBaaSPlatformSpec   `json:"spec,omitempty"`
	Status DBaaSPlatformStatus `json:"status,omitempty"`
}

+operator-sdk:csv:customresourcedefinitions:displayName="DBaaSPlatform" DBaaSPlatform is the Schema for the dbaasplatforms API

func (*DBaaSPlatform) DeepCopy

func (in *DBaaSPlatform) DeepCopy() *DBaaSPlatform

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

func (*DBaaSPlatform) DeepCopyInto

func (in *DBaaSPlatform) DeepCopyInto(out *DBaaSPlatform)

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

func (*DBaaSPlatform) DeepCopyObject

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

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

type DBaaSPlatformList

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

DBaaSPlatformList contains a list of DBaaSPlatform

func (*DBaaSPlatformList) DeepCopy

func (in *DBaaSPlatformList) DeepCopy() *DBaaSPlatformList

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

func (*DBaaSPlatformList) DeepCopyInto

func (in *DBaaSPlatformList) DeepCopyInto(out *DBaaSPlatformList)

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

func (*DBaaSPlatformList) DeepCopyObject

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

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

type DBaaSPlatformSpec

type DBaaSPlatformSpec struct {
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=1440
	// The SyncPeriod set The minimum interval at which the provider operator controllers reconcile, the default value is 180 minutes.
	SyncPeriod *int `json:"syncPeriod,omitempty"`
}

DBaaSPlatformSpec defines the desired state of DBaaSPlatform

func (*DBaaSPlatformSpec) DeepCopy

func (in *DBaaSPlatformSpec) DeepCopy() *DBaaSPlatformSpec

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

func (*DBaaSPlatformSpec) DeepCopyInto

func (in *DBaaSPlatformSpec) DeepCopyInto(out *DBaaSPlatformSpec)

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

type DBaaSPlatformStatus

type DBaaSPlatformStatus struct {
	PlatformName   PlatformsName         `json:"platformName"`
	PlatformStatus PlatformsInstlnStatus `json:"platformStatus"`
	LastMessage    string                `json:"lastMessage,omitempty"`
}

DBaaSPlatformStatus defines the observed state of DBaaSPlatform

func (*DBaaSPlatformStatus) DeepCopy

func (in *DBaaSPlatformStatus) DeepCopy() *DBaaSPlatformStatus

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

func (*DBaaSPlatformStatus) DeepCopyInto

func (in *DBaaSPlatformStatus) DeepCopyInto(out *DBaaSPlatformStatus)

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

type DBaaSProvider

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

	Spec   DBaaSProviderSpec   `json:"spec,omitempty"`
	Status DBaaSProviderStatus `json:"status,omitempty"`
}

+operator-sdk:csv:customresourcedefinitions:displayName="DBaaSProvider" DBaaSProvider is the Schema for the dbaasproviders API

func (*DBaaSProvider) DeepCopy

func (in *DBaaSProvider) DeepCopy() *DBaaSProvider

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

func (*DBaaSProvider) DeepCopyInto

func (in *DBaaSProvider) DeepCopyInto(out *DBaaSProvider)

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

func (*DBaaSProvider) DeepCopyObject

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

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

type DBaaSProviderConnection

type DBaaSProviderConnection struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DBaaSConnectionSpec   `json:"spec,omitempty"`
	Status DBaaSConnectionStatus `json:"status,omitempty"`
}

DBaaSProviderConnection is the schema for unmarshalling provider connection object

func (*DBaaSProviderConnection) DeepCopy

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

func (*DBaaSProviderConnection) DeepCopyInto

func (in *DBaaSProviderConnection) DeepCopyInto(out *DBaaSProviderConnection)

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

type DBaaSProviderInstance added in v0.1.4

type DBaaSProviderInstance struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DBaaSInstanceSpec   `json:"spec,omitempty"`
	Status DBaaSInstanceStatus `json:"status,omitempty"`
}

DBaaSProviderInstance is the schema for unmarshalling provider instance object

func (*DBaaSProviderInstance) DeepCopy added in v0.1.4

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

func (*DBaaSProviderInstance) DeepCopyInto added in v0.1.4

func (in *DBaaSProviderInstance) DeepCopyInto(out *DBaaSProviderInstance)

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

type DBaaSProviderInventory

type DBaaSProviderInventory struct {
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   DBaaSInventorySpec   `json:"spec,omitempty"`
	Status DBaaSInventoryStatus `json:"status,omitempty"`
}

DBaaSProviderInventory is the schema for unmarshalling provider inventory object

func (*DBaaSProviderInventory) DeepCopy

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

func (*DBaaSProviderInventory) DeepCopyInto

func (in *DBaaSProviderInventory) DeepCopyInto(out *DBaaSProviderInventory)

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

type DBaaSProviderList

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

DBaaSProviderList contains a list of DBaaSProvider

func (*DBaaSProviderList) DeepCopy

func (in *DBaaSProviderList) DeepCopy() *DBaaSProviderList

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

func (*DBaaSProviderList) DeepCopyInto

func (in *DBaaSProviderList) DeepCopyInto(out *DBaaSProviderList)

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

func (*DBaaSProviderList) DeepCopyObject

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

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

type DBaaSProviderSpec

type DBaaSProviderSpec struct {
	// Provider contains information about database provider & platform
	Provider DatabaseProvider `json:"provider"`

	// InventoryKind is the name of the inventory resource (CRD) defined by the provider
	InventoryKind string `json:"inventoryKind"`

	// ConnectionKind is the name of the connection resource (CRD) defined by the provider
	ConnectionKind string `json:"connectionKind"`

	// InstanceKind is the name of the instance resource (CRD) defined by the provider for provisioning
	InstanceKind string `json:"instanceKind"`

	// CredentialFields indicates what information to collect from UX & how to display fields in a form
	CredentialFields []CredentialField `json:"credentialFields"`

	// AllowsFreeTrial indicates whether the provider provides free trials
	AllowsFreeTrial bool `json:"allowsFreeTrial"`

	// ExternalProvisionURL URL for provisioning instances through database provider web portal
	ExternalProvisionURL string `json:"externalProvisionURL"`

	// ExternalProvisionDescription instructions on how to provision instances using provider web portal
	ExternalProvisionDescription string `json:"externalProvisionDescription"`

	// InstanceParameterSpecs  indicates what parameters to collect from UX & how to display fields in a form in order to provision an instance
	InstanceParameterSpecs []InstanceParameterSpec `json:"instanceParameterSpecs"`
}

DBaaSProviderSpec defines the desired state of DBaaSProvider

func (*DBaaSProviderSpec) DeepCopy

func (in *DBaaSProviderSpec) DeepCopy() *DBaaSProviderSpec

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

func (*DBaaSProviderSpec) DeepCopyInto

func (in *DBaaSProviderSpec) DeepCopyInto(out *DBaaSProviderSpec)

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

type DBaaSProviderStatus

type DBaaSProviderStatus struct {
}

DBaaSProviderStatus defines the observed state of DBaaSProvider

func (*DBaaSProviderStatus) DeepCopy

func (in *DBaaSProviderStatus) DeepCopy() *DBaaSProviderStatus

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

func (*DBaaSProviderStatus) DeepCopyInto

func (in *DBaaSProviderStatus) DeepCopyInto(out *DBaaSProviderStatus)

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

type DBaaSTenant

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

	Spec   DBaaSTenantSpec   `json:"spec,omitempty"`
	Status DBaaSTenantStatus `json:"status,omitempty"`
}

+operator-sdk:csv:customresourcedefinitions:displayName="DBaaSTenant" DBaaSTenant is the Schema for the dbaastenants API

func (*DBaaSTenant) DeepCopy

func (in *DBaaSTenant) DeepCopy() *DBaaSTenant

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

func (*DBaaSTenant) DeepCopyInto

func (in *DBaaSTenant) DeepCopyInto(out *DBaaSTenant)

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

func (*DBaaSTenant) DeepCopyObject

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

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

type DBaaSTenantList

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

DBaaSTenantList contains a list of DBaaSTenant

func (*DBaaSTenantList) DeepCopy

func (in *DBaaSTenantList) DeepCopy() *DBaaSTenantList

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

func (*DBaaSTenantList) DeepCopyInto

func (in *DBaaSTenantList) DeepCopyInto(out *DBaaSTenantList)

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

func (*DBaaSTenantList) DeepCopyObject

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

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

type DBaaSTenantSpec

type DBaaSTenantSpec struct {
	// Namespace to watch for DBaaSInventories
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=2
	InventoryNamespace string `json:"inventoryNamespace"`
	// Specify a Tenant’s default Developers for DBaaSInventory “viewer” access
	Authz DBaasUsersGroups `json:"authz,omitempty"`
	// Default namespaces where DBaaSConnections/DBaaSInstances are allowed to reference a tenant's inventories.
	// Each inventory can individually override this. Use "*" to allow all namespaces.
	// If not set in either the tenant or inventory object, connections will only be allowed in the inventory namespace.
	ConnectionNamespaces []string `json:"connectionNamespaces,omitempty"`
}

DBaaSTenantSpec defines Tenant inventory namespace and user authorizations

func (*DBaaSTenantSpec) DeepCopy

func (in *DBaaSTenantSpec) DeepCopy() *DBaaSTenantSpec

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

func (*DBaaSTenantSpec) DeepCopyInto

func (in *DBaaSTenantSpec) DeepCopyInto(out *DBaaSTenantSpec)

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

type DBaaSTenantStatus

type DBaaSTenantStatus struct {
}

DBaaSTenantStatus defines the observed state of DBaaSTenant

func (*DBaaSTenantStatus) DeepCopy

func (in *DBaaSTenantStatus) DeepCopy() *DBaaSTenantStatus

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

func (*DBaaSTenantStatus) DeepCopyInto

func (in *DBaaSTenantStatus) DeepCopyInto(out *DBaaSTenantStatus)

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

type DBaasUsersGroups

type DBaasUsersGroups struct {
	Users  []string `json:"users,omitempty"`
	Groups []string `json:"groups,omitempty"`
}

DBaasUsersGroups designates which OpenShift users and groups to authorize

func (*DBaasUsersGroups) DeepCopy

func (in *DBaasUsersGroups) DeepCopy() *DBaasUsersGroups

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

func (*DBaasUsersGroups) DeepCopyInto

func (in *DBaasUsersGroups) DeepCopyInto(out *DBaasUsersGroups)

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

type DatabaseProvider

type DatabaseProvider struct {
	// Indicates the name used to specify Service Binding origin parameter (e.g. 'Red Hat DBaas / MongoDB Atlas')
	Name string `json:"name"`

	// A user-friendly name for this database provider (e.g. 'MongoDB Atlas')
	DisplayName string `json:"displayName"`

	// DisplayDescription indicates the description text shown for a Provider within UX (e.g. developer’s catalog tile)
	DisplayDescription string `json:"displayDescription"`

	// Icon information indicates what logo we display on developer catalog tile
	Icon ProviderIcon `json:"icon"`
}

func (*DatabaseProvider) DeepCopy

func (in *DatabaseProvider) DeepCopy() *DatabaseProvider

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

func (*DatabaseProvider) DeepCopyInto

func (in *DatabaseProvider) DeepCopyInto(out *DatabaseProvider)

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

type Instance

type Instance struct {
	// A provider-specific identifier for this instance in the database service. It may contain one or
	// more pieces of information used by the provider operator to identify the instance on the
	// database service.
	InstanceID string `json:"instanceID"`

	// The name of this instance in the database service
	Name string `json:"name,omitempty"`

	// Any other provider-specific information related to this instance
	InstanceInfo map[string]string `json:"instanceInfo,omitempty"`
}

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

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

func (*Instance) DeepCopyInto

func (in *Instance) DeepCopyInto(out *Instance)

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

type InstanceParameterSpec added in v0.1.4

type InstanceParameterSpec struct {
	// The name for this field
	Name string `json:"name"`

	// A user-friendly name for this parameter
	DisplayName string `json:"displayName"`

	// The type of parameter (string, maskedstring, integer, boolean)
	Type string `json:"type"`

	// If this field is required or not
	Required bool `json:"required"`

	// Default value for this field
	DefaultValue string `json:"defaultValue,omitempty"`
}

func (*InstanceParameterSpec) DeepCopy added in v0.1.4

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

func (*InstanceParameterSpec) DeepCopyInto added in v0.1.4

func (in *InstanceParameterSpec) DeepCopyInto(out *InstanceParameterSpec)

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

type NamespacedName

type NamespacedName struct {
	// The namespace where object of known type is stored
	Namespace string `json:"namespace,omitempty"`

	// The name for object of known type
	Name string `json:"name"`
}

func (*NamespacedName) DeepCopy

func (in *NamespacedName) DeepCopy() *NamespacedName

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

func (*NamespacedName) DeepCopyInto

func (in *NamespacedName) DeepCopyInto(out *NamespacedName)

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

type PlatformConfig added in v0.1.4

type PlatformConfig struct {
	Name           string
	CSV            string
	DeploymentName string
	Image          string
	PackageName    string
	Channel        string
	DisplayName    string
	Envs           []v1.EnvVar
	Type           PlatformsType
}

func (*PlatformConfig) DeepCopy added in v0.1.4

func (in *PlatformConfig) DeepCopy() *PlatformConfig

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

func (*PlatformConfig) DeepCopyInto added in v0.1.4

func (in *PlatformConfig) DeepCopyInto(out *PlatformConfig)

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

type PlatformsInstlnStatus

type PlatformsInstlnStatus string
const (
	ResultSuccess    PlatformsInstlnStatus = "success"
	ResultFailed     PlatformsInstlnStatus = "failed"
	ResultInProgress PlatformsInstlnStatus = "in progress"
)

type PlatformsName

type PlatformsName string
const (
	CrunchyBridgeInstallation          PlatformsName = "crunchy-bridge"
	MongoDBAtlasInstallation           PlatformsName = "mongodb-atlas"
	DBaaSDynamicPluginInstallation     PlatformsName = "dbaas-dynamic-plugin"
	ConsoleTelemetryPluginInstallation PlatformsName = "console-telemetry-plugin"
	CockroachDBInstallation            PlatformsName = "cockroachdb-cloud"
	DBaaSQuickStartInstallation        PlatformsName = "dbaas-quick-starts"
)

type PlatformsType added in v0.1.4

type PlatformsType int
const (
	TypeQuickStart PlatformsType = iota
	TypeConsolePlugin
	TypeProvider
)

type ProviderIcon

type ProviderIcon struct {
	Data      string `json:"base64data"`
	MediaType string `json:"mediatype"`
}

ProviderIcon follows same field/naming formats as CSV

func (*ProviderIcon) DeepCopy

func (in *ProviderIcon) DeepCopy() *ProviderIcon

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

func (*ProviderIcon) DeepCopyInto

func (in *ProviderIcon) DeepCopyInto(out *ProviderIcon)

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