v1beta1

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=dcs.flexibleengine.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "dcs.flexibleengine.upbound.io"
	CRDVersion = "v1beta1"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	Instance_Kind             = "Instance"
	Instance_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Instance_Kind}.String()
	Instance_KindAPIVersion   = Instance_Kind + "." + CRDGroupVersion.String()
	Instance_GroupVersionKind = CRDGroupVersion.WithKind(Instance_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Instance

type Instance struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceSpec   `json:"spec"`
	Status            InstanceStatus `json:"status,omitempty"`
}

Instance is the Schema for the Instances API. ""page_title: "flexibleengine_dcs_instance_v1" +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:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,flexibleengine}

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.

func (*Instance) DeepCopyObject

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

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

func (*Instance) GetCondition

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

GetCondition of this Instance.

func (*Instance) GetConnectionDetailsMapping

func (tr *Instance) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Instance

func (*Instance) GetDeletionPolicy

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

GetDeletionPolicy of this Instance.

func (*Instance) GetID

func (tr *Instance) GetID() string

GetID returns ID of underlying Terraform resource of this Instance

func (*Instance) GetObservation

func (tr *Instance) GetObservation() (map[string]any, error)

GetObservation of this Instance

func (*Instance) GetParameters

func (tr *Instance) GetParameters() (map[string]any, error)

GetParameters of this Instance

func (*Instance) GetProviderConfigReference

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

GetProviderConfigReference of this Instance.

func (*Instance) GetProviderReference

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

GetProviderReference of this Instance. Deprecated: Use GetProviderConfigReference.

func (*Instance) GetPublishConnectionDetailsTo

func (mg *Instance) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Instance.

func (*Instance) GetTerraformResourceType

func (mg *Instance) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Instance

func (*Instance) GetTerraformSchemaVersion

func (tr *Instance) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Instance) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Instance.

func (*Instance) LateInitialize

func (tr *Instance) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Instance using its observed tfState. returns True if there are any spec changes for the resource.

func (*Instance) ResolveReferences

func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Instance.

func (*Instance) SetConditions

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

SetConditions of this Instance.

func (*Instance) SetDeletionPolicy

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

SetDeletionPolicy of this Instance.

func (*Instance) SetObservation

func (tr *Instance) SetObservation(obs map[string]any) error

SetObservation for this Instance

func (*Instance) SetParameters

func (tr *Instance) SetParameters(params map[string]any) error

SetParameters for this Instance

func (*Instance) SetProviderConfigReference

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

SetProviderConfigReference of this Instance.

func (*Instance) SetProviderReference

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

SetProviderReference of this Instance. Deprecated: Use SetProviderConfigReference.

func (*Instance) SetPublishConnectionDetailsTo

func (mg *Instance) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Instance.

func (*Instance) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Instance.

type InstanceList

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

InstanceList contains a list of Instances

func (*InstanceList) DeepCopy

func (in *InstanceList) DeepCopy() *InstanceList

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

func (*InstanceList) DeepCopyInto

func (in *InstanceList) DeepCopyInto(out *InstanceList)

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

func (*InstanceList) DeepCopyObject

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

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

func (*InstanceList) GetItems

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

GetItems of this InstanceList.

type InstanceObservation

type InstanceObservation struct {

	// The resource ID in UUID format.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Cache node's IP address in tenant's VPC.
	IP *string `json:"ip,omitempty" tf:"ip,omitempty"`

	// Internal DCS version.
	InternalVersion *string `json:"internalVersion,omitempty" tf:"internal_version,omitempty"`

	// Overall memory size. Unit: MB.
	MaxMemory *float64 `json:"maxMemory,omitempty" tf:"max_memory,omitempty"`

	// Resource specifications.
	// dcs.single_node: indicates a DCS instance in single-node mode.
	// dcs.master_standby: indicates a DCS instance in master/standby mode.
	// dcs.cluster: indicates a DCS instance in cluster mode.
	ResourceSpecCode *string `json:"resourceSpecCode,omitempty" tf:"resource_spec_code,omitempty"`

	// Indicates the name of a security group.
	SecurityGroupName *string `json:"securityGroupName,omitempty" tf:"security_group_name,omitempty"`

	// Status of the Cache instance.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Indicates the name of a subnet.
	SubnetName *string `json:"subnetName,omitempty" tf:"subnet_name,omitempty"`

	// Size of the used memory. Unit: MB.
	UsedMemory *float64 `json:"usedMemory,omitempty" tf:"used_memory,omitempty"`

	// Indicates the name of a vpc.
	VPCName *string `json:"vpcName,omitempty" tf:"vpc_name,omitempty"`
}

func (*InstanceObservation) DeepCopy

func (in *InstanceObservation) DeepCopy() *InstanceObservation

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

func (*InstanceObservation) DeepCopyInto

func (in *InstanceObservation) DeepCopyInto(out *InstanceObservation)

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

type InstanceParameters

type InstanceParameters struct {

	// Username used for accessing a DCS instance after password
	// authentication. A username starts with a letter, consists of 1 to 64 characters,
	// and supports only letters, digits, and hyphens (-).
	// Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	AccessUser *string `json:"accessUser,omitempty" tf:"access_user,omitempty"`

	// IDs or Names of the AZs where cache nodes reside. For details
	// on how to query AZs, see Querying AZ Information.
	// Changing this creates a new instance.
	// +kubebuilder:validation:Required
	AvailableZones []*string `json:"availableZones" tf:"available_zones,omitempty"`

	// Day in a week on which backup starts. Range: 1–7. Where: 1
	// indicates Monday; 7 indicates Sunday. Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	BackupAt []*float64 `json:"backupAt,omitempty" tf:"backup_at,omitempty"`

	// Backup type. Options:
	// auto: automatic backup.
	// manual: manual backup.
	// Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	BackupType *string `json:"backupType,omitempty" tf:"backup_type,omitempty"`

	// Time at which backup starts. "00:00-01:00" indicates that backup
	// starts at 00:00:00. Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	BeginAt *string `json:"beginAt,omitempty" tf:"begin_at,omitempty"`

	// Indicates the Cache capacity. Unit: GB.
	// For a DCS Redis or Memcached instance in single-node or master/standby mode, the cache
	// capacity can be 2 GB, 4 GB, 8 GB, 16 GB, 32 GB, or 64 GB.
	// For a DCS Redis instance in cluster mode, the cache capacity can be 64, 128, 256, 512,
	// or 1024 GB. Changing this creates a new instance.
	// +kubebuilder:validation:Required
	Capacity *float64 `json:"capacity" tf:"capacity,omitempty"`

	// Indicates the description of an instance. It is a character
	// string containing not more than 1024 characters.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Indicates a cache engine. Valid values are Redis and Memcached.
	// Changing this creates a new instance.
	// +kubebuilder:validation:Required
	Engine *string `json:"engine" tf:"engine,omitempty"`

	// Indicates the version of a cache engine.
	// This parameter is only supported and mandatory for Redis engine.
	// Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	EngineVersion *string `json:"engineVersion,omitempty" tf:"engine_version,omitempty"`

	// +kubebuilder:validation:Optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Indicates the time at which a maintenance time window starts.
	// Format: HH:mm:ss.
	// The start time and end time of a maintenance time window must indicate the time segment of
	// a supported maintenance time window. For details, see section Querying Maintenance Time Windows.
	// The start time must be set to 22:00, 02:00, 06:00, 10:00, 14:00, or 18:00.
	// Parameters maintain_begin and maintain_end must be set in pairs. If parameter maintain_begin
	// is left blank, parameter maintain_end is also blank. In this case, the system automatically
	// allocates the default start time 02:00.
	// +kubebuilder:validation:Optional
	MaintainBegin *string `json:"maintainBegin,omitempty" tf:"maintain_begin,omitempty"`

	// Indicates the time at which a maintenance time window ends.
	// Format: HH:mm:ss.
	// The start time and end time of a maintenance time window must indicate the time segment of
	// a supported maintenance time window. For details, see section Querying Maintenance Time Windows.
	// The end time is four hours later than the start time. For example, if the start time is 22:00,
	// the end time is 02:00.
	// Parameters maintain_begin and maintain_end must be set in pairs. If parameter maintain_end is left
	// blank, parameter maintain_begin is also blank. In this case, the system automatically allocates
	// the default end time 06:00.
	// +kubebuilder:validation:Optional
	MaintainEnd *string `json:"maintainEnd,omitempty" tf:"maintain_end,omitempty"`

	// Indicates the name of an instance. An instance name starts with a letter,
	// consists of 4 to 64 characters, and supports only letters, digits, and hyphens (-).
	// +kubebuilder:validation:Required
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the ID of the VPC subnet. Changing this creates a new instance.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/vpc/v1beta1.VPCSubnet
	// +crossplane:generate:reference:extractor=github.com/FlexibleEngineCloud/provider-flexibleengine/pkg/tools.ExtractorParamPathfunc(true, "id")
	// +crossplane:generate:reference:refFieldName=NetworkIDRef
	// +crossplane:generate:reference:selectorFieldName=NetworkIDSelector
	// +kubebuilder:validation:Optional
	NetworkID *string `json:"networkId,omitempty" tf:"network_id,omitempty"`

	// Reference to a VPCSubnet in vpc to populate networkId.
	// +kubebuilder:validation:Optional
	NetworkIDRef *v1.Reference `json:"networkIdRef,omitempty" tf:"-"`

	// Selector for a VPCSubnet in vpc to populate networkId.
	// +kubebuilder:validation:Optional
	NetworkIDSelector *v1.Selector `json:"networkIdSelector,omitempty" tf:"-"`

	// Password of a DCS instance.
	// The password of a DCS Redis instance must meet the following complexity requirements:
	// Changing this creates a new instance.
	// +kubebuilder:validation:Required
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// Interval at which backup is performed. Currently, only weekly
	// backup is supported. Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	PeriodType *string `json:"periodType,omitempty" tf:"period_type,omitempty"`

	// Port customization, which is supported only by Redis 4.0 and Redis 5.0 instances and not by
	// Redis 3.0 and Memcached instances. The values ranges from 1 to 65535. The default value is 6379.
	// Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// Product ID used to differentiate DCS instance types.
	// +kubebuilder:validation:Optional
	ProductID *string `json:"productId,omitempty" tf:"product_id,omitempty"`

	// Retention time. Unit: day. Range: 1–7.
	// Changing this creates a new instance.
	// +kubebuilder:validation:Optional
	SaveDays *float64 `json:"saveDays,omitempty" tf:"save_days,omitempty"`

	// Specifies the id of the security group which the instance belongs to.
	// This parameter is only supported and mandatory for Memcached and Redis 3.0 versions.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/vpc/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRef
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	SecurityGroupID *string `json:"securityGroupId,omitempty" tf:"security_group_id,omitempty"`

	// Reference to a SecurityGroup in vpc to populate securityGroupId.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRef *v1.Reference `json:"securityGroupIdRef,omitempty" tf:"-"`

	// Selector for a SecurityGroup in vpc to populate securityGroupId.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// Specifies the id of the VPC. Changing this creates a new instance.
	// +crossplane:generate:reference:type=github.com/FlexibleEngineCloud/provider-flexibleengine/apis/vpc/v1beta1.VPC
	// +kubebuilder:validation:Optional
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// Reference to a VPC in vpc to populate vpcId.
	// +kubebuilder:validation:Optional
	VPCIDRef *v1.Reference `json:"vpcIdRef,omitempty" tf:"-"`

	// Selector for a VPC in vpc to populate vpcId.
	// +kubebuilder:validation:Optional
	VPCIDSelector *v1.Selector `json:"vpcIdSelector,omitempty" tf:"-"`
}

func (*InstanceParameters) DeepCopy

func (in *InstanceParameters) DeepCopy() *InstanceParameters

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

func (*InstanceParameters) DeepCopyInto

func (in *InstanceParameters) DeepCopyInto(out *InstanceParameters)

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

type InstanceSpec

type InstanceSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     InstanceParameters `json:"forProvider"`
}

InstanceSpec defines the desired state of Instance

func (*InstanceSpec) DeepCopy

func (in *InstanceSpec) DeepCopy() *InstanceSpec

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

func (*InstanceSpec) DeepCopyInto

func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec)

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

type InstanceStatus

type InstanceStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        InstanceObservation `json:"atProvider,omitempty"`
}

InstanceStatus defines the observed state of Instance.

func (*InstanceStatus) DeepCopy

func (in *InstanceStatus) DeepCopy() *InstanceStatus

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

func (*InstanceStatus) DeepCopyInto

func (in *InstanceStatus) DeepCopyInto(out *InstanceStatus)

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