Documentation
¶
Overview ¶
+kubebuilder:object:generate=true +groupName=dcs.flexibleengine.upbound.io +versionName=v1beta1
Index ¶
- Constants
- Variables
- type Instance
- func (in *Instance) DeepCopy() *Instance
- func (in *Instance) DeepCopyInto(out *Instance)
- func (in *Instance) DeepCopyObject() runtime.Object
- func (mg *Instance) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *Instance) GetConnectionDetailsMapping() map[string]string
- func (mg *Instance) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *Instance) GetID() string
- func (tr *Instance) GetObservation() (map[string]any, error)
- func (tr *Instance) GetParameters() (map[string]any, error)
- func (mg *Instance) GetProviderConfigReference() *xpv1.Reference
- func (mg *Instance) GetProviderReference() *xpv1.Reference
- func (mg *Instance) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Instance) GetTerraformResourceType() string
- func (tr *Instance) GetTerraformSchemaVersion() int
- func (mg *Instance) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *Instance) LateInitialize(attrs []byte) (bool, error)
- func (mg *Instance) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Instance) SetConditions(c ...xpv1.Condition)
- func (mg *Instance) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (tr *Instance) SetObservation(obs map[string]any) error
- func (tr *Instance) SetParameters(params map[string]any) error
- func (mg *Instance) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Instance) SetProviderReference(r *xpv1.Reference)
- func (mg *Instance) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Instance) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type InstanceList
- type InstanceObservation
- type InstanceParameters
- type InstanceSpec
- type InstanceStatus
Constants ¶
const ( CRDGroup = "dcs.flexibleengine.upbound.io" CRDVersion = "v1beta1" )
Package type metadata.
Variables ¶
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 )
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Instance.
func (*Instance) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Instance) DeepCopyObject ¶
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 ¶
GetConnectionDetailsMapping for this Instance
func (*Instance) GetDeletionPolicy ¶
func (mg *Instance) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Instance.
func (*Instance) GetObservation ¶
GetObservation of this Instance
func (*Instance) GetParameters ¶
GetParameters of this Instance
func (*Instance) GetProviderConfigReference ¶
GetProviderConfigReference of this Instance.
func (*Instance) GetProviderReference ¶
GetProviderReference of this Instance. Deprecated: Use GetProviderConfigReference.
func (*Instance) GetPublishConnectionDetailsTo ¶
func (mg *Instance) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Instance.
func (*Instance) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this Instance
func (*Instance) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*Instance) GetWriteConnectionSecretToReference ¶
func (mg *Instance) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Instance.
func (*Instance) LateInitialize ¶
LateInitialize this Instance using its observed tfState. returns True if there are any spec changes for the resource.
func (*Instance) ResolveReferences ¶
ResolveReferences of this Instance.
func (*Instance) SetConditions ¶
SetConditions of this Instance.
func (*Instance) SetDeletionPolicy ¶
func (mg *Instance) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Instance.
func (*Instance) SetObservation ¶
SetObservation for this Instance
func (*Instance) SetParameters ¶
SetParameters for this Instance
func (*Instance) SetProviderConfigReference ¶
SetProviderConfigReference of this Instance.
func (*Instance) SetProviderReference ¶
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.