v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Oct 12, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1alpha1 contains managed resources for DigitalOcean DatabaseCluster services. +kubebuilder:object:generate=true +groupName=database.do.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	StatusCreating  = "creating"
	StatusOnline    = "online"
	StatusResizing  = "resizing"
	StatusMigrating = "migrating"
	StatusForking   = "forking"
)

Known Database Cluster statuses

View Source
const (
	Group   = "database.do.crossplane.io"
	Version = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	DBKind             = reflect.TypeOf(DODatabaseCluster{}).Name()
	DBGroupKind        = schema.GroupKind{Group: Group, Kind: DBKind}.String()
	DBKindAPIVersion   = DBKind + "." + SchemeGroupVersion.String()
	DBGroupVersionKind = SchemeGroupVersion.WithKind(DBKind)
)

DB type metadata.

Functions

This section is empty.

Types

type DODatabaseCluster

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

	Spec   DODatabaseClusterSpec   `json:"spec"`
	Status DODatabaseClusterStatus `json:"status,omitempty"`
}

A DODatabaseCluster is a managed resource that represents a DigitalOcean Database Cluster. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,do}

func (*DODatabaseCluster) DeepCopy

func (in *DODatabaseCluster) DeepCopy() *DODatabaseCluster

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

func (*DODatabaseCluster) DeepCopyInto

func (in *DODatabaseCluster) DeepCopyInto(out *DODatabaseCluster)

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

func (*DODatabaseCluster) DeepCopyObject

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

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

func (*DODatabaseCluster) GetCondition

func (mg *DODatabaseCluster) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this DODatabaseCluster.

func (*DODatabaseCluster) GetDeletionPolicy

func (mg *DODatabaseCluster) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this DODatabaseCluster.

func (*DODatabaseCluster) GetProviderConfigReference

func (mg *DODatabaseCluster) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this DODatabaseCluster.

func (*DODatabaseCluster) GetProviderReference

func (mg *DODatabaseCluster) GetProviderReference() *xpv1.Reference

GetProviderReference of this DODatabaseCluster. Deprecated: Use GetProviderConfigReference.

func (*DODatabaseCluster) GetWriteConnectionSecretToReference

func (mg *DODatabaseCluster) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this DODatabaseCluster.

func (*DODatabaseCluster) SetConditions

func (mg *DODatabaseCluster) SetConditions(c ...xpv1.Condition)

SetConditions of this DODatabaseCluster.

func (*DODatabaseCluster) SetDeletionPolicy

func (mg *DODatabaseCluster) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this DODatabaseCluster.

func (*DODatabaseCluster) SetProviderConfigReference

func (mg *DODatabaseCluster) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this DODatabaseCluster.

func (*DODatabaseCluster) SetProviderReference

func (mg *DODatabaseCluster) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this DODatabaseCluster. Deprecated: Use SetProviderConfigReference.

func (*DODatabaseCluster) SetWriteConnectionSecretToReference

func (mg *DODatabaseCluster) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this DODatabaseCluster.

type DODatabaseClusterConnection

type DODatabaseClusterConnection struct {
	// A connection string in the format accepted by the psql command. This is provided as a convenience and should be able to be constructed by the other attributes.
	URI *string `json:"uri,omitempty"`

	// The name of the default database.
	Database *string `json:"database,omitempty"`

	// The FQDN pointing to the database cluster's current primary node.
	Host *string `json:"host,omitempty"`

	// The port on which the database cluster is listening.
	Port *int `json:"port,omitempty"`

	// The default user for the database.
	User *string `json:"user,omitempty"`

	// The randomly generated password for the default user.
	Password *string `json:"password,omitempty"`

	// A boolean value indicating if the connection should be made over SSL.
	SSL *bool `json:"ssl,omitempty"`
}

A DODatabaseClusterConnection defines the connection information for a Database Cluster.

func (*DODatabaseClusterConnection) DeepCopy

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

func (*DODatabaseClusterConnection) DeepCopyInto

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

type DODatabaseClusterList

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

DODatabaseClusterList contains a list of Database Clusters.

func (*DODatabaseClusterList) DeepCopy

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

func (*DODatabaseClusterList) DeepCopyInto

func (in *DODatabaseClusterList) DeepCopyInto(out *DODatabaseClusterList)

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

func (*DODatabaseClusterList) DeepCopyObject

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

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

func (*DODatabaseClusterList) GetItems

func (l *DODatabaseClusterList) GetItems() []resource.Managed

GetItems of this DODatabaseClusterList.

type DODatabaseClusterMaintenanceWindow

type DODatabaseClusterMaintenanceWindow struct {
	// The day of the week on which to apply maintenance updates.
	Day string `json:"day"`

	// The hour in UTC at which maintenance updates will be applied in 24 hour format.
	Hour string `json:"hour"`

	// A boolean value indicating whether any maintenance is scheduled to be performed in the next window.
	Pending bool `json:"pending,omitempty"`

	// A list of strings, each containing information about a pending maintenance update.
	Description []string `json:"description,omitempty"`
}

A DODatabaseClusterMaintenanceWindow defines a Database Cluster Maintenance Window.

func (*DODatabaseClusterMaintenanceWindow) DeepCopy

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

func (*DODatabaseClusterMaintenanceWindow) DeepCopyInto

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

type DODatabaseClusterObservation

type DODatabaseClusterObservation struct {
	// A unique ID that can be used to identify and reference a database cluster.
	// +kubebuilder:validation:Optional
	ID *string `json:"id,omitempty"`

	// A unique, human-readable name referring to a database cluster.
	Name string `json:"name"`

	// A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Redis, and "mongodb" for MongoDB
	Engine string `json:"engine"`

	// A string representing the version of the database engine in use for the cluster.
	Version string `json:"version,omitempty"`

	// The number of nodes in the database cluster.
	NumNodes int `json:"numNodes"`

	// The slug identifier representing the size of the nodes in the database cluster.
	Size string `json:"size"`

	// The slug identifier for the region where the database cluster is located.
	Region string `json:"region"`

	// A string representing the current status of the database cluster.
	//
	// Possible values:
	//	"creating"
	//	"online"
	//	"resizing"
	//	"migrating"
	//	"forking"
	Status string `json:"status,omitempty"`

	// A time value given in ISO8601 combined date and time format that represents when the database cluster was created.
	CreatedAt string `json:"createdAt,omitempty"`

	// A string specifying the UUID of the VPC to which the database cluster will be assigned. If excluded, the cluster when creating a new database cluster, it will be assigned to your account's default VPC for the region.
	PrivateNetworkUUID string `json:"privateNetworkUUID,omitempty"`

	// An array of tags that have been applied to the database cluster.
	Tags []string `json:"tags,omitempty"`

	// An array of strings containing the names of databases created in the database cluster.
	DbNames []string `json:"dbNames,omitempty"`

	Connection DODatabaseClusterConnection `json:"connection,omitempty"`

	PrivateConnection DODatabaseClusterConnection `json:"private_connection"`

	Users []DODatabaseClusterUser `json:"users,omitempty"`

	// +kubebuilder:validation:Optional
	MaintenanceWindow DODatabaseClusterMaintenanceWindow `json:"maintenanceWindow,omitempty"`
}

A DODatabaseClusterObservation reflects the observed state of a Database Cluster on DigitalOcean. https://docs.digitalocean.com/reference/api/api-reference/#operation/create_database_cluster

func (*DODatabaseClusterObservation) DeepCopy

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

func (*DODatabaseClusterObservation) DeepCopyInto

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

type DODatabaseClusterParameters

type DODatabaseClusterParameters struct {
	// Engine: A slug representing the database engine used for the cluster. The possible values are: "pg" for PostgreSQL, "mysql" for MySQL, "redis" for Redis, and "mongodb" for MongoDB.
	// +kubebuilder:validation:Enum="pg";"mysql";"redis";"mongodb"
	// +immutable
	Engine *string `json:"engine"`

	// Version: A string representing the version of the database engine in use for the cluster (Optional).
	// +optional
	// +immutable
	Version *string `json:"version,omitempty"`

	// NumNodes: The number of nodes in the database cluster.
	// +immutable
	NumNodes int `json:"numNodes"`

	// Size: The slug identifier representing the size of the nodes in the database cluster.
	// +immutable
	Size string `json:"size"`

	// Region: The slug identifier for the region where the database cluster is located.
	// +immutable
	Region string `json:"region"`

	// PrivateNetworkUUID: A string specifying the UUID of the VPC to which the database cluster will be assigned. If excluded, the cluster when creating a new database cluster, it will be assigned to your account's default VPC for the region (Optional).
	// +optional
	// +immutable
	PrivateNetworkUUID *string `json:"privateNetworkUUID,omitempty"`

	// Tags: An array of tags that have been applied to the database cluster (Optional).
	// +optional
	// +immutable
	Tags []string `json:"tags,omitempty"`
}

A DODatabaseClusterParameters defines the desired state of a DigitalOcean Database Cluster. All fields map directly to a Database Cluster https://docs.digitalocean.com/reference/api/api-reference/#operation/create_database_cluster

func (*DODatabaseClusterParameters) DeepCopy

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

func (*DODatabaseClusterParameters) DeepCopyInto

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

type DODatabaseClusterSpec

type DODatabaseClusterSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       DODatabaseClusterParameters `json:"forProvider"`
}

A DODatabaseClusterSpec defines the desired state of a Database Cluster

func (*DODatabaseClusterSpec) DeepCopy

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

func (*DODatabaseClusterSpec) DeepCopyInto

func (in *DODatabaseClusterSpec) DeepCopyInto(out *DODatabaseClusterSpec)

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

type DODatabaseClusterStatus

type DODatabaseClusterStatus struct {
	xpv1.ResourceStatus `json:",inline"`
	AtProvider          DODatabaseClusterObservation `json:"atProvider,omitempty"`
}

A DODatabaseClusterStatus represents the observed state of a Database Cluster

func (*DODatabaseClusterStatus) DeepCopy

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

func (*DODatabaseClusterStatus) DeepCopyInto

func (in *DODatabaseClusterStatus) DeepCopyInto(out *DODatabaseClusterStatus)

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

type DODatabaseClusterUser

type DODatabaseClusterUser struct {
	Name string `json:"name"`

	// A string representing the database user's role. The value will be either "primary" or "normal".
	Role string `json:"role,omitempty"`

	// A randomly generated password for the database user.
	Password string `json:"password,omitempty"`

	// +kubebuilder:validation:Optional
	MySQLSettings DODatabaseUserMySQLSettings `json:"mySQLSettings,omitempty"`
}

The DODatabaseClusterUser defines a Database Cluster User.

func (*DODatabaseClusterUser) DeepCopy

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

func (*DODatabaseClusterUser) DeepCopyInto

func (in *DODatabaseClusterUser) DeepCopyInto(out *DODatabaseClusterUser)

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

type DODatabaseUserMySQLSettings

type DODatabaseUserMySQLSettings struct {
	// A string specifying the authentication method to be used for connections to the MySQL user account.
	// The valid values are mysql_native_password or caching_sha2_password. If excluded when creating a new user,
	// the default for the version of MySQL in use will be used. As of MySQL 8.0, the default is caching_sha2_password.
	AuthPlugin string `json:"authPlugin"`
}

DODatabaseUserMySQLSettings Represents the MySQL Settings of a user for a DigitalOcean Database Cluster

func (*DODatabaseUserMySQLSettings) DeepCopy

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

func (*DODatabaseUserMySQLSettings) DeepCopyInto

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