v1alpha1

package
v0.0.0-...-c519259 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

v1alpha1 contains API types that extend the Crossplane API. +kubebuilder:object:generate=true +groupName=xcomposite.crossplane.giantswarm.io +versionName=v1alpha1

Index

Constants

View Source
const (
	XRDGroup   = "xcomposite.crossplane.giantswarm.io"
	XRDVersion = "v1alpha1"
)

Package type metadata.

Variables

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

	// 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
)
View Source
var (
	RCCWithRegionLookupKind      = "RCCWithRegionLookup"
	RCCWithRegionLookupGroupKind = schema.GroupKind{
		Group: XRDGroup,
		Kind:  RCCWithRegionLookupKind,
	}.String()
	RCCWithRegionLookupKindAPIVersion   = RCCWithRegionLookupKind + "." + GroupVersion.String()
	RCCWithRegionLookupGroupVersionKind = GroupVersion.WithKind(RCCWithRegionLookupKind)
)

Repository type metadata.

View Source
var (
	RdsCacheClusterKind      = "RdsCacheCluster"
	RdsCacheClusterGroupKind = schema.GroupKind{
		Group: XRDGroup,
		Kind:  RdsCacheClusterKind,
	}.String()
	RdsCacheClusterKindAPIVersion   = RdsCacheClusterKind + "." + GroupVersion.String()
	RdsCacheClusterGroupVersionKind = GroupVersion.WithKind(RdsCacheClusterKind)
)

Repository type metadata.

Functions

This section is empty.

Types

type ClusterDiscovery

type ClusterDiscovery struct {
	// Name is the name of the cluster to discover
	//
	// +required
	Name string `json:"name"`

	// Namespace is the namespace of the cluster to discover
	//
	// +required
	Namespace string `json:"namespace"`

	// RemoteNamespace is the namespace on the remote cluster to
	// apply secrets into. If not specified, the default namespace
	// is used.
	//
	// +optional
	// +default="default"
	RemoteNamespace string `json:"remoteNamespace"`
}

func (*ClusterDiscovery) DeepCopy

func (in *ClusterDiscovery) DeepCopy() *ClusterDiscovery

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

func (*ClusterDiscovery) DeepCopyInto

func (in *ClusterDiscovery) DeepCopyInto(out *ClusterDiscovery)

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

type RCCWithRegionLookup

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

	Spec   RCCWithRegionLookupSpec   `json:"spec"`
	Status RCCWithRegionLookupStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:storageversion +genclient +genclient:nonNamespaced

+kubebuilder:resource:scope=Cluster,categories=crossplane +kubebuilder:subresource:status +kubebuilder:resource:shortName=rccwrl +crossbuilder:generate:xrd:claimNames:kind=RCCWithRegionLookupClaim,plural=rccwithregionlookupclaims +crossbuilder:generate:xrd:defaultCompositionRef:name=rcc-with-region-lookup +crossbuilder:generate:xrd:enforcedCompositionRef:name=rcc-with-region-lookup

func (*RCCWithRegionLookup) DeepCopy

func (in *RCCWithRegionLookup) DeepCopy() *RCCWithRegionLookup

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

func (*RCCWithRegionLookup) DeepCopyInto

func (in *RCCWithRegionLookup) DeepCopyInto(out *RCCWithRegionLookup)

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

func (*RCCWithRegionLookup) DeepCopyObject

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

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

type RCCWithRegionLookupList

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

+kubebuilder:object:root=true

func (*RCCWithRegionLookupList) DeepCopy

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

func (*RCCWithRegionLookupList) DeepCopyInto

func (in *RCCWithRegionLookupList) DeepCopyInto(out *RCCWithRegionLookupList)

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

func (*RCCWithRegionLookupList) DeepCopyObject

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

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

type RCCWithRegionLookupSpec

type RCCWithRegionLookupSpec struct {
	xpv1.ResourceSpec `json:",inline"`

	// ClusterDiscovery is the reference to the cluster to discover
	//
	// +required
	ClusterDiscovery ClusterDiscovery `json:"clusterDiscovery"`

	// KubernetesProviderConfig
	//
	// +required
	KubernetesProviderConfig *xpv1.Reference `json:"kubernetesProviderConfig"`

	// ManagementClusterDiscovery is the reference to the management cluster
	//
	// +required
	ManagementClusterDiscovery ClusterDiscovery `json:"managementClusterDiscovery"`

	// RdsCacheClusterSpec is the spec for the RDS Cache Cluster
	//
	// +required
	RdsCacheClusterParameters RdsCacheClusterParameters `json:"rdsCacheClusterParameters"`
}

RCCWithRegionLookupSpec contains the structure required for building the infrastructure for an RDS + Elasticache Cluster.

func (*RCCWithRegionLookupSpec) DeepCopy

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

func (*RCCWithRegionLookupSpec) DeepCopyInto

func (in *RCCWithRegionLookupSpec) DeepCopyInto(out *RCCWithRegionLookupSpec)

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

type RCCWithRegionLookupStatus

type RCCWithRegionLookupStatus struct {
	xpv1.ConditionedStatus `json:",inline"`

	// AvailabilityZones is the list of availability zones to be used by the cluster
	//
	// +optional
	AvailabilityZones []string `json:"availabilityZones,omitempty"`

	// CacheClusterEndpoints is a list of endpoints of the Elasticache clusters
	// when the cache is configured in cluster mode
	//
	// +optional
	CacheClusterEndpoints []string `json:"cacheClusterEndpoints,omitempty"`

	// CacheConnectionSecret is the secret containing the connection details for
	// the Elasticache replication group
	//
	// +optional
	CacheConnectionSecret string `json:"cacheConnectionSecret,omitempty"`

	// CacheEndpoint is the endpoint of the Elasticache replication group
	//
	// +optional
	CacheEndpoint string `json:"cacheEndpoint,omitempty"`

	// CacheGlobalConnectionSecret is the name of the global connection secret for the
	// Elasticache cluster
	//
	// +optional
	CacheGlobalConnectionSecret string `json:"cacheGlobalConnectionSecret,omitempty"`

	// CacheGlobalEndpoint is the global (RW) endpoint of the Elasticache
	// global replication group
	//
	// +optional
	CacheGlobalEndpoint string `json:"cacheGlobalEndpoint,omitempty"`

	// CacheGlobalReaderEndpoint is the global (RO) endpoint of the Elasticache
	// global replication group
	//
	// +optional
	CacheGlobalReaderEndpoint string `json:"cacheGlobalReaderEndpoint,omitempty"`

	// CachePort is the port of the Elasticache
	//
	// +optional
	CachePort int `json:"cachePort,omitempty"`

	// CacheReaderEndpoint is the reader endpoint of the Elasticache replication
	// group
	//
	// +optional
	CacheReaderEndpoint string `json:"cacheReaderEndpoint,omitempty"`

	// CacheSubnets is the list of subnets to be used by ElasticSearch
	//
	// +optional
	CacheSubnets []string `json:"cacheSubnets,omitempty"`

	// Region for the management cluster
	//
	// +optional
	McRegion string `json:"mcregion,omitempty"`

	// Is the composition complete
	//
	// +optional
	Ready bool `json:"ready,omitempty"`

	// Region is the region in which the resources are created
	//
	// +optional
	Region string `json:"region,omitempty"`

	// RdsConnectionSecret is the secret containing the connection details
	// for the database
	//
	// +optional
	RdsConnectionSecret string `json:"rdsConnectionSecret,omitempty"`

	// RdsEndpoint is the endpoint of the database
	//
	// +optional
	RdsEndpoint string `json:"rdsEndpoint,omitempty"`

	// RdsReaderEndpoint is the reader endpoint of the database
	//
	// +optional
	RdsReaderEndpoint string `json:"rdsReaderEndpoint,omitempty"`

	// RdsPort is the port of the database
	//
	// +optional
	RdsPort int `json:"rdsPort,omitempty"`

	// RdsSubnets is the list of subnets to be used by the database
	//
	// +optional
	RdsSubnets []string `json:"rdsSubnets,omitempty"`

	// The API server endpoint for the tenant cluster
	//
	// +optional
	TenantApiServerEndpoint string `json:"tenantApiServerEndpoint,omitempty"`

	// Vpc is a VPC configuration to bind the cluster to
	//
	// +optional
	Vpc nd.AwsVpc `json:"vpc,omitempty"`
}

func (*RCCWithRegionLookupStatus) DeepCopy

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

func (*RCCWithRegionLookupStatus) DeepCopyInto

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

type RdsCacheCluster

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

	Spec   RdsCacheClusterSpec `json:"spec"`
	Status RdsClusterStatus    `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:storageversion +genclient +genclient:nonNamespaced

+kubebuilder:resource:scope=Cluster,categories=crossplane +kubebuilder:subresource:status +kubebuilder:resource:shortName=rdscc +crossbuilder:generate:xrd:claimNames:kind=RdsCacheClusterClaim,plural=rdscacheclusterclaims +crossbuilder:generate:xrd:defaultCompositionRef:name=rds-cache-cluster +crossbuilder:generate:xrd:enforcedCompositionRef:name=rds-cache-cluster

func (*RdsCacheCluster) DeepCopy

func (in *RdsCacheCluster) DeepCopy() *RdsCacheCluster

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

func (*RdsCacheCluster) DeepCopyInto

func (in *RdsCacheCluster) DeepCopyInto(out *RdsCacheCluster)

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

func (*RdsCacheCluster) DeepCopyObject

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

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

type RdsCacheClusterList

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

+kubebuilder:object:root=true

func (*RdsCacheClusterList) DeepCopy

func (in *RdsCacheClusterList) DeepCopy() *RdsCacheClusterList

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

func (*RdsCacheClusterList) DeepCopyInto

func (in *RdsCacheClusterList) DeepCopyInto(out *RdsCacheClusterList)

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

func (*RdsCacheClusterList) DeepCopyObject

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

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

type RdsCacheClusterParameters

type RdsCacheClusterParameters struct {
	// Cache defines the cache settings
	//
	// +required
	Cache xcache.ReplicationGroup `json:"cache"`

	// Database defines the database settings
	//
	// +required
	Database xdb.ClusterParameters `json:"database"`

	// Eso is the configuration for the external secrets operator
	//
	// +optional
	Eso *eso.Eso `json:"eso,omitempty"`

	// SubnetGroupIndexes is a map of service name to subnet set indexes
	//
	// +required
	SubnetGroupIndexes SubnetGroupIndexes `json:"subnetGroupIndexes,omitempty"`

	// Vpc defines the VPC settings
	//
	// +required
	Vpc xnet.PeeredVpcNetworkParameters `json:"vpc"`
}

RdsCacheClusterSpec contains the structure required for building the infrastructure for an RDS + Elasticache Cluster.

func (*RdsCacheClusterParameters) DeepCopy

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

func (*RdsCacheClusterParameters) DeepCopyInto

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

type RdsCacheClusterSpec

type RdsCacheClusterSpec struct {
	xpv1.ResourceSpec `json:",inline"`

	// AvailabilityZones is the list of availability zones to be used by the cluster
	//
	// +required
	// +kubebuilder:validation:MinItems=3
	// +kubebuilder:validation:MaxItems=3
	AvailabilityZones []string `json:"availabilityZones"`

	// KubernetesProviderConfig
	//
	// +required
	KubernetesProviderConfig *xpv1.Reference `json:"kubernetesProviderConfig"`

	// Region is the region in which this collection will be created
	//
	// +required
	Region string `json:"region"`

	RdsCacheClusterParameters `json:",inline"`
}

func (*RdsCacheClusterSpec) DeepCopy

func (in *RdsCacheClusterSpec) DeepCopy() *RdsCacheClusterSpec

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

func (*RdsCacheClusterSpec) DeepCopyInto

func (in *RdsCacheClusterSpec) DeepCopyInto(out *RdsCacheClusterSpec)

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

type RdsClusterStatus

type RdsClusterStatus struct {
	xpv1.ConditionedStatus `json:",inline"`

	// CacheClusterEndpoints is a list of endpoints of the Elasticache clusters
	// when the cache is configured in cluster mode
	//
	// +optional
	CacheClusterEndpoints []string `json:"cacheClusterEndpoints,omitempty"`

	// CacheConnectionSecret is the secret containing the connection details for
	// the Elasticache replication group
	//
	// +optional
	CacheConnectionSecret string `json:"cacheConnectionSecret,omitempty"`

	// CacheEndpoint is the endpoint of the Elasticache replication group
	//
	// +optional
	CacheEndpoint string `json:"cacheEndpoint,omitempty"`

	// CacheGlobalConnectionSecret is the secret containing the connection
	// details for the global Elasticache replication group
	//
	// +optional
	CacheGlobalConnectionSecret string `json:"cacheGlobalConnectionSecret,omitempty"`

	// CacheGlobalEndpoint is the global (RW) endpoint of the Elasticache
	// global replication group
	//
	// +optional
	CacheGlobalEndpoint string `json:"cacheGlobalEndpoint,omitempty"`

	// CacheGlobalReaderEndpoint is the global (RO) endpoint of the Elasticache
	// global replication group
	//
	// +optional
	CacheGlobalReaderEndpoint string `json:"cacheGlobalReaderEndpoint,omitempty"`

	// CachePort is the port of the Elasticache
	//
	// +optional
	CachePort int `json:"cachePort,omitempty"`

	// CacheReaderEndpoint is the reader endpoint of the Elasticache replication
	// group
	//
	// +optional
	CacheReaderEndpoint string `json:"cacheReaderEndpoint,omitempty"`

	// CacheSubnets is the list of subnets to be used by ElasticSearch
	//
	// +optional
	CacheSubnets []string `json:"cacheSubnets,omitempty"`

	// Is the composition complete
	//
	// +optional
	Ready bool `json:"ready,omitempty"`

	// RdsConnectionSecret is the secret containing the connection details
	// for the database
	//
	// +optional
	RdsConnectionSecret string `json:"rdsConnectionSecret,omitempty"`

	// RdsEndpoint is the endpoint of the database
	//
	// +optional
	RdsEndpoint string `json:"rdsEndpoint,omitempty"`

	// RdsReaderEndpoint is the reader endpoint of the database
	//
	// +optional
	RdsReaderEndpoint string `json:"rdsReaderEndpoint,omitempty"`

	// RdsPort is the port of the database
	//
	// +optional
	RdsPort int `json:"rdsPort,omitempty"`

	// RdsSubnets is the list of subnets to be used by the database
	//
	// +optional
	RdsSubnets []string `json:"rdsSubnets,omitempty"`

	// Vpc is a VPC configuration to bind the cluster to
	//
	// +optional
	Vpc nd.AwsVpc `json:"vpc,omitempty"`
}

RdsClusterStatus defines the observed state of RdsCluster

func (*RdsClusterStatus) DeepCopy

func (in *RdsClusterStatus) DeepCopy() *RdsClusterStatus

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

func (*RdsClusterStatus) DeepCopyInto

func (in *RdsClusterStatus) DeepCopyInto(out *RdsClusterStatus)

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

type SubnetGroupIndexes

type SubnetGroupIndexes struct {
	// Database is the subnet group index to use for the database
	//
	// +required
	Database int `json:"database"`

	// Cache is the subnet group index to use for the cache
	//
	// +required
	Cache int `json:"cache"`
}

func (*SubnetGroupIndexes) DeepCopy

func (in *SubnetGroupIndexes) DeepCopy() *SubnetGroupIndexes

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

func (*SubnetGroupIndexes) DeepCopyInto

func (in *SubnetGroupIndexes) DeepCopyInto(out *SubnetGroupIndexes)

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