v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 11, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

+k8s:deepcopy-gen=package Package v1alpha1 is the v1alpha1 version of the elasticache.services.k8s.aws API. +groupName=elasticache.services.k8s.aws

Index

Constants

View Source
const (
	// AnnotationPrefix is the prefix for all annotations specifically for
	// the elasticache service.
	AnnotationPrefix = "elasticache.services.k8s.aws/"
)

Variables

View Source
var (
	// GroupVersion is the API Group Version used to register the objects
	GroupVersion = schema.GroupVersion{Group: "elasticache.services.k8s.aws", 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
)

Functions

This section is empty.

Types

type AZMode

type AZMode string
const (
	AZMode_single_az AZMode = "single-az"
	AZMode_cross_az  AZMode = "cross-az"
)

type AuthTokenUpdateStatus

type AuthTokenUpdateStatus string
const (
	AuthTokenUpdateStatus_SETTING  AuthTokenUpdateStatus = "SETTING"
	AuthTokenUpdateStatus_ROTATING AuthTokenUpdateStatus = "ROTATING"
)

type AuthTokenUpdateStrategyType

type AuthTokenUpdateStrategyType string
const (
	AuthTokenUpdateStrategyType_SET    AuthTokenUpdateStrategyType = "SET"
	AuthTokenUpdateStrategyType_ROTATE AuthTokenUpdateStrategyType = "ROTATE"
	AuthTokenUpdateStrategyType_DELETE AuthTokenUpdateStrategyType = "DELETE"
)

type Authentication

type Authentication struct {
	PasswordCount *int64  `json:"passwordCount,omitempty"`
	Type          *string `json:"type_,omitempty"`
}

Indicates whether the user requires a password to authenticate.

func (*Authentication) DeepCopy

func (in *Authentication) DeepCopy() *Authentication

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

func (*Authentication) DeepCopyInto

func (in *Authentication) DeepCopyInto(out *Authentication)

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

type AuthenticationType

type AuthenticationType string
const (
	AuthenticationType_password    AuthenticationType = "password"
	AuthenticationType_no_password AuthenticationType = "no-password"
	AuthenticationType_iam         AuthenticationType = "iam"
)

type AutomaticFailoverStatus

type AutomaticFailoverStatus string
const (
	AutomaticFailoverStatus_enabled   AutomaticFailoverStatus = "enabled"
	AutomaticFailoverStatus_disabled  AutomaticFailoverStatus = "disabled"
	AutomaticFailoverStatus_enabling  AutomaticFailoverStatus = "enabling"
	AutomaticFailoverStatus_disabling AutomaticFailoverStatus = "disabling"
)

type AvailabilityZone

type AvailabilityZone struct {
	Name *string `json:"name,omitempty"`
}

Describes an Availability Zone in which the cluster is launched.

func (*AvailabilityZone) DeepCopy

func (in *AvailabilityZone) DeepCopy() *AvailabilityZone

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

func (*AvailabilityZone) DeepCopyInto

func (in *AvailabilityZone) DeepCopyInto(out *AvailabilityZone)

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

type CacheCluster

type CacheCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              CacheClusterSpec   `json:"spec,omitempty"`
	Status            CacheClusterStatus `json:"status,omitempty"`
}

CacheCluster is the Schema for the CacheClusters API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="VERSION",type=string,priority=0,JSONPath=`.spec.engineVersion` +kubebuilder:printcolumn:name="STATUS",type=string,priority=0,JSONPath=`.status.cacheClusterStatus` +kubebuilder:printcolumn:name="ENDPOINT",type=string,priority=1,JSONPath=`.status.configurationEndpoint.address` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

func (*CacheCluster) DeepCopy

func (in *CacheCluster) DeepCopy() *CacheCluster

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

func (*CacheCluster) DeepCopyInto

func (in *CacheCluster) DeepCopyInto(out *CacheCluster)

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

func (*CacheCluster) DeepCopyObject added in v0.1.0

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

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

type CacheClusterList added in v0.1.0

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

CacheClusterList contains a list of CacheCluster +kubebuilder:object:root=true

func (*CacheClusterList) DeepCopy added in v0.1.0

func (in *CacheClusterList) DeepCopy() *CacheClusterList

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

func (*CacheClusterList) DeepCopyInto added in v0.1.0

func (in *CacheClusterList) DeepCopyInto(out *CacheClusterList)

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

func (*CacheClusterList) DeepCopyObject added in v0.1.0

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

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

type CacheClusterSpec added in v0.1.0

type CacheClusterSpec struct {

	// Specifies whether the nodes in this Memcached cluster are created in a single
	// Availability Zone or created across multiple Availability Zones in the cluster's
	// region.
	//
	// This parameter is only supported for Memcached clusters.
	//
	// If the AZMode and PreferredAvailabilityZones are not specified, ElastiCache
	// assumes single-az mode.
	AZMode *string `json:"azMode,omitempty"`
	// Reserved parameter. The password used to access a password protected server.
	//
	// Password constraints:
	//
	//   - Must be only printable ASCII characters.
	//
	//   - Must be at least 16 characters and no more than 128 characters in length.
	//
	//   - The only permitted printable special characters are !, &, #, $, ^, <,
	//     >, and -. Other printable special characters cannot be used in the AUTH
	//     token.
	//
	// For more information, see AUTH password (http://redis.io/commands/AUTH) at
	// http://redis.io/commands/AUTH.
	AuthToken *ackv1alpha1.SecretKeyReference `json:"authToken,omitempty"`
	// If you are running Redis engine version 6.0 or later, set this parameter
	// to yes if you want to opt-in to the next auto minor version upgrade campaign.
	// This parameter is disabled for previous versions.
	AutoMinorVersionUpgrade *bool `json:"autoMinorVersionUpgrade,omitempty"`
	// The node group (shard) identifier. This parameter is stored as a lowercase
	// string.
	//
	// Constraints:
	//
	//   - A name must contain from 1 to 50 alphanumeric characters or hyphens.
	//
	//   - The first character must be a letter.
	//
	//   - A name cannot end with a hyphen or contain two consecutive hyphens.
	//
	// +kubebuilder:validation:Required
	CacheClusterID *string `json:"cacheClusterID"`
	// The compute and memory capacity of the nodes in the node group (shard).
	//
	// The following node types are supported by ElastiCache. Generally speaking,
	// the current generation types provide more memory and computational power
	// at lower cost when compared to their equivalent previous generation counterparts.
	//
	//   - General purpose: Current generation: M7g node types: cache.m7g.large,
	//     cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge,
	//     cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported
	//     Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//     M6g node types (available only for Redis engine version 5.0.6 onward and
	//     for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge,
	//     cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge,
	//     cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge,
	//     cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types:
	//     cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge
	//     T4g node types (available only for Redis engine version 5.0.6 onward and
	//     Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small,
	//     cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium
	//     T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous
	//     generation: (not recommended. Existing clusters are still supported but
	//     creation of new clusters is not supported for these types.) T1 node types:
	//     cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large,
	//     cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge,
	//     cache.m3.2xlarge
	//
	//   - Compute optimized: Previous generation: (not recommended. Existing clusters
	//     are still supported but creation of new clusters is not supported for
	//     these types.) C1 node types: cache.c1.xlarge
	//
	//   - Memory optimized: Current generation: R7g node types: cache.r7g.large,
	//     cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge,
	//     cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported
	//     Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//     R6g node types (available only for Redis engine version 5.0.6 onward and
	//     for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge,
	//     cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge,
	//     cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge,
	//     cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types:
	//     cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge,
	//     cache.r4.16xlarge Previous generation: (not recommended. Existing clusters
	//     are still supported but creation of new clusters is not supported for
	//     these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge
	//     R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge,
	//     cache.r3.8xlarge
	//
	// Additional node type info
	//
	//   - All current generation instance types are created in Amazon VPC by default.
	//
	//   - Redis append-only files (AOF) are not supported for T1 or T2 instances.
	//
	//   - Redis Multi-AZ with automatic failover is not supported on T1 instances.
	//
	//   - Redis configuration variables appendonly and appendfsync are not supported
	//     on Redis version 2.8.22 and later.
	CacheNodeType *string `json:"cacheNodeType,omitempty"`
	// The name of the parameter group to associate with this cluster. If this argument
	// is omitted, the default parameter group for the specified engine is used.
	// You cannot use any parameter group which has cluster-enabled='yes' when creating
	// a cluster.
	CacheParameterGroupName *string                                  `json:"cacheParameterGroupName,omitempty"`
	CacheParameterGroupRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"cacheParameterGroupRef,omitempty"`
	// A list of security group names to associate with this cluster.
	//
	// Use this parameter only when you are creating a cluster outside of an Amazon
	// Virtual Private Cloud (Amazon VPC).
	CacheSecurityGroupNames []*string `json:"cacheSecurityGroupNames,omitempty"`
	// The name of the subnet group to be used for the cluster.
	//
	// Use this parameter only when you are creating a cluster in an Amazon Virtual
	// Private Cloud (Amazon VPC).
	//
	// If you're going to launch your cluster in an Amazon VPC, you need to create
	// a subnet group before you start creating a cluster. For more information,
	// see Subnets and Subnet Groups (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SubnetGroups.html).
	CacheSubnetGroupName *string                                  `json:"cacheSubnetGroupName,omitempty"`
	CacheSubnetGroupRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"cacheSubnetGroupRef,omitempty"`
	// The name of the cache engine to be used for this cluster.
	//
	// Valid values for this parameter are: memcached | redis
	Engine *string `json:"engine,omitempty"`
	// The version number of the cache engine to be used for this cluster. To view
	// the supported cache engine versions, use the DescribeCacheEngineVersions
	// operation.
	//
	// Important: You can upgrade to a newer engine version (see Selecting a Cache
	// Engine and Version (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SelectEngine.html#VersionManagement)),
	// but you cannot downgrade to an earlier engine version. If you want to use
	// an earlier engine version, you must delete the existing cluster or replication
	// group and create it anew with the earlier engine version.
	EngineVersion *string `json:"engineVersion,omitempty"`
	// The network type you choose when modifying a cluster, either ipv4 | ipv6.
	// IPv6 is supported for workloads using Redis engine version 6.2 onward or
	// Memcached engine version 1.6.6 on all instances built on the Nitro system
	// (http://aws.amazon.com/ec2/nitro/).
	IPDiscovery *string `json:"ipDiscovery,omitempty"`
	// Specifies the destination, format and type of the logs.
	LogDeliveryConfigurations []*LogDeliveryConfigurationRequest `json:"logDeliveryConfigurations,omitempty"`
	// Must be either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads
	// using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on
	// all instances built on the Nitro system (http://aws.amazon.com/ec2/nitro/).
	NetworkType *string `json:"networkType,omitempty"`
	// The Amazon Resource Name (ARN) of the Amazon Simple Notification Service
	// (SNS) topic to which notifications are sent.
	//
	// The Amazon SNS topic owner must be the same as the cluster owner.
	NotificationTopicARN *string                                  `json:"notificationTopicARN,omitempty"`
	NotificationTopicRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"notificationTopicRef,omitempty"`
	// The initial number of cache nodes that the cluster has.
	//
	// For clusters running Redis, this value must be 1. For clusters running Memcached,
	// this value must be between 1 and 40.
	//
	// If you need more than 40 nodes for your Memcached cluster, please fill out
	// the ElastiCache Limit Increase Request form at http://aws.amazon.com/contact-us/elasticache-node-limit-request/
	// (http://aws.amazon.com/contact-us/elasticache-node-limit-request/).
	NumCacheNodes *int64 `json:"numCacheNodes,omitempty"`
	// Specifies whether the nodes in the cluster are created in a single outpost
	// or across multiple outposts.
	OutpostMode *string `json:"outpostMode,omitempty"`
	// The port number on which each of the cache nodes accepts connections.
	Port *int64 `json:"port,omitempty"`
	// The EC2 Availability Zone in which the cluster is created.
	//
	// All nodes belonging to this cluster are placed in the preferred Availability
	// Zone. If you want to create your nodes across multiple Availability Zones,
	// use PreferredAvailabilityZones.
	//
	// Default: System chosen Availability Zone.
	PreferredAvailabilityZone *string `json:"preferredAvailabilityZone,omitempty"`
	// A list of the Availability Zones in which cache nodes are created. The order
	// of the zones in the list is not important.
	//
	// This option is only supported on Memcached.
	//
	// If you are creating your cluster in an Amazon VPC (recommended) you can only
	// locate nodes in Availability Zones that are associated with the subnets in
	// the selected subnet group.
	//
	// The number of Availability Zones listed must equal the value of NumCacheNodes.
	//
	// If you want all the nodes in the same Availability Zone, use PreferredAvailabilityZone
	// instead, or repeat the Availability Zone multiple times in the list.
	//
	// Default: System chosen Availability Zones.
	PreferredAvailabilityZones []*string `json:"preferredAvailabilityZones,omitempty"`
	// Specifies the weekly time range during which maintenance on the cluster is
	// performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi
	// (24H Clock UTC). The minimum maintenance window is a 60 minute period.
	PreferredMaintenanceWindow *string `json:"preferredMaintenanceWindow,omitempty"`
	// The outpost ARN in which the cache cluster is created.
	PreferredOutpostARN *string `json:"preferredOutpostARN,omitempty"`
	// The outpost ARNs in which the cache cluster is created.
	PreferredOutpostARNs []*string `json:"preferredOutpostARNs,omitempty"`
	// The ID of the replication group to which this cluster should belong. If this
	// parameter is specified, the cluster is added to the specified replication
	// group as a read replica; otherwise, the cluster is a standalone primary that
	// is not part of any replication group.
	//
	// If the specified replication group is Multi-AZ enabled and the Availability
	// Zone is not specified, the cluster is created in Availability Zones that
	// provide the best spread of read replicas across Availability Zones.
	//
	// This parameter is only valid if the Engine parameter is redis.
	ReplicationGroupID  *string                                  `json:"replicationGroupID,omitempty"`
	ReplicationGroupRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"replicationGroupRef,omitempty"`
	// One or more VPC security groups associated with the cluster.
	//
	// Use this parameter only when you are creating a cluster in an Amazon Virtual
	// Private Cloud (Amazon VPC).
	SecurityGroupIDs []*string `json:"securityGroupIDs,omitempty"`
	// A single-element string list containing an Amazon Resource Name (ARN) that
	// uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The snapshot
	// file is used to populate the node group (shard). The Amazon S3 object name
	// in the ARN cannot contain any commas.
	//
	// This parameter is only valid if the Engine parameter is redis.
	//
	// Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb
	SnapshotARNs []*string `json:"snapshotARNs,omitempty"`
	// The name of a Redis snapshot from which to restore data into the new node
	// group (shard). The snapshot status changes to restoring while the new node
	// group (shard) is being created.
	//
	// This parameter is only valid if the Engine parameter is redis.
	SnapshotName *string                                  `json:"snapshotName,omitempty"`
	SnapshotRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"snapshotRef,omitempty"`
	// The number of days for which ElastiCache retains automatic snapshots before
	// deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot
	// taken today is retained for 5 days before being deleted.
	//
	// This parameter is only valid if the Engine parameter is redis.
	//
	// Default: 0 (i.e., automatic backups are disabled for this cache cluster).
	SnapshotRetentionLimit *int64 `json:"snapshotRetentionLimit,omitempty"`
	// The daily time range (in UTC) during which ElastiCache begins taking a daily
	// snapshot of your node group (shard).
	//
	// Example: 05:00-09:00
	//
	// If you do not specify this parameter, ElastiCache automatically chooses an
	// appropriate time range.
	//
	// This parameter is only valid if the Engine parameter is redis.
	SnapshotWindow *string `json:"snapshotWindow,omitempty"`
	// A list of tags to be added to this resource.
	Tags []*Tag `json:"tags,omitempty"`
	// A flag that enables in-transit encryption when set to true.
	TransitEncryptionEnabled *bool `json:"transitEncryptionEnabled,omitempty"`
}

CacheClusterSpec defines the desired state of CacheCluster.

Contains all of the attributes of a specific cluster.

func (*CacheClusterSpec) DeepCopy added in v0.1.0

func (in *CacheClusterSpec) DeepCopy() *CacheClusterSpec

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

func (*CacheClusterSpec) DeepCopyInto added in v0.1.0

func (in *CacheClusterSpec) DeepCopyInto(out *CacheClusterSpec)

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

type CacheClusterStatus added in v0.1.0

type CacheClusterStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// A flag that enables encryption at-rest when set to true.
	//
	// You cannot modify the value of AtRestEncryptionEnabled after the cluster
	// is created. To enable at-rest encryption on a cluster you must set AtRestEncryptionEnabled
	// to true when you create a cluster.
	//
	// Required: Only available when creating a replication group in an Amazon VPC
	// using redis version 3.2.6, 4.x or later.
	//
	// Default: false
	// +kubebuilder:validation:Optional
	AtRestEncryptionEnabled *bool `json:"atRestEncryptionEnabled,omitempty"`
	// A flag that enables using an AuthToken (password) when issuing Redis commands.
	//
	// Default: false
	// +kubebuilder:validation:Optional
	AuthTokenEnabled *bool `json:"authTokenEnabled,omitempty"`
	// The date the auth token was last modified
	// +kubebuilder:validation:Optional
	AuthTokenLastModifiedDate *metav1.Time `json:"authTokenLastModifiedDate,omitempty"`
	// The date and time when the cluster was created.
	// +kubebuilder:validation:Optional
	CacheClusterCreateTime *metav1.Time `json:"cacheClusterCreateTime,omitempty"`
	// The current state of this cluster, one of the following values: available,
	// creating, deleted, deleting, incompatible-network, modifying, rebooting cluster
	// nodes, restore-failed, or snapshotting.
	// +kubebuilder:validation:Optional
	CacheClusterStatus *string `json:"cacheClusterStatus,omitempty"`
	// A list of cache nodes that are members of the cluster.
	// +kubebuilder:validation:Optional
	CacheNodes []*CacheNode `json:"cacheNodes,omitempty"`
	// Status of the cache parameter group.
	// +kubebuilder:validation:Optional
	CacheParameterGroup *CacheParameterGroupStatus_SDK `json:"cacheParameterGroup,omitempty"`
	// A list of cache security group elements, composed of name and status sub-elements.
	// +kubebuilder:validation:Optional
	CacheSecurityGroups []*CacheSecurityGroupMembership `json:"cacheSecurityGroups,omitempty"`
	// The URL of the web page where you can download the latest ElastiCache client
	// library.
	// +kubebuilder:validation:Optional
	ClientDownloadLandingPage *string `json:"clientDownloadLandingPage,omitempty"`
	// Represents a Memcached cluster endpoint which can be used by an application
	// to connect to any node in the cluster. The configuration endpoint will always
	// have .cfg in it.
	//
	// Example: mem-3.9dvc4r.cfg.usw2.cache.amazonaws.com:11211
	// +kubebuilder:validation:Optional
	ConfigurationEndpoint *Endpoint `json:"configurationEndpoint,omitempty"`
	// Describes a notification topic and its status. Notification topics are used
	// for publishing ElastiCache events to subscribers using Amazon Simple Notification
	// Service (SNS).
	// +kubebuilder:validation:Optional
	NotificationConfiguration *NotificationConfiguration `json:"notificationConfiguration,omitempty"`
	// +kubebuilder:validation:Optional
	PendingModifiedValues *PendingModifiedValues `json:"pendingModifiedValues,omitempty"`
	// A boolean value indicating whether log delivery is enabled for the replication
	// group.
	// +kubebuilder:validation:Optional
	ReplicationGroupLogDeliveryEnabled *bool `json:"replicationGroupLogDeliveryEnabled,omitempty"`
	// A list of VPC Security Groups associated with the cluster.
	// +kubebuilder:validation:Optional
	SecurityGroups []*SecurityGroupMembership `json:"securityGroups,omitempty"`
	// A setting that allows you to migrate your clients to use in-transit encryption,
	// with no downtime.
	// +kubebuilder:validation:Optional
	TransitEncryptionMode *string `json:"transitEncryptionMode,omitempty"`
}

CacheClusterStatus defines the observed state of CacheCluster

func (*CacheClusterStatus) DeepCopy added in v0.1.0

func (in *CacheClusterStatus) DeepCopy() *CacheClusterStatus

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

func (*CacheClusterStatus) DeepCopyInto added in v0.1.0

func (in *CacheClusterStatus) DeepCopyInto(out *CacheClusterStatus)

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

type CacheCluster_SDK added in v0.1.0

type CacheCluster_SDK struct {
	ARN                       *string      `json:"arn,omitempty"`
	AtRestEncryptionEnabled   *bool        `json:"atRestEncryptionEnabled,omitempty"`
	AuthTokenEnabled          *bool        `json:"authTokenEnabled,omitempty"`
	AuthTokenLastModifiedDate *metav1.Time `json:"authTokenLastModifiedDate,omitempty"`
	AutoMinorVersionUpgrade   *bool        `json:"autoMinorVersionUpgrade,omitempty"`
	CacheClusterCreateTime    *metav1.Time `json:"cacheClusterCreateTime,omitempty"`
	CacheClusterID            *string      `json:"cacheClusterID,omitempty"`
	CacheClusterStatus        *string      `json:"cacheClusterStatus,omitempty"`
	CacheNodeType             *string      `json:"cacheNodeType,omitempty"`
	CacheNodes                []*CacheNode `json:"cacheNodes,omitempty"`
	// Status of the cache parameter group.
	CacheParameterGroup       *CacheParameterGroupStatus_SDK  `json:"cacheParameterGroup,omitempty"`
	CacheSecurityGroups       []*CacheSecurityGroupMembership `json:"cacheSecurityGroups,omitempty"`
	CacheSubnetGroupName      *string                         `json:"cacheSubnetGroupName,omitempty"`
	ClientDownloadLandingPage *string                         `json:"clientDownloadLandingPage,omitempty"`
	// Represents the information required for client programs to connect to a cache
	// node.
	ConfigurationEndpoint *Endpoint `json:"configurationEndpoint,omitempty"`
	Engine                *string   `json:"engine,omitempty"`
	EngineVersion         *string   `json:"engineVersion,omitempty"`
	IPDiscovery           *string   `json:"ipDiscovery,omitempty"`
	NetworkType           *string   `json:"networkType,omitempty"`
	// Describes a notification topic and its status. Notification topics are used
	// for publishing ElastiCache events to subscribers using Amazon Simple Notification
	// Service (SNS).
	NotificationConfiguration *NotificationConfiguration `json:"notificationConfiguration,omitempty"`
	NumCacheNodes             *int64                     `json:"numCacheNodes,omitempty"`
	// A group of settings that are applied to the cluster in the future, or that
	// are currently being applied.
	PendingModifiedValues              *PendingModifiedValues     `json:"pendingModifiedValues,omitempty"`
	PreferredAvailabilityZone          *string                    `json:"preferredAvailabilityZone,omitempty"`
	PreferredMaintenanceWindow         *string                    `json:"preferredMaintenanceWindow,omitempty"`
	PreferredOutpostARN                *string                    `json:"preferredOutpostARN,omitempty"`
	ReplicationGroupID                 *string                    `json:"replicationGroupID,omitempty"`
	ReplicationGroupLogDeliveryEnabled *bool                      `json:"replicationGroupLogDeliveryEnabled,omitempty"`
	SecurityGroups                     []*SecurityGroupMembership `json:"securityGroups,omitempty"`
	SnapshotRetentionLimit             *int64                     `json:"snapshotRetentionLimit,omitempty"`
	SnapshotWindow                     *string                    `json:"snapshotWindow,omitempty"`
	TransitEncryptionEnabled           *bool                      `json:"transitEncryptionEnabled,omitempty"`
	TransitEncryptionMode              *string                    `json:"transitEncryptionMode,omitempty"`
}

Contains all of the attributes of a specific cluster.

func (*CacheCluster_SDK) DeepCopy added in v0.1.0

func (in *CacheCluster_SDK) DeepCopy() *CacheCluster_SDK

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

func (*CacheCluster_SDK) DeepCopyInto added in v0.1.0

func (in *CacheCluster_SDK) DeepCopyInto(out *CacheCluster_SDK)

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

type CacheEngineVersion

type CacheEngineVersion struct {
	CacheEngineDescription        *string `json:"cacheEngineDescription,omitempty"`
	CacheEngineVersionDescription *string `json:"cacheEngineVersionDescription,omitempty"`
	CacheParameterGroupFamily     *string `json:"cacheParameterGroupFamily,omitempty"`
	Engine                        *string `json:"engine,omitempty"`
	EngineVersion                 *string `json:"engineVersion,omitempty"`
}

Provides all of the details about a particular cache engine version.

func (*CacheEngineVersion) DeepCopy

func (in *CacheEngineVersion) DeepCopy() *CacheEngineVersion

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

func (*CacheEngineVersion) DeepCopyInto

func (in *CacheEngineVersion) DeepCopyInto(out *CacheEngineVersion)

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

type CacheNode

type CacheNode struct {
	CacheNodeCreateTime      *metav1.Time `json:"cacheNodeCreateTime,omitempty"`
	CacheNodeID              *string      `json:"cacheNodeID,omitempty"`
	CacheNodeStatus          *string      `json:"cacheNodeStatus,omitempty"`
	CustomerAvailabilityZone *string      `json:"customerAvailabilityZone,omitempty"`
	CustomerOutpostARN       *string      `json:"customerOutpostARN,omitempty"`
	// Represents the information required for client programs to connect to a cache
	// node.
	Endpoint             *Endpoint `json:"endpoint,omitempty"`
	ParameterGroupStatus *string   `json:"parameterGroupStatus,omitempty"`
	SourceCacheNodeID    *string   `json:"sourceCacheNodeID,omitempty"`
}

Represents an individual cache node within a cluster. Each cache node runs its own instance of the cluster's protocol-compliant caching software - either Memcached or Redis.

The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.

  • General purpose: Current generation: M7g node types: cache.m7g.large, cache.m7g.xlarge, cache.m7g.2xlarge, cache.m7g.4xlarge, cache.m7g.8xlarge, cache.m7g.12xlarge, cache.m7g.16xlarge For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) T1 node types: cache.t1.micro M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge

  • Compute optimized: Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) C1 node types: cache.c1.xlarge

  • Memory optimized: Current generation: R7g node types: cache.r7g.large, cache.r7g.xlarge, cache.r7g.2xlarge, cache.r7g.4xlarge, cache.r7g.8xlarge, cache.r7g.12xlarge, cache.r7g.16xlarge For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion) R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward): cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge, cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.) M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge

Additional node type info

  • All current generation instance types are created in Amazon VPC by default.

  • Redis append-only files (AOF) are not supported for T1 or T2 instances.

  • Redis Multi-AZ with automatic failover is not supported on T1 instances.

  • Redis configuration variables appendonly and appendfsync are not supported on Redis version 2.8.22 and later.

func (*CacheNode) DeepCopy

func (in *CacheNode) DeepCopy() *CacheNode

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

func (*CacheNode) DeepCopyInto

func (in *CacheNode) DeepCopyInto(out *CacheNode)

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

type CacheNodeTypeSpecificParameter

type CacheNodeTypeSpecificParameter struct {
	AllowedValues        *string `json:"allowedValues,omitempty"`
	ChangeType           *string `json:"changeType,omitempty"`
	DataType             *string `json:"dataType,omitempty"`
	Description          *string `json:"description,omitempty"`
	IsModifiable         *bool   `json:"isModifiable,omitempty"`
	MinimumEngineVersion *string `json:"minimumEngineVersion,omitempty"`
	ParameterName        *string `json:"parameterName,omitempty"`
	Source               *string `json:"source,omitempty"`
}

A parameter that has a different value for each cache node type it is applied to. For example, in a Redis cluster, a cache.m1.large cache node type would have a larger maxmemory value than a cache.m1.small type.

func (*CacheNodeTypeSpecificParameter) DeepCopy

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

func (*CacheNodeTypeSpecificParameter) DeepCopyInto

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

type CacheNodeTypeSpecificValue

type CacheNodeTypeSpecificValue struct {
	CacheNodeType *string `json:"cacheNodeType,omitempty"`
	Value         *string `json:"value,omitempty"`
}

A value that applies only to a certain cache node type.

func (*CacheNodeTypeSpecificValue) DeepCopy

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

func (*CacheNodeTypeSpecificValue) DeepCopyInto

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

type CacheNodeUpdateStatus

type CacheNodeUpdateStatus struct {
	CacheNodeID                  *string      `json:"cacheNodeID,omitempty"`
	NodeDeletionDate             *metav1.Time `json:"nodeDeletionDate,omitempty"`
	NodeUpdateEndDate            *metav1.Time `json:"nodeUpdateEndDate,omitempty"`
	NodeUpdateInitiatedDate      *metav1.Time `json:"nodeUpdateInitiatedDate,omitempty"`
	NodeUpdateStartDate          *metav1.Time `json:"nodeUpdateStartDate,omitempty"`
	NodeUpdateStatusModifiedDate *metav1.Time `json:"nodeUpdateStatusModifiedDate,omitempty"`
}

The status of the service update on the cache node

func (*CacheNodeUpdateStatus) DeepCopy

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

func (*CacheNodeUpdateStatus) DeepCopyInto

func (in *CacheNodeUpdateStatus) DeepCopyInto(out *CacheNodeUpdateStatus)

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

type CacheParameterGroup

type CacheParameterGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              CacheParameterGroupSpec   `json:"spec,omitempty"`
	Status            CacheParameterGroupStatus `json:"status,omitempty"`
}

CacheParameterGroup is the Schema for the CacheParameterGroups API +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*CacheParameterGroup) DeepCopy

func (in *CacheParameterGroup) DeepCopy() *CacheParameterGroup

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

func (*CacheParameterGroup) DeepCopyInto

func (in *CacheParameterGroup) DeepCopyInto(out *CacheParameterGroup)

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

func (*CacheParameterGroup) DeepCopyObject

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

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

type CacheParameterGroupList

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

CacheParameterGroupList contains a list of CacheParameterGroup +kubebuilder:object:root=true

func (*CacheParameterGroupList) DeepCopy

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

func (*CacheParameterGroupList) DeepCopyInto

func (in *CacheParameterGroupList) DeepCopyInto(out *CacheParameterGroupList)

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

func (*CacheParameterGroupList) DeepCopyObject

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

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

type CacheParameterGroupSpec

type CacheParameterGroupSpec struct {

	// The name of the cache parameter group family that the cache parameter group
	// can be used with.
	//
	// Valid values are: memcached1.4 | memcached1.5 | memcached1.6 | redis2.6 |
	// redis2.8 | redis3.2 | redis4.0 | redis5.0 | redis6.x
	// +kubebuilder:validation:Required
	CacheParameterGroupFamily *string `json:"cacheParameterGroupFamily"`
	// A user-specified name for the cache parameter group.
	// +kubebuilder:validation:Required
	CacheParameterGroupName *string `json:"cacheParameterGroupName"`
	// A user-specified description for the cache parameter group.
	// +kubebuilder:validation:Required
	Description *string `json:"description"`
	// An array of parameter names and values for the parameter update. You must
	// supply at least one parameter name and value; subsequent arguments are optional.
	// A maximum of 20 parameters may be modified per request.
	ParameterNameValues []*ParameterNameValue `json:"parameterNameValues,omitempty"`
	// A list of tags to be added to this resource. A tag is a key-value pair. A
	// tag key must be accompanied by a tag value, although null is accepted.
	Tags []*Tag `json:"tags,omitempty"`
}

CacheParameterGroupSpec defines the desired state of CacheParameterGroup.

Represents the output of a CreateCacheParameterGroup operation.

func (*CacheParameterGroupSpec) DeepCopy

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

func (*CacheParameterGroupSpec) DeepCopyInto

func (in *CacheParameterGroupSpec) DeepCopyInto(out *CacheParameterGroupSpec)

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

type CacheParameterGroupStatus

type CacheParameterGroupStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// A list of events. Each element in the list contains detailed information
	// about one event.
	// +kubebuilder:validation:Optional
	Events []*Event `json:"events,omitempty"`
	// Indicates whether the parameter group is associated with a Global datastore
	// +kubebuilder:validation:Optional
	IsGlobal *bool `json:"isGlobal,omitempty"`
	// A list of Parameter instances.
	// +kubebuilder:validation:Optional
	Parameters []*Parameter `json:"parameters,omitempty"`
}

CacheParameterGroupStatus defines the observed state of CacheParameterGroup

func (*CacheParameterGroupStatus) DeepCopy

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

func (*CacheParameterGroupStatus) DeepCopyInto

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

type CacheParameterGroupStatus_SDK

type CacheParameterGroupStatus_SDK struct {
	CacheNodeIDsToReboot    []*string `json:"cacheNodeIDsToReboot,omitempty"`
	CacheParameterGroupName *string   `json:"cacheParameterGroupName,omitempty"`
	ParameterApplyStatus    *string   `json:"parameterApplyStatus,omitempty"`
}

Status of the cache parameter group.

func (*CacheParameterGroupStatus_SDK) DeepCopy

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

func (*CacheParameterGroupStatus_SDK) DeepCopyInto

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

type CacheParameterGroup_SDK

type CacheParameterGroup_SDK struct {
	ARN                       *string `json:"arn,omitempty"`
	CacheParameterGroupFamily *string `json:"cacheParameterGroupFamily,omitempty"`
	CacheParameterGroupName   *string `json:"cacheParameterGroupName,omitempty"`
	Description               *string `json:"description,omitempty"`
	IsGlobal                  *bool   `json:"isGlobal,omitempty"`
}

Represents the output of a CreateCacheParameterGroup operation.

func (*CacheParameterGroup_SDK) DeepCopy

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

func (*CacheParameterGroup_SDK) DeepCopyInto

func (in *CacheParameterGroup_SDK) DeepCopyInto(out *CacheParameterGroup_SDK)

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

type CacheSecurityGroup

type CacheSecurityGroup struct {
	ARN                    *string `json:"arn,omitempty"`
	CacheSecurityGroupName *string `json:"cacheSecurityGroupName,omitempty"`
	Description            *string `json:"description,omitempty"`
	OwnerID                *string `json:"ownerID,omitempty"`
}

Represents the output of one of the following operations:

  • AuthorizeCacheSecurityGroupIngress

  • CreateCacheSecurityGroup

  • RevokeCacheSecurityGroupIngress

func (*CacheSecurityGroup) DeepCopy

func (in *CacheSecurityGroup) DeepCopy() *CacheSecurityGroup

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

func (*CacheSecurityGroup) DeepCopyInto

func (in *CacheSecurityGroup) DeepCopyInto(out *CacheSecurityGroup)

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

type CacheSecurityGroupMembership

type CacheSecurityGroupMembership struct {
	CacheSecurityGroupName *string `json:"cacheSecurityGroupName,omitempty"`
	Status                 *string `json:"status,omitempty"`
}

Represents a cluster's status within a particular cache security group.

func (*CacheSecurityGroupMembership) DeepCopy

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

func (*CacheSecurityGroupMembership) DeepCopyInto

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

type CacheSubnetGroup

type CacheSubnetGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              CacheSubnetGroupSpec   `json:"spec,omitempty"`
	Status            CacheSubnetGroupStatus `json:"status,omitempty"`
}

CacheSubnetGroup is the Schema for the CacheSubnetGroups API +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*CacheSubnetGroup) DeepCopy

func (in *CacheSubnetGroup) DeepCopy() *CacheSubnetGroup

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

func (*CacheSubnetGroup) DeepCopyInto

func (in *CacheSubnetGroup) DeepCopyInto(out *CacheSubnetGroup)

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

func (*CacheSubnetGroup) DeepCopyObject

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

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

type CacheSubnetGroupList

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

CacheSubnetGroupList contains a list of CacheSubnetGroup +kubebuilder:object:root=true

func (*CacheSubnetGroupList) DeepCopy

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

func (*CacheSubnetGroupList) DeepCopyInto

func (in *CacheSubnetGroupList) DeepCopyInto(out *CacheSubnetGroupList)

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

func (*CacheSubnetGroupList) DeepCopyObject

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

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

type CacheSubnetGroupSpec

type CacheSubnetGroupSpec struct {

	// A description for the cache subnet group.
	// +kubebuilder:validation:Required
	CacheSubnetGroupDescription *string `json:"cacheSubnetGroupDescription"`
	// A name for the cache subnet group. This value is stored as a lowercase string.
	//
	// Constraints: Must contain no more than 255 alphanumeric characters or hyphens.
	//
	// Example: mysubnetgroup
	// +kubebuilder:validation:Required
	CacheSubnetGroupName *string `json:"cacheSubnetGroupName"`
	// A list of VPC subnet IDs for the cache subnet group.
	SubnetIDs  []*string                                  `json:"subnetIDs,omitempty"`
	SubnetRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"subnetRefs,omitempty"`
	// A list of tags to be added to this resource. A tag is a key-value pair. A
	// tag key must be accompanied by a tag value, although null is accepted.
	Tags []*Tag `json:"tags,omitempty"`
}

CacheSubnetGroupSpec defines the desired state of CacheSubnetGroup.

Represents the output of one of the following operations:

  • CreateCacheSubnetGroup

  • ModifyCacheSubnetGroup

func (*CacheSubnetGroupSpec) DeepCopy

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

func (*CacheSubnetGroupSpec) DeepCopyInto

func (in *CacheSubnetGroupSpec) DeepCopyInto(out *CacheSubnetGroupSpec)

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

type CacheSubnetGroupStatus

type CacheSubnetGroupStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// A list of events. Each element in the list contains detailed information
	// about one event.
	// +kubebuilder:validation:Optional
	Events []*Event `json:"events,omitempty"`
	// A list of subnets associated with the cache subnet group.
	// +kubebuilder:validation:Optional
	Subnets []*Subnet `json:"subnets,omitempty"`
	// The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet
	// group.
	// +kubebuilder:validation:Optional
	VPCID *string `json:"vpcID,omitempty"`
}

CacheSubnetGroupStatus defines the observed state of CacheSubnetGroup

func (*CacheSubnetGroupStatus) DeepCopy

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

func (*CacheSubnetGroupStatus) DeepCopyInto

func (in *CacheSubnetGroupStatus) DeepCopyInto(out *CacheSubnetGroupStatus)

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

type CacheSubnetGroup_SDK

type CacheSubnetGroup_SDK struct {
	ARN                         *string   `json:"arn,omitempty"`
	CacheSubnetGroupDescription *string   `json:"cacheSubnetGroupDescription,omitempty"`
	CacheSubnetGroupName        *string   `json:"cacheSubnetGroupName,omitempty"`
	Subnets                     []*Subnet `json:"subnets,omitempty"`
	VPCID                       *string   `json:"vpcID,omitempty"`
}

Represents the output of one of the following operations:

  • CreateCacheSubnetGroup

  • ModifyCacheSubnetGroup

func (*CacheSubnetGroup_SDK) DeepCopy

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

func (*CacheSubnetGroup_SDK) DeepCopyInto

func (in *CacheSubnetGroup_SDK) DeepCopyInto(out *CacheSubnetGroup_SDK)

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

type ChangeType

type ChangeType string
const (
	ChangeType_immediate       ChangeType = "immediate"
	ChangeType_requires_reboot ChangeType = "requires-reboot"
)

type CloudWatchLogsDestinationDetails added in v0.0.4

type CloudWatchLogsDestinationDetails struct {
	LogGroup *string `json:"logGroup,omitempty"`
}

The configuration details of the CloudWatch Logs destination.

func (*CloudWatchLogsDestinationDetails) DeepCopy added in v0.0.4

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

func (*CloudWatchLogsDestinationDetails) DeepCopyInto added in v0.0.4

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

type ClusterMode added in v0.1.0

type ClusterMode string
const (
	ClusterMode_enabled    ClusterMode = "enabled"
	ClusterMode_disabled   ClusterMode = "disabled"
	ClusterMode_compatible ClusterMode = "compatible"
)

type ConfigureShard

type ConfigureShard struct {
	NewReplicaCount *int64  `json:"newReplicaCount,omitempty"`
	NodeGroupID     *string `json:"nodeGroupID,omitempty"`
}

Node group (shard) configuration options when adding or removing replicas. Each node group (shard) configuration has the following members: NodeGroupId, NewReplicaCount, and PreferredAvailabilityZones.

func (*ConfigureShard) DeepCopy

func (in *ConfigureShard) DeepCopy() *ConfigureShard

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

func (*ConfigureShard) DeepCopyInto

func (in *ConfigureShard) DeepCopyInto(out *ConfigureShard)

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

type CustomerNodeEndpoint

type CustomerNodeEndpoint struct {
	Address *string `json:"address,omitempty"`
	Port    *int64  `json:"port,omitempty"`
}

The endpoint from which data should be migrated.

func (*CustomerNodeEndpoint) DeepCopy

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

func (*CustomerNodeEndpoint) DeepCopyInto

func (in *CustomerNodeEndpoint) DeepCopyInto(out *CustomerNodeEndpoint)

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

type DataStorageUnit added in v0.1.0

type DataStorageUnit string
const (
	DataStorageUnit_GB DataStorageUnit = "GB"
)

type DataTieringStatus added in v0.0.21

type DataTieringStatus string
const (
	DataTieringStatus_enabled  DataTieringStatus = "enabled"
	DataTieringStatus_disabled DataTieringStatus = "disabled"
)

type DestinationDetails added in v0.0.4

type DestinationDetails struct {
	// The configuration details of the CloudWatch Logs destination.
	CloudWatchLogsDetails *CloudWatchLogsDestinationDetails `json:"cloudWatchLogsDetails,omitempty"`
	// The configuration details of the Kinesis Data Firehose destination.
	KinesisFirehoseDetails *KinesisFirehoseDestinationDetails `json:"kinesisFirehoseDetails,omitempty"`
}

Configuration details of either a CloudWatch Logs destination or Kinesis Data Firehose destination.

func (*DestinationDetails) DeepCopy added in v0.0.4

func (in *DestinationDetails) DeepCopy() *DestinationDetails

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

func (*DestinationDetails) DeepCopyInto added in v0.0.4

func (in *DestinationDetails) DeepCopyInto(out *DestinationDetails)

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

type DestinationType added in v0.0.4

type DestinationType string
const (
	DestinationType_cloudwatch_logs  DestinationType = "cloudwatch-logs"
	DestinationType_kinesis_firehose DestinationType = "kinesis-firehose"
)

type EC2SecurityGroup

type EC2SecurityGroup struct {
	EC2SecurityGroupName    *string `json:"ec2SecurityGroupName,omitempty"`
	EC2SecurityGroupOwnerID *string `json:"ec2SecurityGroupOwnerID,omitempty"`
	Status                  *string `json:"status,omitempty"`
}

Provides ownership and status information for an Amazon EC2 security group.

func (*EC2SecurityGroup) DeepCopy

func (in *EC2SecurityGroup) DeepCopy() *EC2SecurityGroup

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

func (*EC2SecurityGroup) DeepCopyInto

func (in *EC2SecurityGroup) DeepCopyInto(out *EC2SecurityGroup)

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

type Endpoint

type Endpoint struct {
	Address *string `json:"address,omitempty"`
	Port    *int64  `json:"port,omitempty"`
}

Represents the information required for client programs to connect to a cache node.

func (*Endpoint) DeepCopy

func (in *Endpoint) DeepCopy() *Endpoint

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

func (*Endpoint) DeepCopyInto

func (in *Endpoint) DeepCopyInto(out *Endpoint)

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

type EngineDefaults

type EngineDefaults struct {
	CacheParameterGroupFamily *string      `json:"cacheParameterGroupFamily,omitempty"`
	Marker                    *string      `json:"marker,omitempty"`
	Parameters                []*Parameter `json:"parameters,omitempty"`
}

Represents the output of a DescribeEngineDefaultParameters operation.

func (*EngineDefaults) DeepCopy

func (in *EngineDefaults) DeepCopy() *EngineDefaults

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

func (*EngineDefaults) DeepCopyInto

func (in *EngineDefaults) DeepCopyInto(out *EngineDefaults)

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

type Event

type Event struct {
	Date             *metav1.Time `json:"date,omitempty"`
	Message          *string      `json:"message,omitempty"`
	SourceIdentifier *string      `json:"sourceIdentifier,omitempty"`
	SourceType       *string      `json:"sourceType,omitempty"`
}

Represents a single occurrence of something interesting within the system. Some examples of events are creating a cluster, adding or removing a cache node, or rebooting a node.

func (*Event) DeepCopy

func (in *Event) DeepCopy() *Event

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

func (*Event) DeepCopyInto

func (in *Event) DeepCopyInto(out *Event)

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

type Filter added in v0.0.4

type Filter struct {
	Name   *string   `json:"name,omitempty"`
	Values []*string `json:"values,omitempty"`
}

Used to streamline results of a search based on the property being filtered.

func (*Filter) DeepCopy added in v0.0.4

func (in *Filter) DeepCopy() *Filter

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

func (*Filter) DeepCopyInto added in v0.0.4

func (in *Filter) DeepCopyInto(out *Filter)

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

type GlobalNodeGroup

type GlobalNodeGroup struct {
	GlobalNodeGroupID *string `json:"globalNodeGroupID,omitempty"`
	Slots             *string `json:"slots,omitempty"`
}

Indicates the slot configuration and global identifier for a slice group.

func (*GlobalNodeGroup) DeepCopy

func (in *GlobalNodeGroup) DeepCopy() *GlobalNodeGroup

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

func (*GlobalNodeGroup) DeepCopyInto

func (in *GlobalNodeGroup) DeepCopyInto(out *GlobalNodeGroup)

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

type GlobalReplicationGroup

type GlobalReplicationGroup struct {
	ARN                               *string `json:"arn,omitempty"`
	AtRestEncryptionEnabled           *bool   `json:"atRestEncryptionEnabled,omitempty"`
	AuthTokenEnabled                  *bool   `json:"authTokenEnabled,omitempty"`
	CacheNodeType                     *string `json:"cacheNodeType,omitempty"`
	ClusterEnabled                    *bool   `json:"clusterEnabled,omitempty"`
	Engine                            *string `json:"engine,omitempty"`
	EngineVersion                     *string `json:"engineVersion,omitempty"`
	GlobalReplicationGroupDescription *string `json:"globalReplicationGroupDescription,omitempty"`
	GlobalReplicationGroupID          *string `json:"globalReplicationGroupID,omitempty"`
	Status                            *string `json:"status,omitempty"`
	TransitEncryptionEnabled          *bool   `json:"transitEncryptionEnabled,omitempty"`
}

Consists of a primary cluster that accepts writes and an associated secondary cluster that resides in a different Amazon region. The secondary cluster accepts only reads. The primary cluster automatically replicates updates to the secondary cluster.

  • The GlobalReplicationGroupIdSuffix represents the name of the Global datastore, which is what you use to associate a secondary cluster.

func (*GlobalReplicationGroup) DeepCopy

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

func (*GlobalReplicationGroup) DeepCopyInto

func (in *GlobalReplicationGroup) DeepCopyInto(out *GlobalReplicationGroup)

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

type GlobalReplicationGroupInfo

type GlobalReplicationGroupInfo struct {
	GlobalReplicationGroupID         *string `json:"globalReplicationGroupID,omitempty"`
	GlobalReplicationGroupMemberRole *string `json:"globalReplicationGroupMemberRole,omitempty"`
}

The name of the Global datastore and role of this replication group in the Global datastore.

func (*GlobalReplicationGroupInfo) DeepCopy

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

func (*GlobalReplicationGroupInfo) DeepCopyInto

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

type GlobalReplicationGroupMember

type GlobalReplicationGroupMember struct {
	AutomaticFailover      *string `json:"automaticFailover,omitempty"`
	ReplicationGroupID     *string `json:"replicationGroupID,omitempty"`
	ReplicationGroupRegion *string `json:"replicationGroupRegion,omitempty"`
	Role                   *string `json:"role,omitempty"`
	Status                 *string `json:"status,omitempty"`
}

A member of a Global datastore. It contains the Replication Group Id, the Amazon region and the role of the replication group.

func (*GlobalReplicationGroupMember) DeepCopy

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

func (*GlobalReplicationGroupMember) DeepCopyInto

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

type IPDiscovery added in v0.1.0

type IPDiscovery string
const (
	IPDiscovery_ipv4 IPDiscovery = "ipv4"
	IPDiscovery_ipv6 IPDiscovery = "ipv6"
)

type InputAuthenticationType added in v0.1.0

type InputAuthenticationType string
const (
	InputAuthenticationType_password             InputAuthenticationType = "password"
	InputAuthenticationType_no_password_required InputAuthenticationType = "no-password-required"
	InputAuthenticationType_iam                  InputAuthenticationType = "iam"
)

type KinesisFirehoseDestinationDetails added in v0.0.4

type KinesisFirehoseDestinationDetails struct {
	DeliveryStream *string `json:"deliveryStream,omitempty"`
}

The configuration details of the Kinesis Data Firehose destination.

func (*KinesisFirehoseDestinationDetails) DeepCopy added in v0.0.4

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

func (*KinesisFirehoseDestinationDetails) DeepCopyInto added in v0.0.4

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

type LogDeliveryConfiguration added in v0.0.4

type LogDeliveryConfiguration struct {
	// Configuration details of either a CloudWatch Logs destination or Kinesis
	// Data Firehose destination.
	DestinationDetails *DestinationDetails `json:"destinationDetails,omitempty"`
	DestinationType    *string             `json:"destinationType,omitempty"`
	LogFormat          *string             `json:"logFormat,omitempty"`
	LogType            *string             `json:"logType,omitempty"`
	Message            *string             `json:"message,omitempty"`
	Status             *string             `json:"status,omitempty"`
}

Returns the destination, format and type of the logs.

func (*LogDeliveryConfiguration) DeepCopy added in v0.0.4

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

func (*LogDeliveryConfiguration) DeepCopyInto added in v0.0.4

func (in *LogDeliveryConfiguration) DeepCopyInto(out *LogDeliveryConfiguration)

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

type LogDeliveryConfigurationRequest added in v0.0.4

type LogDeliveryConfigurationRequest struct {
	// Configuration details of either a CloudWatch Logs destination or Kinesis
	// Data Firehose destination.
	DestinationDetails *DestinationDetails `json:"destinationDetails,omitempty"`
	DestinationType    *string             `json:"destinationType,omitempty"`
	Enabled            *bool               `json:"enabled,omitempty"`
	LogFormat          *string             `json:"logFormat,omitempty"`
	LogType            *string             `json:"logType,omitempty"`
}

Specifies the destination, format and type of the logs.

func (*LogDeliveryConfigurationRequest) DeepCopy added in v0.0.4

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

func (*LogDeliveryConfigurationRequest) DeepCopyInto added in v0.0.4

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

type LogDeliveryConfigurationStatus added in v0.0.4

type LogDeliveryConfigurationStatus string
const (
	LogDeliveryConfigurationStatus_active    LogDeliveryConfigurationStatus = "active"
	LogDeliveryConfigurationStatus_enabling  LogDeliveryConfigurationStatus = "enabling"
	LogDeliveryConfigurationStatus_modifying LogDeliveryConfigurationStatus = "modifying"
	LogDeliveryConfigurationStatus_disabling LogDeliveryConfigurationStatus = "disabling"
	LogDeliveryConfigurationStatus_error     LogDeliveryConfigurationStatus = "error"
)

type LogFormat added in v0.0.4

type LogFormat string
const (
	LogFormat_text LogFormat = "text"
	LogFormat_json LogFormat = "json"
)

type LogType added in v0.0.4

type LogType string
const (
	LogType_slow_log   LogType = "slow-log"
	LogType_engine_log LogType = "engine-log"
)

type MultiAZStatus

type MultiAZStatus string
const (
	MultiAZStatus_enabled  MultiAZStatus = "enabled"
	MultiAZStatus_disabled MultiAZStatus = "disabled"
)

type NetworkType added in v0.1.0

type NetworkType string
const (
	NetworkType_ipv4       NetworkType = "ipv4"
	NetworkType_ipv6       NetworkType = "ipv6"
	NetworkType_dual_stack NetworkType = "dual_stack"
)

type NodeGroup

type NodeGroup struct {
	NodeGroupID      *string            `json:"nodeGroupID,omitempty"`
	NodeGroupMembers []*NodeGroupMember `json:"nodeGroupMembers,omitempty"`
	// Represents the information required for client programs to connect to a cache
	// node.
	PrimaryEndpoint *Endpoint `json:"primaryEndpoint,omitempty"`
	// Represents the information required for client programs to connect to a cache
	// node.
	ReaderEndpoint *Endpoint `json:"readerEndpoint,omitempty"`
	Slots          *string   `json:"slots,omitempty"`
	Status         *string   `json:"status,omitempty"`
}

Represents a collection of cache nodes in a replication group. One node in the node group is the read/write primary node. All the other nodes are read-only Replica nodes.

func (*NodeGroup) DeepCopy

func (in *NodeGroup) DeepCopy() *NodeGroup

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

func (*NodeGroup) DeepCopyInto

func (in *NodeGroup) DeepCopyInto(out *NodeGroup)

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

type NodeGroupConfiguration

type NodeGroupConfiguration struct {
	NodeGroupID              *string   `json:"nodeGroupID,omitempty"`
	PrimaryAvailabilityZone  *string   `json:"primaryAvailabilityZone,omitempty"`
	PrimaryOutpostARN        *string   `json:"primaryOutpostARN,omitempty"`
	ReplicaAvailabilityZones []*string `json:"replicaAvailabilityZones,omitempty"`
	ReplicaCount             *int64    `json:"replicaCount,omitempty"`
	ReplicaOutpostARNs       []*string `json:"replicaOutpostARNs,omitempty"`
	Slots                    *string   `json:"slots,omitempty"`
}

Node group (shard) configuration options. Each node group (shard) configuration has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones, ReplicaCount.

func (*NodeGroupConfiguration) DeepCopy

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

func (*NodeGroupConfiguration) DeepCopyInto

func (in *NodeGroupConfiguration) DeepCopyInto(out *NodeGroupConfiguration)

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

type NodeGroupMember

type NodeGroupMember struct {
	CacheClusterID            *string `json:"cacheClusterID,omitempty"`
	CacheNodeID               *string `json:"cacheNodeID,omitempty"`
	CurrentRole               *string `json:"currentRole,omitempty"`
	PreferredAvailabilityZone *string `json:"preferredAvailabilityZone,omitempty"`
	PreferredOutpostARN       *string `json:"preferredOutpostARN,omitempty"`
	// Represents the information required for client programs to connect to a cache
	// node.
	ReadEndpoint *Endpoint `json:"readEndpoint,omitempty"`
}

Represents a single node within a node group (shard).

func (*NodeGroupMember) DeepCopy

func (in *NodeGroupMember) DeepCopy() *NodeGroupMember

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

func (*NodeGroupMember) DeepCopyInto

func (in *NodeGroupMember) DeepCopyInto(out *NodeGroupMember)

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

type NodeGroupMemberUpdateStatus

type NodeGroupMemberUpdateStatus struct {
	CacheClusterID               *string      `json:"cacheClusterID,omitempty"`
	CacheNodeID                  *string      `json:"cacheNodeID,omitempty"`
	NodeDeletionDate             *metav1.Time `json:"nodeDeletionDate,omitempty"`
	NodeUpdateEndDate            *metav1.Time `json:"nodeUpdateEndDate,omitempty"`
	NodeUpdateInitiatedDate      *metav1.Time `json:"nodeUpdateInitiatedDate,omitempty"`
	NodeUpdateStartDate          *metav1.Time `json:"nodeUpdateStartDate,omitempty"`
	NodeUpdateStatusModifiedDate *metav1.Time `json:"nodeUpdateStatusModifiedDate,omitempty"`
}

The status of the service update on the node group member

func (*NodeGroupMemberUpdateStatus) DeepCopy

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

func (*NodeGroupMemberUpdateStatus) DeepCopyInto

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

type NodeGroupUpdateStatus

type NodeGroupUpdateStatus struct {
	NodeGroupID *string `json:"nodeGroupID,omitempty"`
}

The status of the service update on the node group

func (*NodeGroupUpdateStatus) DeepCopy

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

func (*NodeGroupUpdateStatus) DeepCopyInto

func (in *NodeGroupUpdateStatus) DeepCopyInto(out *NodeGroupUpdateStatus)

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

type NodeSnapshot

type NodeSnapshot struct {
	CacheClusterID      *string      `json:"cacheClusterID,omitempty"`
	CacheNodeCreateTime *metav1.Time `json:"cacheNodeCreateTime,omitempty"`
	CacheNodeID         *string      `json:"cacheNodeID,omitempty"`
	CacheSize           *string      `json:"cacheSize,omitempty"`
	// Node group (shard) configuration options. Each node group (shard) configuration
	// has the following: Slots, PrimaryAvailabilityZone, ReplicaAvailabilityZones,
	// ReplicaCount.
	NodeGroupConfiguration *NodeGroupConfiguration `json:"nodeGroupConfiguration,omitempty"`
	NodeGroupID            *string                 `json:"nodeGroupID,omitempty"`
	SnapshotCreateTime     *metav1.Time            `json:"snapshotCreateTime,omitempty"`
}

Represents an individual cache node in a snapshot of a cluster.

func (*NodeSnapshot) DeepCopy

func (in *NodeSnapshot) DeepCopy() *NodeSnapshot

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

func (*NodeSnapshot) DeepCopyInto

func (in *NodeSnapshot) DeepCopyInto(out *NodeSnapshot)

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

type NodeUpdateInitiatedBy

type NodeUpdateInitiatedBy string
const (
	NodeUpdateInitiatedBy_system   NodeUpdateInitiatedBy = "system"
	NodeUpdateInitiatedBy_customer NodeUpdateInitiatedBy = "customer"
)

type NodeUpdateStatus

type NodeUpdateStatus string
const (
	NodeUpdateStatus_not_applied      NodeUpdateStatus = "not-applied"
	NodeUpdateStatus_waiting_to_start NodeUpdateStatus = "waiting-to-start"
	NodeUpdateStatus_in_progress      NodeUpdateStatus = "in-progress"
	NodeUpdateStatus_stopping         NodeUpdateStatus = "stopping"
	NodeUpdateStatus_stopped          NodeUpdateStatus = "stopped"
	NodeUpdateStatus_complete         NodeUpdateStatus = "complete"
)

type NotificationConfiguration

type NotificationConfiguration struct {
	TopicARN    *string `json:"topicARN,omitempty"`
	TopicStatus *string `json:"topicStatus,omitempty"`
}

Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).

func (*NotificationConfiguration) DeepCopy

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

func (*NotificationConfiguration) DeepCopyInto

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

type OutpostMode

type OutpostMode string
const (
	OutpostMode_single_outpost OutpostMode = "single-outpost"
	OutpostMode_cross_outpost  OutpostMode = "cross-outpost"
)

type Parameter

type Parameter struct {
	AllowedValues        *string `json:"allowedValues,omitempty"`
	ChangeType           *string `json:"changeType,omitempty"`
	DataType             *string `json:"dataType,omitempty"`
	Description          *string `json:"description,omitempty"`
	IsModifiable         *bool   `json:"isModifiable,omitempty"`
	MinimumEngineVersion *string `json:"minimumEngineVersion,omitempty"`
	ParameterName        *string `json:"parameterName,omitempty"`
	ParameterValue       *string `json:"parameterValue,omitempty"`
	Source               *string `json:"source,omitempty"`
}

Describes an individual setting that controls some aspect of ElastiCache behavior.

func (*Parameter) DeepCopy

func (in *Parameter) DeepCopy() *Parameter

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

func (*Parameter) DeepCopyInto

func (in *Parameter) DeepCopyInto(out *Parameter)

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

type ParameterNameValue

type ParameterNameValue struct {
	ParameterName  *string `json:"parameterName,omitempty"`
	ParameterValue *string `json:"parameterValue,omitempty"`
}

Describes a name-value pair that is used to update the value of a parameter.

func (*ParameterNameValue) DeepCopy

func (in *ParameterNameValue) DeepCopy() *ParameterNameValue

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

func (*ParameterNameValue) DeepCopyInto

func (in *ParameterNameValue) DeepCopyInto(out *ParameterNameValue)

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

type PendingAutomaticFailoverStatus

type PendingAutomaticFailoverStatus string
const (
	PendingAutomaticFailoverStatus_enabled  PendingAutomaticFailoverStatus = "enabled"
	PendingAutomaticFailoverStatus_disabled PendingAutomaticFailoverStatus = "disabled"
)

type PendingLogDeliveryConfiguration added in v0.0.4

type PendingLogDeliveryConfiguration struct {
	// Configuration details of either a CloudWatch Logs destination or Kinesis
	// Data Firehose destination.
	DestinationDetails *DestinationDetails `json:"destinationDetails,omitempty"`
	DestinationType    *string             `json:"destinationType,omitempty"`
	LogFormat          *string             `json:"logFormat,omitempty"`
	LogType            *string             `json:"logType,omitempty"`
}

The log delivery configurations being modified

func (*PendingLogDeliveryConfiguration) DeepCopy added in v0.0.4

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

func (*PendingLogDeliveryConfiguration) DeepCopyInto added in v0.0.4

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

type PendingModifiedValues

type PendingModifiedValues struct {
	AuthTokenStatus          *string   `json:"authTokenStatus,omitempty"`
	CacheNodeIDsToRemove     []*string `json:"cacheNodeIDsToRemove,omitempty"`
	CacheNodeType            *string   `json:"cacheNodeType,omitempty"`
	EngineVersion            *string   `json:"engineVersion,omitempty"`
	NumCacheNodes            *int64    `json:"numCacheNodes,omitempty"`
	TransitEncryptionEnabled *bool     `json:"transitEncryptionEnabled,omitempty"`
	TransitEncryptionMode    *string   `json:"transitEncryptionMode,omitempty"`
}

A group of settings that are applied to the cluster in the future, or that are currently being applied.

func (*PendingModifiedValues) DeepCopy

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

func (*PendingModifiedValues) DeepCopyInto

func (in *PendingModifiedValues) DeepCopyInto(out *PendingModifiedValues)

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

type ProcessedUpdateAction

type ProcessedUpdateAction struct {
	CacheClusterID     *string `json:"cacheClusterID,omitempty"`
	ReplicationGroupID *string `json:"replicationGroupID,omitempty"`
	ServiceUpdateName  *string `json:"serviceUpdateName,omitempty"`
}

Update action that has been processed for the corresponding apply/stop request

func (*ProcessedUpdateAction) DeepCopy

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

func (*ProcessedUpdateAction) DeepCopyInto

func (in *ProcessedUpdateAction) DeepCopyInto(out *ProcessedUpdateAction)

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

type RecurringCharge

type RecurringCharge struct {
	RecurringChargeAmount    *float64 `json:"recurringChargeAmount,omitempty"`
	RecurringChargeFrequency *string  `json:"recurringChargeFrequency,omitempty"`
}

Contains the specific price and frequency of a recurring charges for a reserved cache node, or for a reserved cache node offering.

func (*RecurringCharge) DeepCopy

func (in *RecurringCharge) DeepCopy() *RecurringCharge

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

func (*RecurringCharge) DeepCopyInto

func (in *RecurringCharge) DeepCopyInto(out *RecurringCharge)

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

type RegionalConfiguration

type RegionalConfiguration struct {
	ReplicationGroupID     *string `json:"replicationGroupID,omitempty"`
	ReplicationGroupRegion *string `json:"replicationGroupRegion,omitempty"`
}

A list of the replication groups

func (*RegionalConfiguration) DeepCopy

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

func (*RegionalConfiguration) DeepCopyInto

func (in *RegionalConfiguration) DeepCopyInto(out *RegionalConfiguration)

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

type ReplicationGroup

type ReplicationGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ReplicationGroupSpec   `json:"spec,omitempty"`
	Status            ReplicationGroupStatus `json:"status,omitempty"`
}

ReplicationGroup is the Schema for the ReplicationGroups API +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*ReplicationGroup) DeepCopy

func (in *ReplicationGroup) DeepCopy() *ReplicationGroup

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

func (*ReplicationGroup) DeepCopyInto

func (in *ReplicationGroup) DeepCopyInto(out *ReplicationGroup)

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

func (*ReplicationGroup) DeepCopyObject

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

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

type ReplicationGroupList

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

ReplicationGroupList contains a list of ReplicationGroup +kubebuilder:object:root=true

func (*ReplicationGroupList) DeepCopy

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

func (*ReplicationGroupList) DeepCopyInto

func (in *ReplicationGroupList) DeepCopyInto(out *ReplicationGroupList)

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

func (*ReplicationGroupList) DeepCopyObject

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

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

type ReplicationGroupPendingModifiedValues

type ReplicationGroupPendingModifiedValues struct {
	AuthTokenStatus           *string                            `json:"authTokenStatus,omitempty"`
	AutomaticFailoverStatus   *string                            `json:"automaticFailoverStatus,omitempty"`
	LogDeliveryConfigurations []*PendingLogDeliveryConfiguration `json:"logDeliveryConfigurations,omitempty"`
	PrimaryClusterID          *string                            `json:"primaryClusterID,omitempty"`
	// The status of an online resharding operation.
	Resharding *ReshardingStatus `json:"resharding,omitempty"`
	// The status of the user group update.
	UserGroups *UserGroupsUpdateStatus `json:"userGroups,omitempty"`
}

The settings to be applied to the Redis replication group, either immediately or during the next maintenance window.

func (*ReplicationGroupPendingModifiedValues) DeepCopy

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

func (*ReplicationGroupPendingModifiedValues) DeepCopyInto

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

type ReplicationGroupSpec

type ReplicationGroupSpec struct {

	// A flag that enables encryption at rest when set to true.
	//
	// You cannot modify the value of AtRestEncryptionEnabled after the replication
	// group is created. To enable encryption at rest on a replication group you
	// must set AtRestEncryptionEnabled to true when you create the replication
	// group.
	//
	// Required: Only available when creating a replication group in an Amazon VPC
	// using redis version 3.2.6, 4.x or later.
	//
	// Default: false
	AtRestEncryptionEnabled *bool `json:"atRestEncryptionEnabled,omitempty"`
	// Reserved parameter. The password used to access a password protected server.
	//
	// AuthToken can be specified only on replication groups where TransitEncryptionEnabled
	// is true.
	//
	// For HIPAA compliance, you must specify TransitEncryptionEnabled as true,
	// an AuthToken, and a CacheSubnetGroup.
	//
	// Password constraints:
	//
	//   - Must be only printable ASCII characters.
	//
	//   - Must be at least 16 characters and no more than 128 characters in length.
	//
	//   - The only permitted printable special characters are !, &, #, $, ^, <,
	//     >, and -. Other printable special characters cannot be used in the AUTH
	//     token.
	//
	// For more information, see AUTH password (http://redis.io/commands/AUTH) at
	// http://redis.io/commands/AUTH.
	AuthToken *ackv1alpha1.SecretKeyReference `json:"authToken,omitempty"`
	// Specifies whether a read-only replica is automatically promoted to read/write
	// primary if the existing primary fails.
	//
	// AutomaticFailoverEnabled must be enabled for Redis (cluster mode enabled)
	// replication groups.
	//
	// Default: false
	AutomaticFailoverEnabled *bool `json:"automaticFailoverEnabled,omitempty"`
	// The compute and memory capacity of the nodes in the node group (shard).
	//
	// The following node types are supported by ElastiCache. Generally speaking,
	// the current generation types provide more memory and computational power
	// at lower cost when compared to their equivalent previous generation counterparts.
	//
	//   - General purpose: Current generation: M6g node types (available only
	//     for Redis engine version 5.0.6 onward and for Memcached engine version
	//     1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge,
	//     cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge
	//     For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//     M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge,
	//     cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge,
	//     cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available
	//     only for Redis engine version 5.0.6 onward and Memcached engine version
	//     1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3
	//     node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types:
	//     cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not
	//     recommended. Existing clusters are still supported but creation of new
	//     clusters is not supported for these types.) T1 node types: cache.t1.micro
	//     M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
	//     M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
	//
	//   - Compute optimized: Previous generation: (not recommended. Existing clusters
	//     are still supported but creation of new clusters is not supported for
	//     these types.) C1 node types: cache.c1.xlarge
	//
	//   - Memory optimized with data tiering: Current generation: R6gd node types
	//     (available only for Redis engine version 6.2 onward). cache.r6gd.xlarge,
	//     cache.r6gd.2xlarge, cache.r6gd.4xlarge, cache.r6gd.8xlarge, cache.r6gd.12xlarge,
	//     cache.r6gd.16xlarge
	//
	//   - Memory optimized: Current generation: R6g node types (available only
	//     for Redis engine version 5.0.6 onward and for Memcached engine version
	//     1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge,
	//     cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge
	//     For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//     R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge,
	//     cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge,
	//     cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge
	//     Previous generation: (not recommended. Existing clusters are still supported
	//     but creation of new clusters is not supported for these types.) M2 node
	//     types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types:
	//     cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
	//
	// Additional node type info
	//
	//   - All current generation instance types are created in Amazon VPC by default.
	//
	//   - Redis append-only files (AOF) are not supported for T1 or T2 instances.
	//
	//   - Redis Multi-AZ with automatic failover is not supported on T1 instances.
	//
	//   - Redis configuration variables appendonly and appendfsync are not supported
	//     on Redis version 2.8.22 and later.
	CacheNodeType *string `json:"cacheNodeType,omitempty"`
	// The name of the parameter group to associate with this replication group.
	// If this argument is omitted, the default cache parameter group for the specified
	// engine is used.
	//
	// If you are running Redis version 3.2.4 or later, only one node group (shard),
	// and want to use a default parameter group, we recommend that you specify
	// the parameter group by name.
	//
	//   - To create a Redis (cluster mode disabled) replication group, use CacheParameterGroupName=default.redis3.2.
	//
	//   - To create a Redis (cluster mode enabled) replication group, use CacheParameterGroupName=default.redis3.2.cluster.on.
	CacheParameterGroupName *string                                  `json:"cacheParameterGroupName,omitempty"`
	CacheParameterGroupRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"cacheParameterGroupRef,omitempty"`
	// A list of cache security group names to associate with this replication group.
	CacheSecurityGroupNames []*string `json:"cacheSecurityGroupNames,omitempty"`
	// The name of the cache subnet group to be used for the replication group.
	//
	// If you're going to launch your cluster in an Amazon VPC, you need to create
	// a subnet group before you start creating a cluster. For more information,
	// see Subnets and Subnet Groups (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SubnetGroups.html).
	CacheSubnetGroupName *string                                  `json:"cacheSubnetGroupName,omitempty"`
	CacheSubnetGroupRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"cacheSubnetGroupRef,omitempty"`
	// Enables data tiering. Data tiering is only supported for replication groups
	// using the r6gd node type. This parameter must be set to true when using r6gd
	// nodes. For more information, see Data tiering (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/data-tiering.html).
	DataTieringEnabled *bool `json:"dataTieringEnabled,omitempty"`
	// A user-created description for the replication group.
	// +kubebuilder:validation:Required
	Description *string `json:"description"`
	// The name of the cache engine to be used for the clusters in this replication
	// group. Must be Redis.
	Engine *string `json:"engine,omitempty"`
	// The version number of the cache engine to be used for the clusters in this
	// replication group. To view the supported cache engine versions, use the DescribeCacheEngineVersions
	// operation.
	//
	// Important: You can upgrade to a newer engine version (see Selecting a Cache
	// Engine and Version (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SelectEngine.html#VersionManagement))
	// in the ElastiCache User Guide, but you cannot downgrade to an earlier engine
	// version. If you want to use an earlier engine version, you must delete the
	// existing cluster or replication group and create it anew with the earlier
	// engine version.
	EngineVersion *string `json:"engineVersion,omitempty"`
	// The ID of the KMS key used to encrypt the disk in the cluster.
	KMSKeyID *string `json:"kmsKeyID,omitempty"`
	// Specifies the destination, format and type of the logs.
	LogDeliveryConfigurations []*LogDeliveryConfigurationRequest `json:"logDeliveryConfigurations,omitempty"`
	// A flag indicating if you have Multi-AZ enabled to enhance fault tolerance.
	// For more information, see Minimizing Downtime: Multi-AZ (http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/AutoFailover.html).
	MultiAZEnabled *bool `json:"multiAZEnabled,omitempty"`
	// A list of node group (shard) configuration options. Each node group (shard)
	// configuration has the following members: PrimaryAvailabilityZone, ReplicaAvailabilityZones,
	// ReplicaCount, and Slots.
	//
	// If you're creating a Redis (cluster mode disabled) or a Redis (cluster mode
	// enabled) replication group, you can use this parameter to individually configure
	// each node group (shard), or you can omit this parameter. However, it is required
	// when seeding a Redis (cluster mode enabled) cluster from a S3 rdb file. You
	// must configure each node group (shard) using this parameter because you must
	// specify the slots for each node group.
	NodeGroupConfiguration []*NodeGroupConfiguration `json:"nodeGroupConfiguration,omitempty"`
	// The Amazon Resource Name (ARN) of the Amazon Simple Notification Service
	// (SNS) topic to which notifications are sent.
	//
	// The Amazon SNS topic owner must be the same as the cluster owner.
	NotificationTopicARN *string `json:"notificationTopicARN,omitempty"`
	// An optional parameter that specifies the number of node groups (shards) for
	// this Redis (cluster mode enabled) replication group. For Redis (cluster mode
	// disabled) either omit this parameter or set it to 1.
	//
	// Default: 1
	NumNodeGroups *int64 `json:"numNodeGroups,omitempty"`
	// The port number on which each member of the replication group accepts connections.
	Port *int64 `json:"port,omitempty"`
	// A list of EC2 Availability Zones in which the replication group's clusters
	// are created. The order of the Availability Zones in the list is the order
	// in which clusters are allocated. The primary cluster is created in the first
	// AZ in the list.
	//
	// This parameter is not used if there is more than one node group (shard).
	// You should use NodeGroupConfiguration instead.
	//
	// If you are creating your replication group in an Amazon VPC (recommended),
	// you can only locate clusters in Availability Zones associated with the subnets
	// in the selected subnet group.
	//
	// The number of Availability Zones listed must equal the value of NumCacheClusters.
	//
	// Default: system chosen Availability Zones.
	PreferredCacheClusterAZs []*string `json:"preferredCacheClusterAZs,omitempty"`
	// Specifies the weekly time range during which maintenance on the cluster is
	// performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi
	// (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid
	// values for ddd are:
	//
	// Specifies the weekly time range during which maintenance on the cluster is
	// performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi
	// (24H Clock UTC). The minimum maintenance window is a 60 minute period.
	//
	// Valid values for ddd are:
	//
	//   - sun
	//
	//   - mon
	//
	//   - tue
	//
	//   - wed
	//
	//   - thu
	//
	//   - fri
	//
	//   - sat
	//
	// Example: sun:23:00-mon:01:30
	PreferredMaintenanceWindow *string `json:"preferredMaintenanceWindow,omitempty"`
	// The identifier of the cluster that serves as the primary for this replication
	// group. This cluster must already exist and have a status of available.
	//
	// This parameter is not required if NumCacheClusters, NumNodeGroups, or ReplicasPerNodeGroup
	// is specified.
	PrimaryClusterID *string `json:"primaryClusterID,omitempty"`
	// An optional parameter that specifies the number of replica nodes in each
	// node group (shard). Valid values are 0 to 5.
	ReplicasPerNodeGroup *int64 `json:"replicasPerNodeGroup,omitempty"`
	// The replication group identifier. This parameter is stored as a lowercase
	// string.
	//
	// Constraints:
	//
	//   - A name must contain from 1 to 40 alphanumeric characters or hyphens.
	//
	//   - The first character must be a letter.
	//
	//   - A name cannot end with a hyphen or contain two consecutive hyphens.
	//
	// +kubebuilder:validation:Required
	ReplicationGroupID *string `json:"replicationGroupID"`
	// One or more Amazon VPC security groups associated with this replication group.
	//
	// Use this parameter only when you are creating a replication group in an Amazon
	// Virtual Private Cloud (Amazon VPC).
	SecurityGroupIDs  []*string                                  `json:"securityGroupIDs,omitempty"`
	SecurityGroupRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"securityGroupRefs,omitempty"`
	// A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB
	// snapshot files stored in Amazon S3. The snapshot files are used to populate
	// the new replication group. The Amazon S3 object name in the ARN cannot contain
	// any commas. The new replication group will have the number of node groups
	// (console: shards) specified by the parameter NumNodeGroups or the number
	// of node groups configured by NodeGroupConfiguration regardless of the number
	// of ARNs specified here.
	//
	// Example of an Amazon S3 ARN: arn:aws:s3:::my_bucket/snapshot1.rdb
	SnapshotARNs []*string `json:"snapshotARNs,omitempty"`
	// The name of a snapshot from which to restore data into the new replication
	// group. The snapshot status changes to restoring while the new replication
	// group is being created.
	SnapshotName *string `json:"snapshotName,omitempty"`
	// The number of days for which ElastiCache retains automatic snapshots before
	// deleting them. For example, if you set SnapshotRetentionLimit to 5, a snapshot
	// that was taken today is retained for 5 days before being deleted.
	//
	// Default: 0 (i.e., automatic backups are disabled for this cluster).
	SnapshotRetentionLimit *int64 `json:"snapshotRetentionLimit,omitempty"`
	// The daily time range (in UTC) during which ElastiCache begins taking a daily
	// snapshot of your node group (shard).
	//
	// Example: 05:00-09:00
	//
	// If you do not specify this parameter, ElastiCache automatically chooses an
	// appropriate time range.
	SnapshotWindow *string `json:"snapshotWindow,omitempty"`
	// A list of tags to be added to this resource. Tags are comma-separated key,value
	// pairs (e.g. Key=myKey, Value=myKeyValue. You can include multiple tags as
	// shown following: Key=myKey, Value=myKeyValue Key=mySecondKey, Value=mySecondKeyValue.
	// Tags on replication groups will be replicated to all nodes.
	Tags []*Tag `json:"tags,omitempty"`
	// A flag that enables in-transit encryption when set to true.
	//
	// You cannot modify the value of TransitEncryptionEnabled after the cluster
	// is created. To enable in-transit encryption on a cluster you must set TransitEncryptionEnabled
	// to true when you create a cluster.
	//
	// This parameter is valid only if the Engine parameter is redis, the EngineVersion
	// parameter is 3.2.6, 4.x or later, and the cluster is being created in an
	// Amazon VPC.
	//
	// If you enable in-transit encryption, you must also specify a value for CacheSubnetGroup.
	//
	// Required: Only available when creating a replication group in an Amazon VPC
	// using redis version 3.2.6, 4.x or later.
	//
	// Default: false
	//
	// For HIPAA compliance, you must specify TransitEncryptionEnabled as true,
	// an AuthToken, and a CacheSubnetGroup.
	TransitEncryptionEnabled *bool `json:"transitEncryptionEnabled,omitempty"`
	// The user group to associate with the replication group.
	UserGroupIDs []*string `json:"userGroupIDs,omitempty"`
}

ReplicationGroupSpec defines the desired state of ReplicationGroup.

Contains all of the attributes of a specific Redis replication group.

func (*ReplicationGroupSpec) DeepCopy

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

func (*ReplicationGroupSpec) DeepCopyInto

func (in *ReplicationGroupSpec) DeepCopyInto(out *ReplicationGroupSpec)

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

type ReplicationGroupStatus

type ReplicationGroupStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// A string list, each element of which specifies a cache node type which you
	// can use to scale your cluster or replication group. When scaling down a Redis
	// cluster or replication group using ModifyCacheCluster or ModifyReplicationGroup,
	// use a value from this list for the CacheNodeType parameter.
	// +kubebuilder:validation:Optional
	AllowedScaleDownModifications []*string `json:"allowedScaleDownModifications,omitempty"`
	// A string list, each element of which specifies a cache node type which you
	// can use to scale your cluster or replication group.
	//
	// When scaling up a Redis cluster or replication group using ModifyCacheCluster
	// or ModifyReplicationGroup, use a value from this list for the CacheNodeType
	// parameter.
	// +kubebuilder:validation:Optional
	AllowedScaleUpModifications []*string `json:"allowedScaleUpModifications,omitempty"`
	// A flag that enables using an AuthToken (password) when issuing Redis commands.
	//
	// Default: false
	// +kubebuilder:validation:Optional
	AuthTokenEnabled *bool `json:"authTokenEnabled,omitempty"`
	// The date the auth token was last modified
	// +kubebuilder:validation:Optional
	AuthTokenLastModifiedDate *metav1.Time `json:"authTokenLastModifiedDate,omitempty"`
	// If you are running Redis engine version 6.0 or later, set this parameter
	// to yes if you want to opt-in to the next auto minor version upgrade campaign.
	// This parameter is disabled for previous versions.
	// +kubebuilder:validation:Optional
	AutoMinorVersionUpgrade *bool `json:"autoMinorVersionUpgrade,omitempty"`
	// Indicates the status of automatic failover for this Redis replication group.
	// +kubebuilder:validation:Optional
	AutomaticFailover *string `json:"automaticFailover,omitempty"`
	// A flag indicating whether or not this replication group is cluster enabled;
	// i.e., whether its data can be partitioned across multiple shards (API/CLI:
	// node groups).
	//
	// Valid values: true | false
	// +kubebuilder:validation:Optional
	ClusterEnabled *bool `json:"clusterEnabled,omitempty"`
	// The configuration endpoint for this replication group. Use the configuration
	// endpoint to connect to this replication group.
	// +kubebuilder:validation:Optional
	ConfigurationEndpoint *Endpoint `json:"configurationEndpoint,omitempty"`
	// Enables data tiering. Data tiering is only supported for replication groups
	// using the r6gd node type. This parameter must be set to true when using r6gd
	// nodes. For more information, see Data tiering (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/data-tiering.html).
	// +kubebuilder:validation:Optional
	DataTiering *string `json:"dataTiering,omitempty"`
	// A list of events. Each element in the list contains detailed information
	// about one event.
	// +kubebuilder:validation:Optional
	Events []*Event `json:"events,omitempty"`
	// The name of the Global datastore and role of this replication group in the
	// Global datastore.
	// +kubebuilder:validation:Optional
	GlobalReplicationGroupInfo *GlobalReplicationGroupInfo `json:"globalReplicationGroupInfo,omitempty"`
	// Returns the destination, format and type of the logs.
	// +kubebuilder:validation:Optional
	LogDeliveryConfigurations []*LogDeliveryConfiguration `json:"logDeliveryConfigurations,omitempty"`
	// The names of all the cache clusters that are part of this replication group.
	// +kubebuilder:validation:Optional
	MemberClusters []*string `json:"memberClusters,omitempty"`
	// The outpost ARNs of the replication group's member clusters.
	// +kubebuilder:validation:Optional
	MemberClustersOutpostARNs []*string `json:"memberClustersOutpostARNs,omitempty"`
	// A flag indicating if you have Multi-AZ enabled to enhance fault tolerance.
	// For more information, see Minimizing Downtime: Multi-AZ (http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/AutoFailover.html)
	// +kubebuilder:validation:Optional
	MultiAZ *string `json:"multiAZ,omitempty"`
	// A list of node groups in this replication group. For Redis (cluster mode
	// disabled) replication groups, this is a single-element list. For Redis (cluster
	// mode enabled) replication groups, the list contains an entry for each node
	// group (shard).
	// +kubebuilder:validation:Optional
	NodeGroups []*NodeGroup `json:"nodeGroups,omitempty"`
	// A group of settings to be applied to the replication group, either immediately
	// or during the next maintenance window.
	// +kubebuilder:validation:Optional
	PendingModifiedValues *ReplicationGroupPendingModifiedValues `json:"pendingModifiedValues,omitempty"`
	// The date and time when the cluster was created.
	// +kubebuilder:validation:Optional
	ReplicationGroupCreateTime *metav1.Time `json:"replicationGroupCreateTime,omitempty"`
	// The cluster ID that is used as the daily snapshot source for the replication
	// group.
	// +kubebuilder:validation:Optional
	SnapshottingClusterID *string `json:"snapshottingClusterID,omitempty"`
	// The current state of this replication group - creating, available, modifying,
	// deleting, create-failed, snapshotting.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty"`
}

ReplicationGroupStatus defines the observed state of ReplicationGroup

func (*ReplicationGroupStatus) DeepCopy

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

func (*ReplicationGroupStatus) DeepCopyInto

func (in *ReplicationGroupStatus) DeepCopyInto(out *ReplicationGroupStatus)

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

type ReplicationGroup_SDK

type ReplicationGroup_SDK struct {
	ARN                       *string      `json:"arn,omitempty"`
	AtRestEncryptionEnabled   *bool        `json:"atRestEncryptionEnabled,omitempty"`
	AuthTokenEnabled          *bool        `json:"authTokenEnabled,omitempty"`
	AuthTokenLastModifiedDate *metav1.Time `json:"authTokenLastModifiedDate,omitempty"`
	AutoMinorVersionUpgrade   *bool        `json:"autoMinorVersionUpgrade,omitempty"`
	AutomaticFailover         *string      `json:"automaticFailover,omitempty"`
	CacheNodeType             *string      `json:"cacheNodeType,omitempty"`
	ClusterEnabled            *bool        `json:"clusterEnabled,omitempty"`
	// Represents the information required for client programs to connect to a cache
	// node.
	ConfigurationEndpoint *Endpoint `json:"configurationEndpoint,omitempty"`
	DataTiering           *string   `json:"dataTiering,omitempty"`
	Description           *string   `json:"description,omitempty"`
	// The name of the Global datastore and role of this replication group in the
	// Global datastore.
	GlobalReplicationGroupInfo *GlobalReplicationGroupInfo `json:"globalReplicationGroupInfo,omitempty"`
	KMSKeyID                   *string                     `json:"kmsKeyID,omitempty"`
	LogDeliveryConfigurations  []*LogDeliveryConfiguration `json:"logDeliveryConfigurations,omitempty"`
	MemberClusters             []*string                   `json:"memberClusters,omitempty"`
	MemberClustersOutpostARNs  []*string                   `json:"memberClustersOutpostARNs,omitempty"`
	MultiAZ                    *string                     `json:"multiAZ,omitempty"`
	NodeGroups                 []*NodeGroup                `json:"nodeGroups,omitempty"`
	// The settings to be applied to the Redis replication group, either immediately
	// or during the next maintenance window.
	PendingModifiedValues      *ReplicationGroupPendingModifiedValues `json:"pendingModifiedValues,omitempty"`
	ReplicationGroupCreateTime *metav1.Time                           `json:"replicationGroupCreateTime,omitempty"`
	ReplicationGroupID         *string                                `json:"replicationGroupID,omitempty"`
	SnapshotRetentionLimit     *int64                                 `json:"snapshotRetentionLimit,omitempty"`
	SnapshotWindow             *string                                `json:"snapshotWindow,omitempty"`
	SnapshottingClusterID      *string                                `json:"snapshottingClusterID,omitempty"`
	Status                     *string                                `json:"status,omitempty"`
	TransitEncryptionEnabled   *bool                                  `json:"transitEncryptionEnabled,omitempty"`
	UserGroupIDs               []*string                              `json:"userGroupIDs,omitempty"`
}

Contains all of the attributes of a specific Redis replication group.

func (*ReplicationGroup_SDK) DeepCopy

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

func (*ReplicationGroup_SDK) DeepCopyInto

func (in *ReplicationGroup_SDK) DeepCopyInto(out *ReplicationGroup_SDK)

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

type ReservedCacheNode

type ReservedCacheNode struct {
	CacheNodeCount               *int64       `json:"cacheNodeCount,omitempty"`
	CacheNodeType                *string      `json:"cacheNodeType,omitempty"`
	Duration                     *int64       `json:"duration,omitempty"`
	FixedPrice                   *float64     `json:"fixedPrice,omitempty"`
	OfferingType                 *string      `json:"offeringType,omitempty"`
	ProductDescription           *string      `json:"productDescription,omitempty"`
	ReservationARN               *string      `json:"reservationARN,omitempty"`
	ReservedCacheNodeID          *string      `json:"reservedCacheNodeID,omitempty"`
	ReservedCacheNodesOfferingID *string      `json:"reservedCacheNodesOfferingID,omitempty"`
	StartTime                    *metav1.Time `json:"startTime,omitempty"`
	State                        *string      `json:"state,omitempty"`
	UsagePrice                   *float64     `json:"usagePrice,omitempty"`
}

Represents the output of a PurchaseReservedCacheNodesOffering operation.

func (*ReservedCacheNode) DeepCopy

func (in *ReservedCacheNode) DeepCopy() *ReservedCacheNode

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

func (*ReservedCacheNode) DeepCopyInto

func (in *ReservedCacheNode) DeepCopyInto(out *ReservedCacheNode)

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

type ReservedCacheNodesOffering

type ReservedCacheNodesOffering struct {
	CacheNodeType                *string  `json:"cacheNodeType,omitempty"`
	Duration                     *int64   `json:"duration,omitempty"`
	FixedPrice                   *float64 `json:"fixedPrice,omitempty"`
	OfferingType                 *string  `json:"offeringType,omitempty"`
	ProductDescription           *string  `json:"productDescription,omitempty"`
	ReservedCacheNodesOfferingID *string  `json:"reservedCacheNodesOfferingID,omitempty"`
	UsagePrice                   *float64 `json:"usagePrice,omitempty"`
}

Describes all of the attributes of a reserved cache node offering.

func (*ReservedCacheNodesOffering) DeepCopy

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

func (*ReservedCacheNodesOffering) DeepCopyInto

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

type ReshardingConfiguration

type ReshardingConfiguration struct {
	NodeGroupID                *string   `json:"nodeGroupID,omitempty"`
	PreferredAvailabilityZones []*string `json:"preferredAvailabilityZones,omitempty"`
}

A list of PreferredAvailabilityZones objects that specifies the configuration of a node group in the resharded cluster.

func (*ReshardingConfiguration) DeepCopy

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

func (*ReshardingConfiguration) DeepCopyInto

func (in *ReshardingConfiguration) DeepCopyInto(out *ReshardingConfiguration)

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

type ReshardingStatus

type ReshardingStatus struct {
	// Represents the progress of an online resharding operation.
	SlotMigration *SlotMigration `json:"slotMigration,omitempty"`
}

The status of an online resharding operation.

func (*ReshardingStatus) DeepCopy

func (in *ReshardingStatus) DeepCopy() *ReshardingStatus

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

func (*ReshardingStatus) DeepCopyInto

func (in *ReshardingStatus) DeepCopyInto(out *ReshardingStatus)

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

type SecurityGroupMembership

type SecurityGroupMembership struct {
	SecurityGroupID *string `json:"securityGroupID,omitempty"`
	Status          *string `json:"status,omitempty"`
}

Represents a single cache security group and its status.

func (*SecurityGroupMembership) DeepCopy

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

func (*SecurityGroupMembership) DeepCopyInto

func (in *SecurityGroupMembership) DeepCopyInto(out *SecurityGroupMembership)

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

type ServiceUpdate

type ServiceUpdate struct {
	AutoUpdateAfterRecommendedApplyByDate *bool        `json:"autoUpdateAfterRecommendedApplyByDate,omitempty"`
	Engine                                *string      `json:"engine,omitempty"`
	EngineVersion                         *string      `json:"engineVersion,omitempty"`
	EstimatedUpdateTime                   *string      `json:"estimatedUpdateTime,omitempty"`
	ServiceUpdateDescription              *string      `json:"serviceUpdateDescription,omitempty"`
	ServiceUpdateEndDate                  *metav1.Time `json:"serviceUpdateEndDate,omitempty"`
	ServiceUpdateName                     *string      `json:"serviceUpdateName,omitempty"`
	ServiceUpdateRecommendedApplyByDate   *metav1.Time `json:"serviceUpdateRecommendedApplyByDate,omitempty"`
	ServiceUpdateReleaseDate              *metav1.Time `json:"serviceUpdateReleaseDate,omitempty"`
}

An update that you can apply to your Redis clusters.

func (*ServiceUpdate) DeepCopy

func (in *ServiceUpdate) DeepCopy() *ServiceUpdate

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

func (*ServiceUpdate) DeepCopyInto

func (in *ServiceUpdate) DeepCopyInto(out *ServiceUpdate)

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

type ServiceUpdateSeverity

type ServiceUpdateSeverity string
const (
	ServiceUpdateSeverity_critical  ServiceUpdateSeverity = "critical"
	ServiceUpdateSeverity_important ServiceUpdateSeverity = "important"
	ServiceUpdateSeverity_medium    ServiceUpdateSeverity = "medium"
	ServiceUpdateSeverity_low       ServiceUpdateSeverity = "low"
)

type ServiceUpdateStatus

type ServiceUpdateStatus string
const (
	ServiceUpdateStatus_available ServiceUpdateStatus = "available"
	ServiceUpdateStatus_cancelled ServiceUpdateStatus = "cancelled"
	ServiceUpdateStatus_expired   ServiceUpdateStatus = "expired"
)

type ServiceUpdateType

type ServiceUpdateType string
const (
	ServiceUpdateType_security_update ServiceUpdateType = "security-update"
)

type SlaMet

type SlaMet string
const (
	SlaMet_yes SlaMet = "yes"
	SlaMet_no  SlaMet = "no"
	SlaMet_n_a SlaMet = "n/a"
)

type SlotMigration

type SlotMigration struct {
	ProgressPercentage *float64 `json:"progressPercentage,omitempty"`
}

Represents the progress of an online resharding operation.

func (*SlotMigration) DeepCopy

func (in *SlotMigration) DeepCopy() *SlotMigration

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

func (*SlotMigration) DeepCopyInto

func (in *SlotMigration) DeepCopyInto(out *SlotMigration)

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

type Snapshot

type Snapshot struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SnapshotSpec   `json:"spec,omitempty"`
	Status            SnapshotStatus `json:"status,omitempty"`
}

Snapshot is the Schema for the Snapshots API +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*Snapshot) DeepCopy

func (in *Snapshot) DeepCopy() *Snapshot

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

func (*Snapshot) DeepCopyInto

func (in *Snapshot) DeepCopyInto(out *Snapshot)

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

func (*Snapshot) DeepCopyObject

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

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

type SnapshotList

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

SnapshotList contains a list of Snapshot +kubebuilder:object:root=true

func (*SnapshotList) DeepCopy

func (in *SnapshotList) DeepCopy() *SnapshotList

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

func (*SnapshotList) DeepCopyInto

func (in *SnapshotList) DeepCopyInto(out *SnapshotList)

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

func (*SnapshotList) DeepCopyObject

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

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

type SnapshotSpec

type SnapshotSpec struct {

	// The identifier of an existing cluster. The snapshot is created from this
	// cluster.
	CacheClusterID *string `json:"cacheClusterID,omitempty"`
	// The ID of the KMS key used to encrypt the snapshot.
	KMSKeyID *string `json:"kmsKeyID,omitempty"`
	// The identifier of an existing replication group. The snapshot is created
	// from this replication group.
	ReplicationGroupID *string `json:"replicationGroupID,omitempty"`
	// A name for the snapshot being created.
	// +kubebuilder:validation:Required
	SnapshotName *string `json:"snapshotName"`
	// The name of an existing snapshot from which to make a copy.
	SourceSnapshotName *string `json:"sourceSnapshotName,omitempty"`
	// A list of tags to be added to this resource. A tag is a key-value pair. A
	// tag key must be accompanied by a tag value, although null is accepted.
	Tags []*Tag `json:"tags,omitempty"`
}

SnapshotSpec defines the desired state of Snapshot.

Represents a copy of an entire Redis cluster as of the time when the snapshot was taken.

func (*SnapshotSpec) DeepCopy

func (in *SnapshotSpec) DeepCopy() *SnapshotSpec

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

func (*SnapshotSpec) DeepCopyInto

func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec)

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

type SnapshotStatus

type SnapshotStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// If you are running Redis engine version 6.0 or later, set this parameter
	// to yes if you want to opt-in to the next auto minor version upgrade campaign.
	// This parameter is disabled for previous versions.
	// +kubebuilder:validation:Optional
	AutoMinorVersionUpgrade *bool `json:"autoMinorVersionUpgrade,omitempty"`
	// Indicates the status of automatic failover for the source Redis replication
	// group.
	// +kubebuilder:validation:Optional
	AutomaticFailover *string `json:"automaticFailover,omitempty"`
	// The date and time when the source cluster was created.
	// +kubebuilder:validation:Optional
	CacheClusterCreateTime *metav1.Time `json:"cacheClusterCreateTime,omitempty"`
	// The name of the compute and memory capacity node type for the source cluster.
	//
	// The following node types are supported by ElastiCache. Generally speaking,
	// the current generation types provide more memory and computational power
	// at lower cost when compared to their equivalent previous generation counterparts.
	//
	//    * General purpose: Current generation: M6g node types (available only
	//    for Redis engine version 5.0.6 onward and for Memcached engine version
	//    1.5.16 onward). cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge,
	//    cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge, cache.m6g.16xlarge
	//    For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//    M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge, cache.m5.4xlarge,
	//    cache.m5.12xlarge, cache.m5.24xlarge M4 node types: cache.m4.large, cache.m4.xlarge,
	//    cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge T4g node types (available
	//    only for Redis engine version 5.0.6 onward and Memcached engine version
	//    1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium T3
	//    node types: cache.t3.micro, cache.t3.small, cache.t3.medium T2 node types:
	//    cache.t2.micro, cache.t2.small, cache.t2.medium Previous generation: (not
	//    recommended. Existing clusters are still supported but creation of new
	//    clusters is not supported for these types.) T1 node types: cache.t1.micro
	//    M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large, cache.m1.xlarge
	//    M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge, cache.m3.2xlarge
	//
	//    * Compute optimized: Previous generation: (not recommended. Existing clusters
	//    are still supported but creation of new clusters is not supported for
	//    these types.) C1 node types: cache.c1.xlarge
	//
	//    * Memory optimized with data tiering: Current generation: R6gd node types
	//    (available only for Redis engine version 6.2 onward). cache.r6gd.xlarge,
	//    cache.r6gd.2xlarge, cache.r6gd.4xlarge, cache.r6gd.8xlarge, cache.r6gd.12xlarge,
	//    cache.r6gd.16xlarge
	//
	//    * Memory optimized: Current generation: R6g node types (available only
	//    for Redis engine version 5.0.6 onward and for Memcached engine version
	//    1.5.16 onward). cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge,
	//    cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge, cache.r6g.16xlarge
	//    For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//    For region availability, see Supported Node Types (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.SupportedTypes.html#CacheNodes.SupportedTypesByRegion)
	//    R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge, cache.r5.4xlarge,
	//    cache.r5.12xlarge, cache.r5.24xlarge R4 node types: cache.r4.large, cache.r4.xlarge,
	//    cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge
	//    Previous generation: (not recommended. Existing clusters are still supported
	//    but creation of new clusters is not supported for these types.) M2 node
	//    types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge R3 node types:
	//    cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
	//
	// Additional node type info
	//
	//    * All current generation instance types are created in Amazon VPC by default.
	//
	//    * Redis append-only files (AOF) are not supported for T1 or T2 instances.
	//
	//    * Redis Multi-AZ with automatic failover is not supported on T1 instances.
	//
	//    * Redis configuration variables appendonly and appendfsync are not supported
	//    on Redis version 2.8.22 and later.
	// +kubebuilder:validation:Optional
	CacheNodeType *string `json:"cacheNodeType,omitempty"`
	// The cache parameter group that is associated with the source cluster.
	// +kubebuilder:validation:Optional
	CacheParameterGroupName *string `json:"cacheParameterGroupName,omitempty"`
	// The name of the cache subnet group associated with the source cluster.
	// +kubebuilder:validation:Optional
	CacheSubnetGroupName *string `json:"cacheSubnetGroupName,omitempty"`
	// Enables data tiering. Data tiering is only supported for replication groups
	// using the r6gd node type. This parameter must be set to true when using r6gd
	// nodes. For more information, see Data tiering (https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/data-tiering.html).
	// +kubebuilder:validation:Optional
	DataTiering *string `json:"dataTiering,omitempty"`
	// The name of the cache engine (memcached or redis) used by the source cluster.
	// +kubebuilder:validation:Optional
	Engine *string `json:"engine,omitempty"`
	// The version of the cache engine version that is used by the source cluster.
	// +kubebuilder:validation:Optional
	EngineVersion *string `json:"engineVersion,omitempty"`
	// A list of the cache nodes in the source cluster.
	// +kubebuilder:validation:Optional
	NodeSnapshots []*NodeSnapshot `json:"nodeSnapshots,omitempty"`
	// The number of cache nodes in the source cluster.
	//
	// For clusters running Redis, this value must be 1. For clusters running Memcached,
	// this value must be between 1 and 40.
	// +kubebuilder:validation:Optional
	NumCacheNodes *int64 `json:"numCacheNodes,omitempty"`
	// The number of node groups (shards) in this snapshot. When restoring from
	// a snapshot, the number of node groups (shards) in the snapshot and in the
	// restored replication group must be the same.
	// +kubebuilder:validation:Optional
	NumNodeGroups *int64 `json:"numNodeGroups,omitempty"`
	// The port number used by each cache nodes in the source cluster.
	// +kubebuilder:validation:Optional
	Port *int64 `json:"port,omitempty"`
	// The name of the Availability Zone in which the source cluster is located.
	// +kubebuilder:validation:Optional
	PreferredAvailabilityZone *string `json:"preferredAvailabilityZone,omitempty"`
	// Specifies the weekly time range during which maintenance on the cluster is
	// performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi
	// (24H Clock UTC). The minimum maintenance window is a 60 minute period.
	//
	// Valid values for ddd are:
	//
	//    * sun
	//
	//    * mon
	//
	//    * tue
	//
	//    * wed
	//
	//    * thu
	//
	//    * fri
	//
	//    * sat
	//
	// Example: sun:23:00-mon:01:30
	// +kubebuilder:validation:Optional
	PreferredMaintenanceWindow *string `json:"preferredMaintenanceWindow,omitempty"`
	// The ARN (Amazon Resource Name) of the preferred outpost.
	// +kubebuilder:validation:Optional
	PreferredOutpostARN *string `json:"preferredOutpostARN,omitempty"`
	// A description of the source replication group.
	// +kubebuilder:validation:Optional
	ReplicationGroupDescription *string `json:"replicationGroupDescription,omitempty"`
	// For an automatic snapshot, the number of days for which ElastiCache retains
	// the snapshot before deleting it.
	//
	// For manual snapshots, this field reflects the SnapshotRetentionLimit for
	// the source cluster when the snapshot was created. This field is otherwise
	// ignored: Manual snapshots do not expire, and can only be deleted using the
	// DeleteSnapshot operation.
	//
	// Important If the value of SnapshotRetentionLimit is set to zero (0), backups
	// are turned off.
	// +kubebuilder:validation:Optional
	SnapshotRetentionLimit *int64 `json:"snapshotRetentionLimit,omitempty"`
	// Indicates whether the snapshot is from an automatic backup (automated) or
	// was created manually (manual).
	// +kubebuilder:validation:Optional
	SnapshotSource *string `json:"snapshotSource,omitempty"`
	// The status of the snapshot. Valid values: creating | available | restoring
	// | copying | deleting.
	// +kubebuilder:validation:Optional
	SnapshotStatus *string `json:"snapshotStatus,omitempty"`
	// The daily time range during which ElastiCache takes daily snapshots of the
	// source cluster.
	// +kubebuilder:validation:Optional
	SnapshotWindow *string `json:"snapshotWindow,omitempty"`
	// The Amazon Resource Name (ARN) for the topic used by the source cluster for
	// publishing notifications.
	// +kubebuilder:validation:Optional
	TopicARN *string `json:"topicARN,omitempty"`
	// The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet
	// group for the source cluster.
	// +kubebuilder:validation:Optional
	VPCID *string `json:"vpcID,omitempty"`
}

SnapshotStatus defines the observed state of Snapshot

func (*SnapshotStatus) DeepCopy

func (in *SnapshotStatus) DeepCopy() *SnapshotStatus

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

func (*SnapshotStatus) DeepCopyInto

func (in *SnapshotStatus) DeepCopyInto(out *SnapshotStatus)

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

type Snapshot_SDK

type Snapshot_SDK struct {
	ARN                         *string         `json:"arn,omitempty"`
	AutoMinorVersionUpgrade     *bool           `json:"autoMinorVersionUpgrade,omitempty"`
	AutomaticFailover           *string         `json:"automaticFailover,omitempty"`
	CacheClusterCreateTime      *metav1.Time    `json:"cacheClusterCreateTime,omitempty"`
	CacheClusterID              *string         `json:"cacheClusterID,omitempty"`
	CacheNodeType               *string         `json:"cacheNodeType,omitempty"`
	CacheParameterGroupName     *string         `json:"cacheParameterGroupName,omitempty"`
	CacheSubnetGroupName        *string         `json:"cacheSubnetGroupName,omitempty"`
	DataTiering                 *string         `json:"dataTiering,omitempty"`
	Engine                      *string         `json:"engine,omitempty"`
	EngineVersion               *string         `json:"engineVersion,omitempty"`
	KMSKeyID                    *string         `json:"kmsKeyID,omitempty"`
	NodeSnapshots               []*NodeSnapshot `json:"nodeSnapshots,omitempty"`
	NumCacheNodes               *int64          `json:"numCacheNodes,omitempty"`
	NumNodeGroups               *int64          `json:"numNodeGroups,omitempty"`
	Port                        *int64          `json:"port,omitempty"`
	PreferredAvailabilityZone   *string         `json:"preferredAvailabilityZone,omitempty"`
	PreferredMaintenanceWindow  *string         `json:"preferredMaintenanceWindow,omitempty"`
	PreferredOutpostARN         *string         `json:"preferredOutpostARN,omitempty"`
	ReplicationGroupDescription *string         `json:"replicationGroupDescription,omitempty"`
	ReplicationGroupID          *string         `json:"replicationGroupID,omitempty"`
	SnapshotName                *string         `json:"snapshotName,omitempty"`
	SnapshotRetentionLimit      *int64          `json:"snapshotRetentionLimit,omitempty"`
	SnapshotSource              *string         `json:"snapshotSource,omitempty"`
	SnapshotStatus              *string         `json:"snapshotStatus,omitempty"`
	SnapshotWindow              *string         `json:"snapshotWindow,omitempty"`
	TopicARN                    *string         `json:"topicARN,omitempty"`
	VPCID                       *string         `json:"vpcID,omitempty"`
}

Represents a copy of an entire Redis cluster as of the time when the snapshot was taken.

func (*Snapshot_SDK) DeepCopy

func (in *Snapshot_SDK) DeepCopy() *Snapshot_SDK

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

func (*Snapshot_SDK) DeepCopyInto

func (in *Snapshot_SDK) DeepCopyInto(out *Snapshot_SDK)

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

type SourceType

type SourceType string
const (
	SourceType_cache_cluster             SourceType = "cache-cluster"
	SourceType_cache_parameter_group     SourceType = "cache-parameter-group"
	SourceType_cache_security_group      SourceType = "cache-security-group"
	SourceType_cache_subnet_group        SourceType = "cache-subnet-group"
	SourceType_replication_group         SourceType = "replication-group"
	SourceType_serverless_cache          SourceType = "serverless-cache"
	SourceType_serverless_cache_snapshot SourceType = "serverless-cache-snapshot"
	SourceType_user                      SourceType = "user"
	SourceType_user_group                SourceType = "user-group"
)

type Subnet

type Subnet struct {
	// Describes an Availability Zone in which the cluster is launched.
	SubnetAvailabilityZone *AvailabilityZone `json:"subnetAvailabilityZone,omitempty"`
	SubnetIdentifier       *string           `json:"subnetIdentifier,omitempty"`
	// The ID of the outpost subnet.
	SubnetOutpost *SubnetOutpost `json:"subnetOutpost,omitempty"`
}

Represents the subnet associated with a cluster. This parameter refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC) and used with ElastiCache.

func (*Subnet) DeepCopy

func (in *Subnet) DeepCopy() *Subnet

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

func (*Subnet) DeepCopyInto

func (in *Subnet) DeepCopyInto(out *Subnet)

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

type SubnetOutpost

type SubnetOutpost struct {
	SubnetOutpostARN *string `json:"subnetOutpostARN,omitempty"`
}

The ID of the outpost subnet.

func (*SubnetOutpost) DeepCopy

func (in *SubnetOutpost) DeepCopy() *SubnetOutpost

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

func (*SubnetOutpost) DeepCopyInto

func (in *SubnetOutpost) DeepCopyInto(out *SubnetOutpost)

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

type Tag

type Tag struct {
	Key   *string `json:"key,omitempty"`
	Value *string `json:"value,omitempty"`
}

A tag that can be added to an ElastiCache cluster or replication group. Tags are composed of a Key/Value pair. You can use tags to categorize and track all your ElastiCache resources, with the exception of global replication group. When you add or remove tags on replication groups, those actions will be replicated to all nodes in the replication group. A tag with a null Value is permitted.

func (*Tag) DeepCopy

func (in *Tag) DeepCopy() *Tag

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

func (*Tag) DeepCopyInto

func (in *Tag) DeepCopyInto(out *Tag)

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

type TimeRangeFilter

type TimeRangeFilter struct {
	EndTime   *metav1.Time `json:"endTime,omitempty"`
	StartTime *metav1.Time `json:"startTime,omitempty"`
}

Filters update actions from the service updates that are in available status during the time range.

func (*TimeRangeFilter) DeepCopy

func (in *TimeRangeFilter) DeepCopy() *TimeRangeFilter

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

func (*TimeRangeFilter) DeepCopyInto

func (in *TimeRangeFilter) DeepCopyInto(out *TimeRangeFilter)

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

type TransitEncryptionMode added in v0.1.0

type TransitEncryptionMode string
const (
	TransitEncryptionMode_preferred TransitEncryptionMode = "preferred"
	TransitEncryptionMode_required  TransitEncryptionMode = "required"
)

type UnprocessedUpdateAction

type UnprocessedUpdateAction struct {
	CacheClusterID     *string `json:"cacheClusterID,omitempty"`
	ErrorMessage       *string `json:"errorMessage,omitempty"`
	ErrorType          *string `json:"errorType,omitempty"`
	ReplicationGroupID *string `json:"replicationGroupID,omitempty"`
	ServiceUpdateName  *string `json:"serviceUpdateName,omitempty"`
}

Update action that has failed to be processed for the corresponding apply/stop request

func (*UnprocessedUpdateAction) DeepCopy

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

func (*UnprocessedUpdateAction) DeepCopyInto

func (in *UnprocessedUpdateAction) DeepCopyInto(out *UnprocessedUpdateAction)

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

type UpdateAction

type UpdateAction struct {
	CacheClusterID                      *string      `json:"cacheClusterID,omitempty"`
	Engine                              *string      `json:"engine,omitempty"`
	EstimatedUpdateTime                 *string      `json:"estimatedUpdateTime,omitempty"`
	NodesUpdated                        *string      `json:"nodesUpdated,omitempty"`
	ReplicationGroupID                  *string      `json:"replicationGroupID,omitempty"`
	ServiceUpdateName                   *string      `json:"serviceUpdateName,omitempty"`
	ServiceUpdateRecommendedApplyByDate *metav1.Time `json:"serviceUpdateRecommendedApplyByDate,omitempty"`
	ServiceUpdateReleaseDate            *metav1.Time `json:"serviceUpdateReleaseDate,omitempty"`
	UpdateActionAvailableDate           *metav1.Time `json:"updateActionAvailableDate,omitempty"`
	UpdateActionStatusModifiedDate      *metav1.Time `json:"updateActionStatusModifiedDate,omitempty"`
}

The status of the service update for a specific replication group

func (*UpdateAction) DeepCopy

func (in *UpdateAction) DeepCopy() *UpdateAction

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

func (*UpdateAction) DeepCopyInto

func (in *UpdateAction) DeepCopyInto(out *UpdateAction)

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

type UpdateActionStatus

type UpdateActionStatus string
const (
	UpdateActionStatus_not_applied      UpdateActionStatus = "not-applied"
	UpdateActionStatus_waiting_to_start UpdateActionStatus = "waiting-to-start"
	UpdateActionStatus_in_progress      UpdateActionStatus = "in-progress"
	UpdateActionStatus_stopping         UpdateActionStatus = "stopping"
	UpdateActionStatus_stopped          UpdateActionStatus = "stopped"
	UpdateActionStatus_complete         UpdateActionStatus = "complete"
	UpdateActionStatus_scheduling       UpdateActionStatus = "scheduling"
	UpdateActionStatus_scheduled        UpdateActionStatus = "scheduled"
	UpdateActionStatus_not_applicable   UpdateActionStatus = "not-applicable"
)

type User

type User struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              UserSpec   `json:"spec,omitempty"`
	Status            UserStatus `json:"status,omitempty"`
}

User is the Schema for the Users API +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*User) DeepCopy

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject added in v0.0.4

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

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

type UserGroup

type UserGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              UserGroupSpec   `json:"spec,omitempty"`
	Status            UserGroupStatus `json:"status,omitempty"`
}

UserGroup is the Schema for the UserGroups API +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*UserGroup) DeepCopy

func (in *UserGroup) DeepCopy() *UserGroup

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

func (*UserGroup) DeepCopyInto

func (in *UserGroup) DeepCopyInto(out *UserGroup)

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

func (*UserGroup) DeepCopyObject added in v0.0.4

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

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

type UserGroupList added in v0.0.4

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

UserGroupList contains a list of UserGroup +kubebuilder:object:root=true

func (*UserGroupList) DeepCopy added in v0.0.4

func (in *UserGroupList) DeepCopy() *UserGroupList

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

func (*UserGroupList) DeepCopyInto added in v0.0.4

func (in *UserGroupList) DeepCopyInto(out *UserGroupList)

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

func (*UserGroupList) DeepCopyObject added in v0.0.4

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

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

type UserGroupPendingChanges added in v0.0.4

type UserGroupPendingChanges struct {
	UserIDsToAdd    []*string `json:"userIDsToAdd,omitempty"`
	UserIDsToRemove []*string `json:"userIDsToRemove,omitempty"`
}

Returns the updates being applied to the user group.

func (*UserGroupPendingChanges) DeepCopy added in v0.0.4

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

func (*UserGroupPendingChanges) DeepCopyInto added in v0.0.4

func (in *UserGroupPendingChanges) DeepCopyInto(out *UserGroupPendingChanges)

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

type UserGroupSpec added in v0.0.4

type UserGroupSpec struct {

	// The current supported value is Redis.
	// +kubebuilder:validation:Required
	Engine *string `json:"engine"`
	// A list of tags to be added to this resource. A tag is a key-value pair. A
	// tag key must be accompanied by a tag value, although null is accepted.
	Tags []*Tag `json:"tags,omitempty"`
	// The ID of the user group.
	// +kubebuilder:validation:Required
	UserGroupID *string `json:"userGroupID"`
	// The list of user IDs that belong to the user group.
	UserIDs []*string `json:"userIDs,omitempty"`
}

func (*UserGroupSpec) DeepCopy added in v0.0.4

func (in *UserGroupSpec) DeepCopy() *UserGroupSpec

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

func (*UserGroupSpec) DeepCopyInto added in v0.0.4

func (in *UserGroupSpec) DeepCopyInto(out *UserGroupSpec)

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

type UserGroupStatus added in v0.0.4

type UserGroupStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The minimum engine version required, which is Redis 6.0
	// +kubebuilder:validation:Optional
	MinimumEngineVersion *string `json:"minimumEngineVersion,omitempty"`
	// A list of updates being applied to the user group.
	// +kubebuilder:validation:Optional
	PendingChanges *UserGroupPendingChanges `json:"pendingChanges,omitempty"`
	// A list of replication groups that the user group can access.
	// +kubebuilder:validation:Optional
	ReplicationGroups []*string `json:"replicationGroups,omitempty"`
	// Indicates user group status. Can be "creating", "active", "modifying", "deleting".
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty"`
}

UserGroupStatus defines the observed state of UserGroup

func (*UserGroupStatus) DeepCopy added in v0.0.4

func (in *UserGroupStatus) DeepCopy() *UserGroupStatus

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

func (*UserGroupStatus) DeepCopyInto added in v0.0.4

func (in *UserGroupStatus) DeepCopyInto(out *UserGroupStatus)

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

type UserGroup_SDK added in v0.0.4

type UserGroup_SDK struct {
	ARN                  *string `json:"arn,omitempty"`
	Engine               *string `json:"engine,omitempty"`
	MinimumEngineVersion *string `json:"minimumEngineVersion,omitempty"`
	// Returns the updates being applied to the user group.
	PendingChanges    *UserGroupPendingChanges `json:"pendingChanges,omitempty"`
	ReplicationGroups []*string                `json:"replicationGroups,omitempty"`
	Status            *string                  `json:"status,omitempty"`
	UserGroupID       *string                  `json:"userGroupID,omitempty"`
	UserIDs           []*string                `json:"userIDs,omitempty"`
}

func (*UserGroup_SDK) DeepCopy added in v0.0.4

func (in *UserGroup_SDK) DeepCopy() *UserGroup_SDK

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

func (*UserGroup_SDK) DeepCopyInto added in v0.0.4

func (in *UserGroup_SDK) DeepCopyInto(out *UserGroup_SDK)

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

type UserGroupsUpdateStatus

type UserGroupsUpdateStatus struct {
	UserGroupIDsToAdd    []*string `json:"userGroupIDsToAdd,omitempty"`
	UserGroupIDsToRemove []*string `json:"userGroupIDsToRemove,omitempty"`
}

The status of the user group update.

func (*UserGroupsUpdateStatus) DeepCopy

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

func (*UserGroupsUpdateStatus) DeepCopyInto

func (in *UserGroupsUpdateStatus) DeepCopyInto(out *UserGroupsUpdateStatus)

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

type UserList added in v0.0.4

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

UserList contains a list of User +kubebuilder:object:root=true

func (*UserList) DeepCopy added in v0.0.4

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto added in v0.0.4

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject added in v0.0.4

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

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

type UserSpec added in v0.0.4

type UserSpec struct {

	// Access permissions string used for this user.
	// +kubebuilder:validation:Required
	AccessString *string `json:"accessString"`
	// The current supported value is Redis.
	// +kubebuilder:validation:Required
	Engine *string `json:"engine"`
	// Indicates a password is not required for this user.
	NoPasswordRequired *bool `json:"noPasswordRequired,omitempty"`
	// Passwords used for this user. You can create up to two passwords for each
	// user.
	Passwords []*ackv1alpha1.SecretKeyReference `json:"passwords,omitempty"`
	// A list of tags to be added to this resource. A tag is a key-value pair. A
	// tag key must be accompanied by a tag value, although null is accepted.
	Tags []*Tag `json:"tags,omitempty"`
	// The ID of the user.
	// +kubebuilder:validation:Required
	UserID *string `json:"userID"`
	// The username of the user.
	// +kubebuilder:validation:Required
	UserName *string `json:"userName"`
}

func (*UserSpec) DeepCopy added in v0.0.4

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto added in v0.0.4

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

type UserStatus added in v0.0.4

type UserStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// Denotes whether the user requires a password to authenticate.
	// +kubebuilder:validation:Optional
	Authentication *Authentication `json:"authentication,omitempty"`
	// Access permissions string used for this user.
	// +kubebuilder:validation:Optional
	ExpandedAccessString *string `json:"expandedAccessString,omitempty"`
	// Access permissions string used for this user.
	// +kubebuilder:validation:Optional
	LastRequestedAccessString *string `json:"lastRequestedAccessString,omitempty"`
	// The minimum engine version required, which is Redis 6.0
	// +kubebuilder:validation:Optional
	MinimumEngineVersion *string `json:"minimumEngineVersion,omitempty"`
	// Indicates the user status. Can be "active", "modifying" or "deleting".
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty"`
	// Returns a list of the user group IDs the user belongs to.
	// +kubebuilder:validation:Optional
	UserGroupIDs []*string `json:"userGroupIDs,omitempty"`
}

UserStatus defines the observed state of User

func (*UserStatus) DeepCopy added in v0.0.4

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto added in v0.0.4

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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

type User_SDK added in v0.0.4

type User_SDK struct {
	ARN          *string `json:"arn,omitempty"`
	AccessString *string `json:"accessString,omitempty"`
	// Indicates whether the user requires a password to authenticate.
	Authentication       *Authentication `json:"authentication,omitempty"`
	Engine               *string         `json:"engine,omitempty"`
	MinimumEngineVersion *string         `json:"minimumEngineVersion,omitempty"`
	Status               *string         `json:"status,omitempty"`
	UserGroupIDs         []*string       `json:"userGroupIDs,omitempty"`
	UserID               *string         `json:"userID,omitempty"`
	UserName             *string         `json:"userName,omitempty"`
}

func (*User_SDK) DeepCopy added in v0.0.4

func (in *User_SDK) DeepCopy() *User_SDK

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

func (*User_SDK) DeepCopyInto added in v0.0.4

func (in *User_SDK) DeepCopyInto(out *User_SDK)

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