v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2019 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the database v1alpha1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/crossplaneio/crossplane/pkg/apis/aws/database +k8s:defaulter-gen=TypeMeta +groupName=database.aws.crossplane.io

Package v1alpha1 contains API Schema definitions for the database v1alpha1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/crossplaneio/crossplane/pkg/apis/aws/database +k8s:defaulter-gen=TypeMeta +groupName=database.aws.crossplane.io

Index

Constants

View Source
const (
	MysqlEngine      = "mysql"
	PostgresqlEngine = "postgres"
)

SQL database engines.

View Source
const (
	Group                     = "database.aws.crossplane.io"
	Version                   = "v1alpha1"
	APIVersion                = Group + "/" + Version
	RDSInstanceKind           = "rdsinstance"
	RDSInstanceKindAPIVersion = RDSInstanceKind + "." + APIVersion
)

Kubernetes Group, Version, and Kind 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}
)

Functions

This section is empty.

Types

type RDSInstance

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

	Spec   RDSInstanceSpec   `json:"spec,omitempty"`
	Status RDSInstanceStatus `json:"status,omitempty"`
}

RDSInstance is the Schema for the instances API +k8s:openapi-gen=true +groupName=database.aws +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.bindingPhase" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.state" +kubebuilder:printcolumn:name="CLASS",type="string",JSONPath=".spec.classRef.name" +kubebuilder:printcolumn:name="VERSION",type="string",JSONPath=".spec.engineVersion" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"

func (*RDSInstance) ConnectionSecretName

func (r *RDSInstance) ConnectionSecretName() string

ConnectionSecretName returns a secret name from the reference

func (*RDSInstance) DeepCopy

func (in *RDSInstance) DeepCopy() *RDSInstance

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

func (*RDSInstance) DeepCopyInto

func (in *RDSInstance) DeepCopyInto(out *RDSInstance)

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

func (*RDSInstance) DeepCopyObject

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

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

func (*RDSInstance) IsAvailable

func (r *RDSInstance) IsAvailable() bool

IsAvailable for usage/binding

func (*RDSInstance) IsBound

func (r *RDSInstance) IsBound() bool

IsBound returns true if this instance is bound to a resource claim.

func (*RDSInstance) ObjectReference

func (r *RDSInstance) ObjectReference() *corev1.ObjectReference

ObjectReference to this RDSInstance

func (*RDSInstance) OwnerReference

func (r *RDSInstance) OwnerReference() metav1.OwnerReference

OwnerReference to use this instance as an owner

func (*RDSInstance) SetBound

func (r *RDSInstance) SetBound(bound bool)

SetBound specifies whether this instance is bound to a resource claim.

func (*RDSInstance) SetState

func (r *RDSInstance) SetState(s string)

SetState sets status state field

func (*RDSInstance) State

func (r *RDSInstance) State() string

State returns rds instance state value saved in the status (could be empty)

type RDSInstanceList

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

RDSInstanceList contains a list of RDSInstance

func (*RDSInstanceList) DeepCopy

func (in *RDSInstanceList) DeepCopy() *RDSInstanceList

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

func (*RDSInstanceList) DeepCopyInto

func (in *RDSInstanceList) DeepCopyInto(out *RDSInstanceList)

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

func (*RDSInstanceList) DeepCopyObject

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

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

type RDSInstanceSpec

type RDSInstanceSpec struct {
	MasterUsername string `json:"masterUsername"`
	Engine         string `json:"engine"`
	EngineVersion  string `json:"engineVersion,omitempty"`
	Class          string `json:"class"` // like "db.t2.micro"
	Size           int64  `json:"size"`  // size in gb

	// Specifies a DB subnet group for the DB instance. The new DB instance is created
	// in the VPC associated with the DB subnet group. If no DB subnet group is
	// specified, then the new DB instance is not created in a VPC.
	SubnetGroupName string `json:"subnetGroupName,omitempty"`

	// VPC Security groups that will allow the RDS instance to be accessed over the network.
	// You can consider the following groups:
	// 1) A default group that allows all communication amongst instances in that group
	// 2) A RDS specific group that allows port 3306 from allowed sources (clients and instances
	//	  that are expected to connect to the database.
	SecurityGroups []string `json:"securityGroups,omitempty"`

	// Kubernetes object references
	ClaimRef            *corev1.ObjectReference      `json:"claimRef,omitempty"`
	ClassRef            *corev1.ObjectReference      `json:"classRef,omitempty"`
	ConnectionSecretRef *corev1.LocalObjectReference `json:"connectionSecretRef,omitempty"`
	ProviderRef         corev1.LocalObjectReference  `json:"providerRef"`

	// ReclaimPolicy identifies how to handle the cloud resource after the deletion of this type
	ReclaimPolicy corev1alpha1.ReclaimPolicy `json:"reclaimPolicy,omitempty"`
}

RDSInstanceSpec defines the desired state of RDSInstance

func NewRDSInstanceSpec

func NewRDSInstanceSpec(properties map[string]string) *RDSInstanceSpec

NewRDSInstanceSpec from properties map

func (*RDSInstanceSpec) DeepCopy

func (in *RDSInstanceSpec) DeepCopy() *RDSInstanceSpec

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

func (*RDSInstanceSpec) DeepCopyInto

func (in *RDSInstanceSpec) DeepCopyInto(out *RDSInstanceSpec)

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

type RDSInstanceState

type RDSInstanceState string

RDSInstanceState represents the state of an RDS instance.

const (
	// The instance is healthy and available
	RDSInstanceStateAvailable RDSInstanceState = "available"
	// The instance is being created. The instance is inaccessible while it is being created.
	RDSInstanceStateCreating RDSInstanceState = "creating"
	// The instance is being deleted.
	RDSInstanceStateDeleting RDSInstanceState = "deleting"
	// The instance has failed and Amazon RDS can't recover it. Perform a point-in-time restore to the latest restorable time of the instance to recover the data.
	RDSInstanceStateFailed RDSInstanceState = "failed"
)

RDS instance states.

type RDSInstanceStatus

type RDSInstanceStatus struct {
	corev1alpha1.ConditionedStatus
	corev1alpha1.BindingStatusPhase
	State        string `json:"state,omitempty"`
	Message      string `json:"message,omitempty"`
	ProviderID   string `json:"providerID,omitempty"`   // the external ID to identify this resource in the cloud provider
	InstanceName string `json:"instanceName,omitempty"` // the generated DB Instance name
	Endpoint     string `json:"endpoint,omitempty"`     // rds instance endpoint
}

RDSInstanceStatus defines the observed state of RDSInstance

func (*RDSInstanceStatus) DeepCopy

func (in *RDSInstanceStatus) DeepCopy() *RDSInstanceStatus

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

func (*RDSInstanceStatus) DeepCopyInto

func (in *RDSInstanceStatus) DeepCopyInto(out *RDSInstanceStatus)

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