v1alpha1

package
v0.1.1-hotplug-test Latest Latest
Warning

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

Go to latest
Published: Sep 17, 2024 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

Package v1alpha1 contains the v1alpha1 group DBaaS Mongo resources of the IONOS Cloud provider. +kubebuilder:object:generate=true +groupName=dbaas.mongo.ionoscloud.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	Group   = "dbaas.mongo.ionoscloud.crossplane.io"
	Version = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	MongoClusterKind             = reflect.TypeOf(MongoCluster{}).Name()
	MongoClusterGroupKind        = schema.GroupKind{Group: Group, Kind: MongoClusterKind}.String()
	MongoClusterKindAPIVersion   = MongoClusterKind + "." + SchemeGroupVersion.String()
	MongoClusterGroupVersionKind = SchemeGroupVersion.WithKind(MongoClusterKind)
)

Cluster type metadata.

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	MongoUserKind             = reflect.TypeOf(MongoUser{}).Name()
	MongoUserGroupKind        = schema.GroupKind{Group: Group, Kind: MongoUserKind}.String()
	MongoUserKindAPIVersion   = MongoUserKind + "." + SchemeGroupVersion.String()
	MongoUserGroupVersionKind = SchemeGroupVersion.WithKind(MongoUserKind)
)

Cluster type metadata.

Functions

func ExtractMongoClusterID

func ExtractMongoClusterID() reference.ExtractValueFn

ExtractMongoClusterID returns the externalName of a referenced Cluster.

Types

type BackupProperties

type BackupProperties struct {
	// The location where the cluster backups will be stored. If not set, the backup is stored in the nearest location of the cluster.
	Location string `json:"location,omitempty"`
}

BackupProperties struct matches sdk struct

func (*BackupProperties) DeepCopy

func (in *BackupProperties) DeepCopy() *BackupProperties

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

func (*BackupProperties) DeepCopyInto

func (in *BackupProperties) DeepCopyInto(out *BackupProperties)

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

type BiConnectorProperties

type BiConnectorProperties struct {
	// The MongoDB Connector for Business Intelligence allows you to query a MongoDB database using SQL commands to aid in data analysis.
	Enabled bool `json:"enabled,omitempty"`
	// The host where this new BI Connector is installed.
	Host string `json:"host,omitempty"`
	// Port number used when connecting to this new BI Connector.
	Port string `json:"port,omitempty"`
}

BiConnectorProperties struct for BiConnectorProperties

func (*BiConnectorProperties) DeepCopy

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

func (*BiConnectorProperties) DeepCopyInto

func (in *BiConnectorProperties) DeepCopyInto(out *BiConnectorProperties)

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

type ClusterConfig

type ClusterConfig struct {
	// ClusterID is the ID of the Cluster on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/dbaas/mongo/v1alpha1.MongoCluster
	// +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/dbaas/mongo/v1alpha1.ExtractMongoClusterID()
	ClusterID string `json:"ClusterId,omitempty"`
	// ClusterIDRef references to a Cluster to retrieve its ID.
	//
	// +optional
	// +immutable
	ClusterIDRef *xpv1.Reference `json:"ClusterIdRef,omitempty"`
	// ClusterIDSelector selects reference to a Cluster to retrieve its ClusterID.
	//
	// +optional
	ClusterIDSelector *xpv1.Selector `json:"ClusterIdSelector,omitempty"`
}

ClusterConfig is used by resources that need to link mongo clusters via id or via reference.

func (*ClusterConfig) DeepCopy

func (in *ClusterConfig) DeepCopy() *ClusterConfig

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

func (*ClusterConfig) DeepCopyInto

func (in *ClusterConfig) DeepCopyInto(out *ClusterConfig)

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

type ClusterObservation

type ClusterObservation struct {
	ClusterID string `json:"clusterId,omitempty"`
	State     string `json:"state,omitempty"`
}

ClusterObservation are the observable fields of a Cluster.

func (*ClusterObservation) DeepCopy

func (in *ClusterObservation) DeepCopy() *ClusterObservation

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

func (*ClusterObservation) DeepCopyInto

func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)

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

type ClusterParameters

type ClusterParameters struct {
	// The cluster type, either `replicaset` or `sharded-cluster`.
	//
	// +kubebuilder:validation:Optional
	Type string `json:"type,omitempty"`
	// The unique ID of the template, which specifies the number of cores, storage size, and memory. You cannot downgrade to a smaller template or minor edition (e.g. from business to playground). To get a list of all templates to confirm the changes use the /templates endpoint.
	//
	// +kubebuilder:validation:Optional
	TemplateID string `json:"templateID,omitempty"`
	// The total number of shards in the cluster.
	//
	// +kubebuilder:validation:Optional
	Shards int32 `json:"shards,omitempty"`
	// The MongoDB version of your cluster.
	//
	// +kubebuilder:validation:Required
	MongoDBVersion string `json:"mongoDBVersion"`
	// The cluster edition.
	Edition string `json:"edition,omitempty"`
	// The total number of instances in the cluster (one master and n-1 standbys).
	//
	// +kubebuilder:validation:Required
	Instances int32 `json:"instances"`
	// The number of CPU cores per instance.
	//
	// +kubebuilder:validation:Optional
	Cores int32 `json:"cores"`
	// The amount of memory per instance in megabytes. Has to be a multiple of 1024.
	//
	// +kubebuilder:validation:MultipleOf=1024
	// +kubebuilder:validation:Optional
	RAM int32 `json:"ram"`
	// The amount of storage per instance in megabytes.
	//
	// +kubebuilder:validation:Optional
	StorageSize int32 `json:"storageSize"`
	// The storage type used in your cluster.
	// Possible values: HDD, SSD Standard, SSD Premium
	//
	// +kubebuilder:validation:Optional
	StorageType string `json:"storageType"`
	// Connection - details about the network connection (datacenter, lan, CIDR) for your cluster.
	//
	// +kubebuilder:validation:MaxItems=1
	// +kubebuilder:validation:MinItems=1
	// +kubebuilder:validation:Required
	Connections []Connection `json:"connections"`
	// Location - The physical location where the cluster will be created. This is the location where all your instances will be located. This property is immutable.
	//
	// +immutable
	// +kubebuilder:validation:Required
	Location string `json:"location"`
	// The friendly name of your cluster.
	//
	// +kubebuilder:validation:Required
	DisplayName string `json:"displayName"`
	// +kubebuilder:validation:Optional
	MaintenanceWindow MaintenanceWindow `json:"maintenanceWindow,omitempty"`
	// SynchronizationMode Represents different modes of replication.
	//
	// +kubebuilder:validation:Enum=ASYNCHRONOUS;STRICTLY_SYNCHRONOUS;SYNCHRONOUS
	// +kubebuilder:validation:Required
	SynchronizationMode string `json:"synchronizationMode"`
	// +kubebuilder:validation:Optional
	FromBackup CreateRestoreRequest `json:"fromBackup,omitempty"`
	// The MongoDB Connector for Business Intelligence allows you to query a MongoDB database using SQL commands to aid in data analysis.
	//
	// +kubebuilder:validation:Optional
	BiConnector BiConnectorProperties `json:"biConnector,omitempty"`
	// The location where the cluster backups will be stored. If not set, the backup is stored in the nearest location of the cluster.
	Backup BackupProperties `json:"backup,omitempty"`
}

ClusterParameters are the observable fields of a Cluster. Required fields in order to create a DBaaS Mongo Cluster: MongoDBVersion, Instances, Connection (Datacenter ID or Reference, Lan ID and CIDR), Location (in sync with Datacenter), DisplayName, Credentials, Synchronization Mode.

func (*ClusterParameters) DeepCopy

func (in *ClusterParameters) DeepCopy() *ClusterParameters

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

func (*ClusterParameters) DeepCopyInto

func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)

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

type ClusterSpec

type ClusterSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       ClusterParameters `json:"forProvider"`
}

A ClusterSpec defines the desired state of a Cluster.

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ClusterStatus

type ClusterStatus struct {
	xpv1.ResourceStatus `json:",inline"`
	AtProvider          ClusterObservation `json:"atProvider,omitempty"`
}

A ClusterStatus represents the observed state of a Cluster.

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

type Connection

type Connection struct {
	// DatacenterConfig contains information about the datacenter resource.
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// LanConfig contains information about the lan resource.
	//
	// +kubebuilder:validation:Required
	LanCfg LanConfig `json:"lanConfig"`
	// The IP and subnet for your cluster. Note: the following IP ranges are unavailable: 10.233.64.0/18 10.233.0.0/18 10.233.114.0/24.
	//
	// +kubebuilder:validation:Required
	CidrList []string `json:"cidr"`
}

Connection Details about the network connection for your cluster.

func (*Connection) DeepCopy

func (in *Connection) DeepCopy() *Connection

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

func (*Connection) DeepCopyInto

func (in *Connection) DeepCopyInto(out *Connection)

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

type CreateRestoreRequest

type CreateRestoreRequest struct {
	// The unique ID of the snapshot you want to restore.
	//
	// +kubebuilder:validation:Required
	SnapshotID string `json:"backupId"`
	// If this value is supplied as ISO 8601 timestamp, the backup will be replayed up until the given timestamp.
	// If empty, the backup will be applied completely.
	RecoveryTargetTime string `json:"recoveryTargetTime,omitempty"`
}

CreateRestoreRequest The restore request.

func (*CreateRestoreRequest) DeepCopy

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

func (*CreateRestoreRequest) DeepCopyInto

func (in *CreateRestoreRequest) DeepCopyInto(out *CreateRestoreRequest)

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

type DBUser

type DBUser struct {
	// The username for the mongo user.
	// Some system usernames are restricted (e.g. \"mongo\", \"admin\", \"standby\").
	// Password must have a minimum length o 10
	//
	// +kubebuilder:validation:Optional
	Username string `json:"username"`
	// +kubebuilder:validation:Optional
	Password string `json:"password"`
	// Source of the provider credentials.
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum=None;Secret;InjectedIdentity;Environment;Filesystem
	Source                         xpv1.CredentialsSource `json:"source"`
	xpv1.CommonCredentialSelectors `json:",inline"`
}

DBUser Credentials for the database user to be created.

func (*DBUser) DeepCopy

func (in *DBUser) DeepCopy() *DBUser

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

func (*DBUser) DeepCopyInto

func (in *DBUser) DeepCopyInto(out *DBUser)

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

type DatacenterConfig

type DatacenterConfig struct {
	// DatacenterID is the ID of the Datacenter on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.Datacenter
	// +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractDatacenterID()
	DatacenterID string `json:"datacenterId,omitempty"`
	// DatacenterIDRef references to a Datacenter to retrieve its ID.
	//
	// +optional
	// +immutable
	DatacenterIDRef *xpv1.Reference `json:"datacenterIdRef,omitempty"`
	// DatacenterIDSelector selects reference to a Datacenter to retrieve its DatacenterID.
	//
	// +optional
	DatacenterIDSelector *xpv1.Selector `json:"datacenterIdSelector,omitempty"`
}

DatacenterConfig is used by resources that need to link datacenters via id or via reference.

func (*DatacenterConfig) DeepCopy

func (in *DatacenterConfig) DeepCopy() *DatacenterConfig

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

func (*DatacenterConfig) DeepCopyInto

func (in *DatacenterConfig) DeepCopyInto(out *DatacenterConfig)

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

type LanConfig

type LanConfig struct {
	// LanID is the ID of the Lan on which the cluster will connect to.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.Lan
	// +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractLanID()
	LanID string `json:"lanId,omitempty"`
	// LanIDRef references to a Lan to retrieve its ID.
	//
	// +optional
	// +immutable
	LanIDRef *xpv1.Reference `json:"lanIdRef,omitempty"`
	// LanIDSelector selects reference to a Lan to retrieve its LanID.
	//
	// +optional
	LanIDSelector *xpv1.Selector `json:"lanIdSelector,omitempty"`
}

LanConfig is used by resources that need to link lans via id or via reference.

func (*LanConfig) DeepCopy

func (in *LanConfig) DeepCopy() *LanConfig

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

func (*LanConfig) DeepCopyInto

func (in *LanConfig) DeepCopyInto(out *LanConfig)

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

type MaintenanceWindow

type MaintenanceWindow struct {
	Time string `json:"time,omitempty"`
	// DayOfTheWeek The name of the week day.
	DayOfTheWeek string `json:"dayOfTheWeek,omitempty"`
}

MaintenanceWindow A weekly 4 hour-long window, during which maintenance might occur.

func (*MaintenanceWindow) DeepCopy

func (in *MaintenanceWindow) DeepCopy() *MaintenanceWindow

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

func (*MaintenanceWindow) DeepCopyInto

func (in *MaintenanceWindow) DeepCopyInto(out *MaintenanceWindow)

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

type MongoCluster

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

	Spec   ClusterSpec   `json:"spec"`
	Status ClusterStatus `json:"status,omitempty"`
}

A MongoCluster is an example API type. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="CLUSTER ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="CLUSTER NAME",priority=1,type="string",JSONPath=".spec.forProvider.displayName" +kubebuilder:printcolumn:name="DATACENTER ID",priority=1,type="string",JSONPath=".spec.forProvider.connections[0].datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="LAN ID",priority=1,type="string",JSONPath=".spec.forProvider.connections[0].lanConfig.lanId" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud},shortName=mc;mongoc;mongocluster

func (*MongoCluster) DeepCopy

func (in *MongoCluster) DeepCopy() *MongoCluster

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

func (*MongoCluster) DeepCopyInto

func (in *MongoCluster) DeepCopyInto(out *MongoCluster)

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

func (*MongoCluster) DeepCopyObject

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

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

func (*MongoCluster) GetCondition

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

GetCondition of this MongoCluster.

func (*MongoCluster) GetDeletionPolicy

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

GetDeletionPolicy of this MongoCluster.

func (*MongoCluster) GetManagementPolicies

func (mg *MongoCluster) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this MongoCluster.

func (*MongoCluster) GetProviderConfigReference

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

GetProviderConfigReference of this MongoCluster.

func (*MongoCluster) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this MongoCluster.

func (*MongoCluster) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this MongoCluster.

func (*MongoCluster) ResolveReferences

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

ResolveReferences of this MongoCluster.

func (*MongoCluster) SetConditions

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

SetConditions of this MongoCluster.

func (*MongoCluster) SetDeletionPolicy

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

SetDeletionPolicy of this MongoCluster.

func (*MongoCluster) SetManagementPolicies

func (mg *MongoCluster) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this MongoCluster.

func (*MongoCluster) SetProviderConfigReference

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

SetProviderConfigReference of this MongoCluster.

func (*MongoCluster) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this MongoCluster.

func (*MongoCluster) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this MongoCluster.

type MongoClusterList

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

MongoClusterList contains a list of Cluster

func (*MongoClusterList) DeepCopy

func (in *MongoClusterList) DeepCopy() *MongoClusterList

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

func (*MongoClusterList) DeepCopyInto

func (in *MongoClusterList) DeepCopyInto(out *MongoClusterList)

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

func (*MongoClusterList) DeepCopyObject

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

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

func (*MongoClusterList) GetItems

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

GetItems of this MongoClusterList.

type MongoUser

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

	Spec   MongoUserSpec `json:"spec"`
	Status UserStatus    `json:"status,omitempty"`
}

A MongoUser is an example API type. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="USER ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="USERNAME",priority=1,type="string",JSONPath=".spec.forProvider.credentials.username" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*MongoUser) DeepCopy

func (in *MongoUser) DeepCopy() *MongoUser

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

func (*MongoUser) DeepCopyInto

func (in *MongoUser) DeepCopyInto(out *MongoUser)

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

func (*MongoUser) DeepCopyObject

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

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

func (*MongoUser) GetCondition

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

GetCondition of this MongoUser.

func (*MongoUser) GetDeletionPolicy

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

GetDeletionPolicy of this MongoUser.

func (*MongoUser) GetManagementPolicies

func (mg *MongoUser) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this MongoUser.

func (*MongoUser) GetProviderConfigReference

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

GetProviderConfigReference of this MongoUser.

func (*MongoUser) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this MongoUser.

func (*MongoUser) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this MongoUser.

func (*MongoUser) ResolveReferences

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

ResolveReferences of this MongoUser.

func (*MongoUser) SetConditions

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

SetConditions of this MongoUser.

func (*MongoUser) SetDeletionPolicy

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

SetDeletionPolicy of this MongoUser.

func (*MongoUser) SetManagementPolicies

func (mg *MongoUser) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this MongoUser.

func (*MongoUser) SetProviderConfigReference

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

SetProviderConfigReference of this MongoUser.

func (*MongoUser) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this MongoUser.

func (*MongoUser) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this MongoUser.

type MongoUserList

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

MongoUserList contains a list of User

func (*MongoUserList) DeepCopy

func (in *MongoUserList) DeepCopy() *MongoUserList

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

func (*MongoUserList) DeepCopyInto

func (in *MongoUserList) DeepCopyInto(out *MongoUserList)

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

func (*MongoUserList) DeepCopyObject

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

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

func (*MongoUserList) GetItems

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

GetItems of this MongoUserList.

type MongoUserParameters

type MongoUserParameters struct {
	// +kubebuilder:validation:Required
	//
	ClusterCfg ClusterConfig `json:"clusterConfig"`
	// Database credentials - either set directly, or as secret/path/env
	//
	// +kubebuilder:validation:Required
	Credentials DBUser `json:"credentials"`

	// A list of mongodb user roles
	//
	// +kubebuilder:validation:Required
	Roles []UserRoles `json:"userRoles,omitempty"`
}

MongoUserParameters are the observable fields of a User. Required fields in order to create a DBaaS User: ClusterConfig, Credentials,

func (*MongoUserParameters) DeepCopy

func (in *MongoUserParameters) DeepCopy() *MongoUserParameters

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

func (*MongoUserParameters) DeepCopyInto

func (in *MongoUserParameters) DeepCopyInto(out *MongoUserParameters)

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

type MongoUserSpec

type MongoUserSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       MongoUserParameters `json:"forProvider"`
}

A MongoUserSpec defines the desired state of a Cluster.

func (*MongoUserSpec) DeepCopy

func (in *MongoUserSpec) DeepCopy() *MongoUserSpec

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

func (*MongoUserSpec) DeepCopyInto

func (in *MongoUserSpec) DeepCopyInto(out *MongoUserSpec)

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

type UserObservation

type UserObservation struct {
	UserID string `json:"userId,omitempty"`
}

UserObservation are the observable fields of a Cluster.

func (*UserObservation) DeepCopy

func (in *UserObservation) DeepCopy() *UserObservation

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

func (*UserObservation) DeepCopyInto

func (in *UserObservation) DeepCopyInto(out *UserObservation)

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

type UserRoles

type UserRoles struct {
	// Role to set for the user
	//
	// +kubebuilder:validation:Required
	Role string `json:"role,omitempty"`
	// Database on which to set the role
	//
	// +kubebuilder:validation:Required
	Database string `json:"database,omitempty"`
}

UserRoles a list of mongodb user role.

func (*UserRoles) DeepCopy

func (in *UserRoles) DeepCopy() *UserRoles

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

func (*UserRoles) DeepCopyInto

func (in *UserRoles) DeepCopyInto(out *UserRoles)

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

type UserStatus

type UserStatus struct {
	xpv1.ResourceStatus `json:",inline"`
	AtProvider          UserObservation `json:"atProvider,omitempty"`
}

A UserStatus represents the observed state of a user.

func (*UserStatus) DeepCopy

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto

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

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