Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the mongodb.com v1 API group +kubebuilder:object:generate=true +groupName=mongodb.com
Index ¶
- Variables
- func LessAD(a, b interface{}) bool
- type AWSProviderConfig
- type Action
- type AdvancedAutoScalingSpec
- type AdvancedDeploymentSpec
- type AdvancedRegionConfig
- type AdvancedReplicationSpec
- type AlertConfiguration
- type AtlasBackupExportSpec
- type AtlasBackupPolicy
- func (in *AtlasBackupPolicy) DeepCopy() *AtlasBackupPolicy
- func (in *AtlasBackupPolicy) DeepCopyInto(out *AtlasBackupPolicy)
- func (in *AtlasBackupPolicy) DeepCopyObject() runtime.Object
- func (in *AtlasBackupPolicy) GetStatus() status.Status
- func (in *AtlasBackupPolicy) UpdateStatus(conditions []status.Condition, options ...status.Option)
- type AtlasBackupPolicyItem
- type AtlasBackupPolicyList
- type AtlasBackupPolicySpec
- type AtlasBackupSchedule
- func (in *AtlasBackupSchedule) DeepCopy() *AtlasBackupSchedule
- func (in *AtlasBackupSchedule) DeepCopyInto(out *AtlasBackupSchedule)
- func (in *AtlasBackupSchedule) DeepCopyObject() runtime.Object
- func (in *AtlasBackupSchedule) GetStatus() status.Status
- func (in *AtlasBackupSchedule) ToAtlas(clusterID, clusterName, replicaSetID string, policy *AtlasBackupPolicy) *mongodbatlas.CloudProviderSnapshotBackupPolicy
- func (in *AtlasBackupSchedule) UpdateStatus(conditions []status.Condition, options ...status.Option)
- type AtlasBackupScheduleList
- type AtlasBackupScheduleSpec
- type AtlasCustomResource
- type AtlasDataFederation
- func (c AtlasDataFederation) AtlasProjectObjectKey() client.ObjectKey
- func (in *AtlasDataFederation) DeepCopy() *AtlasDataFederation
- func (in *AtlasDataFederation) DeepCopyInto(out *AtlasDataFederation)
- func (in *AtlasDataFederation) DeepCopyObject() runtime.Object
- func (c *AtlasDataFederation) GetStatus() status.Status
- func (c *AtlasDataFederation) ToAtlas() (*mongodbatlas.DataFederationInstance, error)
- func (c *AtlasDataFederation) UpdateStatus(conditions []status.Condition, options ...status.Option)
- func (c *AtlasDataFederation) WithAWSCloudProviderConfig(AWSRoleID, S3Bucket string) *AtlasDataFederation
- func (c *AtlasDataFederation) WithAnnotations(annotations map[string]string) *AtlasDataFederation
- func (c *AtlasDataFederation) WithDataProcessingRegion(AWSRegion string) *AtlasDataFederation
- func (c *AtlasDataFederation) WithPrivateEndpoint(endpointID, provider, endpointType string) *AtlasDataFederation
- func (c *AtlasDataFederation) WithStorage(storage *Storage) *AtlasDataFederation
- type AtlasDataFederationList
- type AtlasDatabaseUser
- func (p AtlasDatabaseUser) AtlasProjectObjectKey() client.ObjectKey
- func (p *AtlasDatabaseUser) ClearScopes() *AtlasDatabaseUser
- func (in *AtlasDatabaseUser) DeepCopy() *AtlasDatabaseUser
- func (in *AtlasDatabaseUser) DeepCopyInto(out *AtlasDatabaseUser)
- func (in *AtlasDatabaseUser) DeepCopyObject() runtime.Object
- func (p AtlasDatabaseUser) GetScopes(scopeType ScopeType) []string
- func (p *AtlasDatabaseUser) GetStatus() status.Status
- func (p AtlasDatabaseUser) PasswordSecretObjectKey() *client.ObjectKey
- func (p *AtlasDatabaseUser) ReadPassword(ctx context.Context, kubeClient client.Client) (string, error)
- func (p AtlasDatabaseUser) ToAtlas(ctx context.Context, kubeClient client.Client) (*mongodbatlas.DatabaseUser, error)
- func (p AtlasDatabaseUser) ToAtlasSDK(ctx context.Context, kubeClient client.Client) (*admin.CloudDatabaseUser, error)
- func (p *AtlasDatabaseUser) UpdateStatus(conditions []status.Condition, options ...status.Option)
- func (p *AtlasDatabaseUser) WithAtlasUserName(name string) *AtlasDatabaseUser
- func (p *AtlasDatabaseUser) WithDeleteAfterDate(date string) *AtlasDatabaseUser
- func (p *AtlasDatabaseUser) WithName(name string) *AtlasDatabaseUser
- func (p *AtlasDatabaseUser) WithPasswordSecret(name string) *AtlasDatabaseUser
- func (p *AtlasDatabaseUser) WithRole(roleName, databaseName, collectionName string) *AtlasDatabaseUser
- func (p *AtlasDatabaseUser) WithScope(scopeType ScopeType, name string) *AtlasDatabaseUser
- type AtlasDatabaseUserList
- type AtlasDatabaseUserSpec
- type AtlasDeployment
- func DefaultAWSDeployment(namespace, projectName string) *AtlasDeployment
- func DefaultAwsAdvancedDeployment(namespace, projectName string) *AtlasDeployment
- func DefaultAzureDeployment(namespace, projectName string) *AtlasDeployment
- func DefaultGCPDeployment(namespace, projectName string) *AtlasDeployment
- func NewDefaultAWSServerlessInstance(namespace, projectName string) *AtlasDeployment
- func NewDeployment(namespace, name, nameInAtlas string) *AtlasDeployment
- func (c *AtlasDeployment) AtlasName() string
- func (c AtlasDeployment) AtlasProjectObjectKey() client.ObjectKey
- func (in *AtlasDeployment) DeepCopy() *AtlasDeployment
- func (in *AtlasDeployment) DeepCopyInto(out *AtlasDeployment)
- func (in *AtlasDeployment) DeepCopyObject() runtime.Object
- func (c *AtlasDeployment) GetDeploymentName() string
- func (c *AtlasDeployment) GetReplicationSetID() string
- func (c *AtlasDeployment) GetStatus() status.Status
- func (c *AtlasDeployment) IsAdvancedDeployment() bool
- func (c *AtlasDeployment) IsServerless() bool
- func (c *AtlasDeployment) Lightweight() *AtlasDeployment
- func (c *AtlasDeployment) UpdateStatus(conditions []status.Condition, options ...status.Option)
- func (c *AtlasDeployment) WithAtlasName(name string) *AtlasDeployment
- func (c *AtlasDeployment) WithAutoscalingDisabled() *AtlasDeployment
- func (c *AtlasDeployment) WithBackingProvider(name string) *AtlasDeployment
- func (c *AtlasDeployment) WithBackupScheduleRef(ref common.ResourceRefNamespaced) *AtlasDeployment
- func (c *AtlasDeployment) WithDiskSizeGB(size int) *AtlasDeployment
- func (c *AtlasDeployment) WithInstanceSize(name string) *AtlasDeployment
- func (c *AtlasDeployment) WithName(name string) *AtlasDeployment
- func (c *AtlasDeployment) WithProjectName(projectName string) *AtlasDeployment
- func (c *AtlasDeployment) WithProviderName(name provider.ProviderName) *AtlasDeployment
- func (c *AtlasDeployment) WithRegionName(name string) *AtlasDeployment
- type AtlasDeploymentList
- type AtlasDeploymentSpec
- type AtlasFederatedAuth
- func (f *AtlasFederatedAuth) ConnectionSecretObjectKey() *client.ObjectKey
- func (in *AtlasFederatedAuth) DeepCopy() *AtlasFederatedAuth
- func (in *AtlasFederatedAuth) DeepCopyInto(out *AtlasFederatedAuth)
- func (in *AtlasFederatedAuth) DeepCopyObject() runtime.Object
- func (f *AtlasFederatedAuth) GetStatus() status.Status
- func (f *AtlasFederatedAuth) UpdateStatus(conditions []status.Condition, options ...status.Option)
- type AtlasFederatedAuthList
- type AtlasFederatedAuthSpec
- type AtlasProject
- func (p *AtlasProject) ConnectionSecretObjectKey() *client.ObjectKey
- func (in *AtlasProject) DeepCopy() *AtlasProject
- func (in *AtlasProject) DeepCopyInto(out *AtlasProject)
- func (in *AtlasProject) DeepCopyObject() runtime.Object
- func (p *AtlasProject) GetStatus() status.Status
- func (p AtlasProject) ID() string
- func (p *AtlasProject) UpdateStatus(conditions []status.Condition, options ...status.Option)
- func (p *AtlasProject) WithAnnotations(annotations map[string]string) *AtlasProject
- func (p *AtlasProject) WithAtlasName(name string) *AtlasProject
- func (p *AtlasProject) WithConnectionSecret(name string) *AtlasProject
- func (p *AtlasProject) WithConnectionSecretNamespaced(name, namespace string) *AtlasProject
- func (p *AtlasProject) WithIPAccessList(ipAccess project.IPAccessList) *AtlasProject
- func (p *AtlasProject) WithLabels(labels map[string]string) *AtlasProject
- func (p *AtlasProject) WithMaintenanceWindow(window project.MaintenanceWindow) *AtlasProject
- func (p *AtlasProject) WithName(name string) *AtlasProject
- func (p *AtlasProject) X509SecretObjectKey() *client.ObjectKey
- type AtlasProjectList
- type AtlasProjectSpec
- type AtlasTeam
- func (in *AtlasTeam) DeepCopy() *AtlasTeam
- func (in *AtlasTeam) DeepCopyInto(out *AtlasTeam)
- func (in *AtlasTeam) DeepCopyObject() runtime.Object
- func (in *AtlasTeam) GetStatus() status.Status
- func (in *AtlasTeam) Identifier() interface{}
- func (in *AtlasTeam) ToAtlas() (*mongodbatlas.Team, error)
- func (in *AtlasTeam) UpdateStatus(conditions []status.Condition, options ...status.Option)
- type AtlasTeamList
- type Auditing
- type AutoScalingSpec
- type AwsKms
- type AzureKeyVault
- func (in *AzureKeyVault) DeepCopy() *AzureKeyVault
- func (in *AzureKeyVault) DeepCopyInto(out *AzureKeyVault)
- func (az AzureKeyVault) KeyIdentifier() string
- func (az AzureKeyVault) KeyVaultName() string
- func (az AzureKeyVault) Secret() string
- func (az *AzureKeyVault) SetSecrets(subscriptionID, keyVaultName, keyIdentifier, secret string)
- func (az AzureKeyVault) SubscriptionID() string
- func (az AzureKeyVault) ToAtlas() mongodbatlas.AzureKeyVault
- type BiConnector
- type BiConnectorSpec
- type CloudProviderAccessRole
- type CloudProviderConfig
- type CloudProviderIntegration
- type Collection
- type ComputeSpec
- type ConnectionStrings
- type CopySetting
- type CustomRole
- type CustomZoneMapping
- type DataFederationPE
- type DataFederationSpec
- type DataProcessRegion
- type DataSource
- type Database
- type DeploymentType
- type DiskGB
- type EncryptionAtRest
- type EndpointSpec
- type GCPEndpoint
- type GCPEndpoints
- type GoogleCloudKms
- func (in *GoogleCloudKms) DeepCopy() *GoogleCloudKms
- func (in *GoogleCloudKms) DeepCopyInto(out *GoogleCloudKms)
- func (g GoogleCloudKms) KeyVersionResourceID() string
- func (g GoogleCloudKms) ServiceAccountKey() string
- func (g *GoogleCloudKms) SetSecrets(serviceAccountKey, keyVersionResourceID string)
- func (g GoogleCloudKms) ToAtlas() mongodbatlas.GoogleCloudKms
- type ManagedNamespace
- type Matcher
- type MetricThreshold
- type NetworkPeer
- func (in *NetworkPeer) DeepCopy() *NetworkPeer
- func (in *NetworkPeer) DeepCopyInto(out *NetworkPeer)
- func (in *NetworkPeer) GetContainerRegion() string
- func (in *NetworkPeer) ToAtlas() (*admin.BaseNetworkPeeringConnectionSettings, error)
- func (in *NetworkPeer) ToAtlasPeer() *admin.BaseNetworkPeeringConnectionSettings
- type Notification
- func (in *Notification) DeepCopy() *Notification
- func (in *Notification) DeepCopyInto(out *Notification)
- func (in *Notification) IsEqual(notification admin.AlertsNotificationRootForGroup) bool
- func (in *Notification) SetAPIToken(token string)
- func (in *Notification) SetDatadogAPIKey(token string)
- func (in *Notification) SetFlowdockAPIToken(token string)
- func (in *Notification) SetOpsGenieAPIKey(token string)
- func (in *Notification) SetServiceKey(token string)
- func (in *Notification) SetVictorOpsAPIKey(token string)
- func (in *Notification) SetVictorOpsRoutingKey(token string)
- func (in *Notification) ToAtlas() (*admin.AlertsNotificationRootForGroup, error)
- type PrivateEndpoint
- type PrivateEndpointSpec
- type ProcessArgs
- type ProjectSettings
- type Resource
- type Role
- type RoleAssignment
- type RoleMapping
- type RoleSpec
- type ScopeSpec
- type ScopeType
- type ServerlessBackupOptions
- type ServerlessPrivateEndpoint
- func (in *ServerlessPrivateEndpoint) DeepCopy() *ServerlessPrivateEndpoint
- func (in *ServerlessPrivateEndpoint) DeepCopyInto(out *ServerlessPrivateEndpoint)
- func (in *ServerlessPrivateEndpoint) IsInitialState() bool
- func (in *ServerlessPrivateEndpoint) ToAtlas(providerName provider.ProviderName) *mongodbatlas.ServerlessPrivateEndpointConnection
- type ServerlessProviderSettingsSpec
- type ServerlessSpec
- type Specs
- type Storage
- type Store
- type TagSpec
- type Team
- type TeamRole
- type TeamSpec
- type TeamUser
- type Threshold
- type View
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "atlas.mongodb.com", Version: "v1"} // 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 )
var TrailingZerosRegex = regexp.MustCompile(`\.[0]*$`)
Functions ¶
Types ¶
type AWSProviderConfig ¶
type AWSProviderConfig struct { RoleID string `json:"roleId,omitempty"` TestS3Bucket string `json:"testS3Bucket,omitempty"` }
func (*AWSProviderConfig) DeepCopy ¶
func (in *AWSProviderConfig) DeepCopy() *AWSProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSProviderConfig.
func (*AWSProviderConfig) DeepCopyInto ¶
func (in *AWSProviderConfig) DeepCopyInto(out *AWSProviderConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Action ¶
type Action struct { // Human-readable label that identifies the privilege action. Name string `json:"name"` // List of resources on which you grant the action. Resources []Resource `json:"resources"` }
func (*Action) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Action.
func (*Action) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvancedAutoScalingSpec ¶
type AdvancedAutoScalingSpec struct { // Flag that indicates whether disk auto-scaling is enabled. The default is true. // +optional DiskGB *DiskGB `json:"diskGB,omitempty"` // Collection of settings that configure how a deployment might scale its deployment tier and whether the deployment can scale down. // +optional Compute *ComputeSpec `json:"compute,omitempty"` }
AdvancedAutoScalingSpec configures your deployment to automatically scale its storage
func (*AdvancedAutoScalingSpec) DeepCopy ¶
func (in *AdvancedAutoScalingSpec) DeepCopy() *AdvancedAutoScalingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedAutoScalingSpec.
func (*AdvancedAutoScalingSpec) DeepCopyInto ¶
func (in *AdvancedAutoScalingSpec) DeepCopyInto(out *AdvancedAutoScalingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvancedDeploymentSpec ¶
type AdvancedDeploymentSpec struct { // Applicable only for M10+ deployments. // Flag that indicates if the deployment uses Cloud Backups for backups. // +optional BackupEnabled *bool `json:"backupEnabled,omitempty"` // Configuration of BI Connector for Atlas on this deployment. // The MongoDB Connector for Business Intelligence for Atlas (BI Connector) is only available for M10 and larger deployments. // +optional BiConnector *BiConnectorSpec `json:"biConnector,omitempty"` // Type of the deployment that you want to create. // The parameter is required if replicationSpecs are set or if Global Deployments are deployed. // +kubebuilder:validation:Enum=REPLICASET;SHARDED;GEOSHARDED // +optional ClusterType string `json:"clusterType,omitempty"` // Capacity, in gigabytes, of the host's root volume. // Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). // This value must be a positive integer. // The parameter is required if replicationSpecs are configured. // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=4096 // +optional DiskSizeGB *int `json:"diskSizeGB,omitempty"` // Cloud service provider that offers Encryption at Rest. // +kubebuilder:validation:Enum=AWS;GCP;AZURE;NONE // +optional EncryptionAtRestProvider string `json:"encryptionAtRestProvider,omitempty"` // Collection of key-value pairs that tag and categorize the deployment. // Each key and value has a maximum length of 255 characters. // +optional Labels []common.LabelSpec `json:"labels,omitempty"` // Version of the deployment to deploy. MongoDBMajorVersion string `json:"mongoDBMajorVersion,omitempty"` MongoDBVersion string `json:"mongoDBVersion,omitempty"` // Name of the advanced deployment as it appears in Atlas. // After Atlas creates the deployment, you can't change its name. // Can only contain ASCII letters, numbers, and hyphens. // +kubebuilder:validation:Required // +kubebuilder:validation:Pattern:=^[a-zA-Z0-9][a-zA-Z0-9-]*$ Name string `json:"name,omitempty"` // Flag that indicates whether the deployment should be paused. Paused *bool `json:"paused,omitempty"` // Flag that indicates the deployment uses continuous cloud backups. // +optional PitEnabled *bool `json:"pitEnabled,omitempty"` // Configuration for deployment regions. // +optional ReplicationSpecs []*AdvancedReplicationSpec `json:"replicationSpecs,omitempty"` RootCertType string `json:"rootCertType,omitempty"` // Key-value pairs for resource tagging. // +kubebuilder:validation:MaxItems=50 // +optional Tags []*TagSpec `json:"tags,omitempty"` VersionReleaseSystem string `json:"versionReleaseSystem,omitempty"` // +optional CustomZoneMapping []CustomZoneMapping `json:"customZoneMapping,omitempty"` // +optional ManagedNamespaces []ManagedNamespace `json:"managedNamespaces,omitempty"` // Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster. // +kubebuilder:default:=false TerminationProtectionEnabled bool `json:"terminationProtectionEnabled,omitempty"` }
func (*AdvancedDeploymentSpec) DeepCopy ¶
func (in *AdvancedDeploymentSpec) DeepCopy() *AdvancedDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedDeploymentSpec.
func (*AdvancedDeploymentSpec) DeepCopyInto ¶
func (in *AdvancedDeploymentSpec) DeepCopyInto(out *AdvancedDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AdvancedDeploymentSpec) ToAtlas ¶
func (s *AdvancedDeploymentSpec) ToAtlas() (*mongodbatlas.AdvancedCluster, error)
ToAtlas converts the AdvancedDeploymentSpec to native Atlas client ToAtlas format.
type AdvancedRegionConfig ¶
type AdvancedRegionConfig struct { AnalyticsSpecs *Specs `json:"analyticsSpecs,omitempty"` ElectableSpecs *Specs `json:"electableSpecs,omitempty"` ReadOnlySpecs *Specs `json:"readOnlySpecs,omitempty"` AutoScaling *AdvancedAutoScalingSpec `json:"autoScaling,omitempty"` // Cloud service provider on which the host for a multi-tenant deployment is provisioned. // This setting only works when "providerName" : "TENANT" and "providerSetting.instanceSizeName" : M2 or M5. // Otherwise it should be equal to "providerName" value // +kubebuilder:validation:Enum=AWS;GCP;AZURE BackingProviderName string `json:"backingProviderName,omitempty"` // Precedence is given to this region when a primary election occurs. // If your regionConfigs has only readOnlySpecs, analyticsSpecs, or both, set this value to 0. // If you have multiple regionConfigs objects (your cluster is multi-region or multi-cloud), they must have priorities in descending order. // The highest priority is 7 Priority *int `json:"priority,omitempty"` // +kubebuilder:validation:Enum=AWS;GCP;AZURE;TENANT;SERVERLESS ProviderName string `json:"providerName,omitempty"` // Physical location of your MongoDB deployment. // The region you choose can affect network latency for clients accessing your databases. RegionName string `json:"regionName,omitempty"` }
func (*AdvancedRegionConfig) DeepCopy ¶
func (in *AdvancedRegionConfig) DeepCopy() *AdvancedRegionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedRegionConfig.
func (*AdvancedRegionConfig) DeepCopyInto ¶
func (in *AdvancedRegionConfig) DeepCopyInto(out *AdvancedRegionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdvancedReplicationSpec ¶
type AdvancedReplicationSpec struct { // Positive integer that specifies the number of shards to deploy in each specified zone. // If you set this value to 1 and clusterType is SHARDED, MongoDB Cloud deploys a single-shard sharded cluster. // Don't create a sharded cluster with a single shard for production environments. // Single-shard sharded clusters don't provide the same benefits as multi-shard configurations NumShards int `json:"numShards,omitempty"` // Human-readable label that identifies the zone in a Global Cluster. ZoneName string `json:"zoneName,omitempty"` // Hardware specifications for nodes set for a given region. // Each regionConfigs object describes the region's priority in elections and the number and type of MongoDB nodes that MongoDB Cloud deploys to the region. // Each regionConfigs object must have either an analyticsSpecs object, electableSpecs object, or readOnlySpecs object. // Tenant clusters only require electableSpecs. Dedicated clusters can specify any of these specifications, but must have at least one electableSpecs object within a replicationSpec. // Every hardware specification must use the same instanceSize. RegionConfigs []*AdvancedRegionConfig `json:"regionConfigs,omitempty"` }
func (*AdvancedReplicationSpec) DeepCopy ¶
func (in *AdvancedReplicationSpec) DeepCopy() *AdvancedReplicationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedReplicationSpec.
func (*AdvancedReplicationSpec) DeepCopyInto ¶
func (in *AdvancedReplicationSpec) DeepCopyInto(out *AdvancedReplicationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlertConfiguration ¶
type AlertConfiguration struct { // If omitted, the configuration is disabled. Enabled bool `json:"enabled,omitempty"` // The type of event that will trigger an alert. EventTypeName string `json:"eventTypeName,omitempty"` // You can filter using the matchers array only when the EventTypeName specifies an event for a host, replica set, or sharded cluster. Matchers []Matcher `json:"matchers,omitempty"` // Threshold causes an alert to be triggered. Threshold *Threshold `json:"threshold,omitempty"` // Notifications are sending when an alert condition is detected. Notifications []Notification `json:"notifications,omitempty"` // MetricThreshold causes an alert to be triggered. MetricThreshold *MetricThreshold `json:"metricThreshold,omitempty"` }
func (*AlertConfiguration) DeepCopy ¶
func (in *AlertConfiguration) DeepCopy() *AlertConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertConfiguration.
func (*AlertConfiguration) DeepCopyInto ¶
func (in *AlertConfiguration) DeepCopyInto(out *AlertConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AlertConfiguration) ToAtlas ¶
func (in *AlertConfiguration) ToAtlas() (*admin.GroupAlertsConfig, error)
type AtlasBackupExportSpec ¶
type AtlasBackupExportSpec struct { // Unique Atlas identifier of the AWS bucket which was granted access to export backup snapshot ExportBucketID string `json:"exportBucketId"` // +kubebuilder:validation:Enum:=monthly // +kubebuilder:default:=monthly FrequencyType string `json:"frequencyType"` }
func (*AtlasBackupExportSpec) DeepCopy ¶
func (in *AtlasBackupExportSpec) DeepCopy() *AtlasBackupExportSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupExportSpec.
func (*AtlasBackupExportSpec) DeepCopyInto ¶
func (in *AtlasBackupExportSpec) DeepCopyInto(out *AtlasBackupExportSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AtlasBackupPolicy ¶
type AtlasBackupPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AtlasBackupPolicySpec `json:"spec,omitempty"` Status status.BackupPolicyStatus `json:"status,omitempty"` }
AtlasBackupPolicy is the Schema for the atlasbackuppolicies API +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*AtlasBackupPolicy) DeepCopy ¶
func (in *AtlasBackupPolicy) DeepCopy() *AtlasBackupPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupPolicy.
func (*AtlasBackupPolicy) DeepCopyInto ¶
func (in *AtlasBackupPolicy) DeepCopyInto(out *AtlasBackupPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasBackupPolicy) DeepCopyObject ¶
func (in *AtlasBackupPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasBackupPolicy) GetStatus ¶
func (in *AtlasBackupPolicy) GetStatus() status.Status
func (*AtlasBackupPolicy) UpdateStatus ¶
func (in *AtlasBackupPolicy) UpdateStatus(conditions []status.Condition, options ...status.Option)
type AtlasBackupPolicyItem ¶
type AtlasBackupPolicyItem struct { // Frequency associated with the backup policy item. One of the following values: hourly, daily, weekly or monthly. You cannot specify multiple hourly and daily backup policy items. // +kubebuilder:validation:Enum:=hourly;daily;weekly;monthly;yearly FrequencyType string `json:"frequencyType"` // Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. // The only accepted value you can set for frequency interval with NVMe clusters is 12. // +kubebuilder:validation:Enum:=1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;40 FrequencyInterval int `json:"frequencyInterval"` // Scope of the backup policy item: days, weeks, or months // +kubebuilder:validation:Enum:=days;weeks;months;years RetentionUnit string `json:"retentionUnit"` // Value to associate with RetentionUnit RetentionValue int `json:"retentionValue"` }
func (*AtlasBackupPolicyItem) DeepCopy ¶
func (in *AtlasBackupPolicyItem) DeepCopy() *AtlasBackupPolicyItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupPolicyItem.
func (*AtlasBackupPolicyItem) DeepCopyInto ¶
func (in *AtlasBackupPolicyItem) DeepCopyInto(out *AtlasBackupPolicyItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AtlasBackupPolicyList ¶
type AtlasBackupPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasBackupPolicy `json:"items"` }
AtlasBackupPolicyList contains a list of AtlasBackupPolicy
func (*AtlasBackupPolicyList) DeepCopy ¶
func (in *AtlasBackupPolicyList) DeepCopy() *AtlasBackupPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupPolicyList.
func (*AtlasBackupPolicyList) DeepCopyInto ¶
func (in *AtlasBackupPolicyList) DeepCopyInto(out *AtlasBackupPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasBackupPolicyList) DeepCopyObject ¶
func (in *AtlasBackupPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasBackupPolicySpec ¶
type AtlasBackupPolicySpec struct { // A list of BackupPolicy items Items []AtlasBackupPolicyItem `json:"items"` }
AtlasBackupPolicySpec defines the desired state of AtlasBackupPolicy
func (*AtlasBackupPolicySpec) DeepCopy ¶
func (in *AtlasBackupPolicySpec) DeepCopy() *AtlasBackupPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupPolicySpec.
func (*AtlasBackupPolicySpec) DeepCopyInto ¶
func (in *AtlasBackupPolicySpec) DeepCopyInto(out *AtlasBackupPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AtlasBackupSchedule ¶
type AtlasBackupSchedule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AtlasBackupScheduleSpec `json:"spec,omitempty"` Status status.BackupScheduleStatus `json:"status,omitempty"` }
AtlasBackupSchedule is the Schema for the atlasbackupschedules API +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*AtlasBackupSchedule) DeepCopy ¶
func (in *AtlasBackupSchedule) DeepCopy() *AtlasBackupSchedule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupSchedule.
func (*AtlasBackupSchedule) DeepCopyInto ¶
func (in *AtlasBackupSchedule) DeepCopyInto(out *AtlasBackupSchedule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasBackupSchedule) DeepCopyObject ¶
func (in *AtlasBackupSchedule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasBackupSchedule) GetStatus ¶
func (in *AtlasBackupSchedule) GetStatus() status.Status
func (*AtlasBackupSchedule) ToAtlas ¶
func (in *AtlasBackupSchedule) ToAtlas(clusterID, clusterName, replicaSetID string, policy *AtlasBackupPolicy) *mongodbatlas.CloudProviderSnapshotBackupPolicy
func (*AtlasBackupSchedule) UpdateStatus ¶
func (in *AtlasBackupSchedule) UpdateStatus(conditions []status.Condition, options ...status.Option)
type AtlasBackupScheduleList ¶
type AtlasBackupScheduleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasBackupSchedule `json:"items"` }
AtlasBackupScheduleList contains a list of AtlasBackupSchedule
func (*AtlasBackupScheduleList) DeepCopy ¶
func (in *AtlasBackupScheduleList) DeepCopy() *AtlasBackupScheduleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupScheduleList.
func (*AtlasBackupScheduleList) DeepCopyInto ¶
func (in *AtlasBackupScheduleList) DeepCopyInto(out *AtlasBackupScheduleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasBackupScheduleList) DeepCopyObject ¶
func (in *AtlasBackupScheduleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasBackupScheduleSpec ¶
type AtlasBackupScheduleSpec struct { // Specify true to enable automatic export of cloud backup snapshots to the AWS bucket. You must also define the export policy using export. If omitted, defaults to false. // +optional // +kubebuilder:default:=false AutoExportEnabled bool `json:"autoExportEnabled,omitempty"` // Export policy for automatically exporting cloud backup snapshots to AWS bucket. // +optional Export *AtlasBackupExportSpec `json:"export,omitempty"` // A reference (name & namespace) for backup policy in the desired updated backup policy. PolicyRef common.ResourceRefNamespaced `json:"policy"` // UTC Hour of day between 0 and 23, inclusive, representing which hour of the day that Atlas takes snapshots for backup policy items // +kubebuilder:validation:Minimum:=0 // +kubebuilder:validation:Maximum:=23 // +optional ReferenceHourOfDay int64 `json:"referenceHourOfDay,omitempty"` // UTC Minutes after ReferenceHourOfDay that Atlas takes snapshots for backup policy items. Must be between 0 and 59, inclusive. // +kubebuilder:validation:Minimum:=0 // +kubebuilder:validation:Maximum:=59 // +optional ReferenceMinuteOfHour int64 `json:"referenceMinuteOfHour,omitempty"` // Number of days back in time you can restore to with Continuous Cloud Backup accuracy. Must be a positive, non-zero integer. Applies to continuous cloud backups only. // +optional // +kubebuilder:default:=1 RestoreWindowDays int64 `json:"restoreWindowDays,omitempty"` // Specify true to apply the retention changes in the updated backup policy to snapshots that Atlas took previously. // +optional UpdateSnapshots bool `json:"updateSnapshots,omitempty"` // Specify true to use organization and project names instead of organization and project UUIDs in the path for the metadata files that Atlas uploads to your S3 bucket after it finishes exporting the snapshots // +optional UseOrgAndGroupNamesInExportPrefix bool `json:"useOrgAndGroupNamesInExportPrefix,omitempty"` // Copy backups to other regions for increased resiliency and faster restores. // +optional CopySettings []CopySetting `json:"copySettings,omitempty"` }
AtlasBackupScheduleSpec defines the desired state of AtlasBackupSchedule
func (*AtlasBackupScheduleSpec) DeepCopy ¶
func (in *AtlasBackupScheduleSpec) DeepCopy() *AtlasBackupScheduleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasBackupScheduleSpec.
func (*AtlasBackupScheduleSpec) DeepCopyInto ¶
func (in *AtlasBackupScheduleSpec) DeepCopyInto(out *AtlasBackupScheduleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AtlasCustomResource ¶
AtlasCustomResource is the interface common for all Atlas entities
type AtlasDataFederation ¶
type AtlasDataFederation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DataFederationSpec `json:"spec,omitempty"` Status status.DataFederationStatus `json:"status,omitempty"` }
AtlasDataFederation is the Schema for the Atlas Data Federation API
func NewDataFederationInstance ¶
func NewDataFederationInstance(projectName, instanceName, namespace string) *AtlasDataFederation
func (AtlasDataFederation) AtlasProjectObjectKey ¶
func (c AtlasDataFederation) AtlasProjectObjectKey() client.ObjectKey
func (*AtlasDataFederation) DeepCopy ¶
func (in *AtlasDataFederation) DeepCopy() *AtlasDataFederation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDataFederation.
func (*AtlasDataFederation) DeepCopyInto ¶
func (in *AtlasDataFederation) DeepCopyInto(out *AtlasDataFederation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDataFederation) DeepCopyObject ¶
func (in *AtlasDataFederation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasDataFederation) GetStatus ¶
func (c *AtlasDataFederation) GetStatus() status.Status
func (*AtlasDataFederation) ToAtlas ¶
func (c *AtlasDataFederation) ToAtlas() (*mongodbatlas.DataFederationInstance, error)
func (*AtlasDataFederation) UpdateStatus ¶
func (c *AtlasDataFederation) UpdateStatus(conditions []status.Condition, options ...status.Option)
func (*AtlasDataFederation) WithAWSCloudProviderConfig ¶
func (c *AtlasDataFederation) WithAWSCloudProviderConfig(AWSRoleID, S3Bucket string) *AtlasDataFederation
func (*AtlasDataFederation) WithAnnotations ¶
func (c *AtlasDataFederation) WithAnnotations(annotations map[string]string) *AtlasDataFederation
func (*AtlasDataFederation) WithDataProcessingRegion ¶
func (c *AtlasDataFederation) WithDataProcessingRegion(AWSRegion string) *AtlasDataFederation
func (*AtlasDataFederation) WithPrivateEndpoint ¶
func (c *AtlasDataFederation) WithPrivateEndpoint(endpointID, provider, endpointType string) *AtlasDataFederation
func (*AtlasDataFederation) WithStorage ¶
func (c *AtlasDataFederation) WithStorage(storage *Storage) *AtlasDataFederation
type AtlasDataFederationList ¶
type AtlasDataFederationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasDataFederation `json:"items"` }
AtlasDataFederationList contains a list of AtlasDataFederationList
func (*AtlasDataFederationList) DeepCopy ¶
func (in *AtlasDataFederationList) DeepCopy() *AtlasDataFederationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDataFederationList.
func (*AtlasDataFederationList) DeepCopyInto ¶
func (in *AtlasDataFederationList) DeepCopyInto(out *AtlasDataFederationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDataFederationList) DeepCopyObject ¶
func (in *AtlasDataFederationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasDatabaseUser ¶
type AtlasDatabaseUser struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AtlasDatabaseUserSpec `json:"spec,omitempty"` Status status.AtlasDatabaseUserStatus `json:"status,omitempty"` }
AtlasDatabaseUser is the Schema for the Atlas Database User API
func DefaultDBUser ¶
func DefaultDBUser(namespace, username, projectName string) *AtlasDatabaseUser
func NewDBUser ¶
func NewDBUser(namespace, name, dbUserName, projectName string) *AtlasDatabaseUser
func (AtlasDatabaseUser) AtlasProjectObjectKey ¶
func (p AtlasDatabaseUser) AtlasProjectObjectKey() client.ObjectKey
func (*AtlasDatabaseUser) ClearScopes ¶
func (p *AtlasDatabaseUser) ClearScopes() *AtlasDatabaseUser
func (*AtlasDatabaseUser) DeepCopy ¶
func (in *AtlasDatabaseUser) DeepCopy() *AtlasDatabaseUser
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDatabaseUser.
func (*AtlasDatabaseUser) DeepCopyInto ¶
func (in *AtlasDatabaseUser) DeepCopyInto(out *AtlasDatabaseUser)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDatabaseUser) DeepCopyObject ¶
func (in *AtlasDatabaseUser) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (AtlasDatabaseUser) GetScopes ¶
func (p AtlasDatabaseUser) GetScopes(scopeType ScopeType) []string
func (*AtlasDatabaseUser) GetStatus ¶
func (p *AtlasDatabaseUser) GetStatus() status.Status
func (AtlasDatabaseUser) PasswordSecretObjectKey ¶
func (p AtlasDatabaseUser) PasswordSecretObjectKey() *client.ObjectKey
func (*AtlasDatabaseUser) ReadPassword ¶
func (AtlasDatabaseUser) ToAtlas ¶
func (p AtlasDatabaseUser) ToAtlas(ctx context.Context, kubeClient client.Client) (*mongodbatlas.DatabaseUser, error)
ToAtlas converts the AtlasDatabaseUser to native Atlas client format. Reads the password from the Secret
func (AtlasDatabaseUser) ToAtlasSDK ¶ added in v2.1.0
func (p AtlasDatabaseUser) ToAtlasSDK(ctx context.Context, kubeClient client.Client) (*admin.CloudDatabaseUser, error)
ToAtlasSDK is clone of ToAtlas used temporarily for test migrations
func (*AtlasDatabaseUser) UpdateStatus ¶
func (p *AtlasDatabaseUser) UpdateStatus(conditions []status.Condition, options ...status.Option)
func (*AtlasDatabaseUser) WithAtlasUserName ¶
func (p *AtlasDatabaseUser) WithAtlasUserName(name string) *AtlasDatabaseUser
func (*AtlasDatabaseUser) WithDeleteAfterDate ¶
func (p *AtlasDatabaseUser) WithDeleteAfterDate(date string) *AtlasDatabaseUser
func (*AtlasDatabaseUser) WithName ¶
func (p *AtlasDatabaseUser) WithName(name string) *AtlasDatabaseUser
func (*AtlasDatabaseUser) WithPasswordSecret ¶
func (p *AtlasDatabaseUser) WithPasswordSecret(name string) *AtlasDatabaseUser
func (*AtlasDatabaseUser) WithRole ¶
func (p *AtlasDatabaseUser) WithRole(roleName, databaseName, collectionName string) *AtlasDatabaseUser
func (*AtlasDatabaseUser) WithScope ¶
func (p *AtlasDatabaseUser) WithScope(scopeType ScopeType, name string) *AtlasDatabaseUser
type AtlasDatabaseUserList ¶
type AtlasDatabaseUserList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasDatabaseUser `json:"items"` }
AtlasDatabaseUserList contains a list of AtlasDatabaseUser
func (*AtlasDatabaseUserList) DeepCopy ¶
func (in *AtlasDatabaseUserList) DeepCopy() *AtlasDatabaseUserList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDatabaseUserList.
func (*AtlasDatabaseUserList) DeepCopyInto ¶
func (in *AtlasDatabaseUserList) DeepCopyInto(out *AtlasDatabaseUserList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDatabaseUserList) DeepCopyObject ¶
func (in *AtlasDatabaseUserList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasDatabaseUserSpec ¶
type AtlasDatabaseUserSpec struct { // Project is a reference to AtlasProject resource the user belongs to Project common.ResourceRefNamespaced `json:"projectRef"` // DatabaseName is a Database against which Atlas authenticates the user. Default value is 'admin'. // +kubebuilder:default=admin DatabaseName string `json:"databaseName,omitempty"` // DeleteAfterDate is a timestamp in ISO 8601 date and time format in UTC after which Atlas deletes the user. // The specified date must be in the future and within one week. DeleteAfterDate string `json:"deleteAfterDate,omitempty"` // Labels is an array containing key-value pairs that tag and categorize the database user. // Each key and value has a maximum length of 255 characters. Labels []common.LabelSpec `json:"labels,omitempty"` // Roles is an array of this user's roles and the databases / collections on which the roles apply. A role allows // the user to perform particular actions on the specified database. // +kubebuilder:validation:MinItems=1 Roles []RoleSpec `json:"roles"` // Scopes is an array of clusters and Atlas Data Lakes that this user has access to. Scopes []ScopeSpec `json:"scopes,omitempty"` // PasswordSecret is a reference to the Secret keeping the user password. PasswordSecret *common.ResourceRef `json:"passwordSecretRef,omitempty"` // Username is a username for authenticating to MongoDB // Human-readable label that represents the user that authenticates to MongoDB. The format of this label depends on the method of authentication: // In case of AWS IAM: the value should be AWS ARN for the IAM User/Role; // In case of OIDC: the value should be the Identity Provider ID; // In case of Plain text auth: the value can be anything // +kubebuilder:validation:MaxLength:=1024 Username string `json:"username"` // Human-readable label that indicates whether the new database Username // with OIDC federated authentication. // To create a federated authentication user, specify the value // of IDP_GROUP for this field // +kubebuilder:default:=NONE // +kubebuilder:validation:Enum:=NONE;IDP_GROUP // +optional OIDCAuthType string `json:"oidcAuthType,omitempty"` // Human-readable label that indicates whether the new database // user authenticates with the Amazon Web Services (AWS) // Identity and Access Management (IAM) credentials associated with // the user or the user's role // +kubebuilder:default:=NONE // +kubebuilder:validation:Enum:=NONE;USER;ROLE // +optional AWSIAMType string `json:"awsIamType,omitempty"` // X509Type is X.509 method by which the database authenticates the provided username X509Type string `json:"x509Type,omitempty"` }
AtlasDatabaseUserSpec defines the desired state of Database User in Atlas
func (*AtlasDatabaseUserSpec) DeepCopy ¶
func (in *AtlasDatabaseUserSpec) DeepCopy() *AtlasDatabaseUserSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDatabaseUserSpec.
func (*AtlasDatabaseUserSpec) DeepCopyInto ¶
func (in *AtlasDatabaseUserSpec) DeepCopyInto(out *AtlasDatabaseUserSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AtlasDeployment ¶
type AtlasDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AtlasDeploymentSpec `json:"spec,omitempty"` Status status.AtlasDeploymentStatus `json:"status,omitempty"` }
AtlasDeployment is the Schema for the atlasdeployments API
func DefaultAWSDeployment ¶
func DefaultAWSDeployment(namespace, projectName string) *AtlasDeployment
func DefaultAwsAdvancedDeployment ¶
func DefaultAwsAdvancedDeployment(namespace, projectName string) *AtlasDeployment
func DefaultAzureDeployment ¶
func DefaultAzureDeployment(namespace, projectName string) *AtlasDeployment
func DefaultGCPDeployment ¶
func DefaultGCPDeployment(namespace, projectName string) *AtlasDeployment
func NewDefaultAWSServerlessInstance ¶
func NewDefaultAWSServerlessInstance(namespace, projectName string) *AtlasDeployment
func NewDeployment ¶
func NewDeployment(namespace, name, nameInAtlas string) *AtlasDeployment
func (*AtlasDeployment) AtlasName ¶
func (c *AtlasDeployment) AtlasName() string
func (AtlasDeployment) AtlasProjectObjectKey ¶
func (c AtlasDeployment) AtlasProjectObjectKey() client.ObjectKey
func (*AtlasDeployment) DeepCopy ¶
func (in *AtlasDeployment) DeepCopy() *AtlasDeployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDeployment.
func (*AtlasDeployment) DeepCopyInto ¶
func (in *AtlasDeployment) DeepCopyInto(out *AtlasDeployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDeployment) DeepCopyObject ¶
func (in *AtlasDeployment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasDeployment) GetDeploymentName ¶
func (c *AtlasDeployment) GetDeploymentName() string
func (*AtlasDeployment) GetReplicationSetID ¶
func (c *AtlasDeployment) GetReplicationSetID() string
func (*AtlasDeployment) GetStatus ¶
func (c *AtlasDeployment) GetStatus() status.Status
func (*AtlasDeployment) IsAdvancedDeployment ¶
func (c *AtlasDeployment) IsAdvancedDeployment() bool
IsAdvancedDeployment returns true if the AtlasDeployment is configured to be an advanced deployment.
func (*AtlasDeployment) IsServerless ¶
func (c *AtlasDeployment) IsServerless() bool
IsServerless returns true if the AtlasDeployment is configured to be a serverless instance
func (*AtlasDeployment) Lightweight ¶
func (c *AtlasDeployment) Lightweight() *AtlasDeployment
Lightweight makes the deployment work with small shared instance M2. This is useful for non-deployment tests (e.g. database users) and saves some money for the company.
func (*AtlasDeployment) UpdateStatus ¶
func (c *AtlasDeployment) UpdateStatus(conditions []status.Condition, options ...status.Option)
func (*AtlasDeployment) WithAtlasName ¶
func (c *AtlasDeployment) WithAtlasName(name string) *AtlasDeployment
func (*AtlasDeployment) WithAutoscalingDisabled ¶
func (c *AtlasDeployment) WithAutoscalingDisabled() *AtlasDeployment
func (*AtlasDeployment) WithBackingProvider ¶
func (c *AtlasDeployment) WithBackingProvider(name string) *AtlasDeployment
func (*AtlasDeployment) WithBackupScheduleRef ¶
func (c *AtlasDeployment) WithBackupScheduleRef(ref common.ResourceRefNamespaced) *AtlasDeployment
func (*AtlasDeployment) WithDiskSizeGB ¶
func (c *AtlasDeployment) WithDiskSizeGB(size int) *AtlasDeployment
func (*AtlasDeployment) WithInstanceSize ¶
func (c *AtlasDeployment) WithInstanceSize(name string) *AtlasDeployment
func (*AtlasDeployment) WithName ¶
func (c *AtlasDeployment) WithName(name string) *AtlasDeployment
func (*AtlasDeployment) WithProjectName ¶
func (c *AtlasDeployment) WithProjectName(projectName string) *AtlasDeployment
func (*AtlasDeployment) WithProviderName ¶
func (c *AtlasDeployment) WithProviderName(name provider.ProviderName) *AtlasDeployment
func (*AtlasDeployment) WithRegionName ¶
func (c *AtlasDeployment) WithRegionName(name string) *AtlasDeployment
type AtlasDeploymentList ¶
type AtlasDeploymentList struct { metav1.TypeMeta ` json:",inline"` metav1.ListMeta ` json:"metadata,omitempty"` Items []AtlasDeployment `json:"items"` }
AtlasDeploymentList contains a list of AtlasDeployment
func (*AtlasDeploymentList) DeepCopy ¶
func (in *AtlasDeploymentList) DeepCopy() *AtlasDeploymentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDeploymentList.
func (*AtlasDeploymentList) DeepCopyInto ¶
func (in *AtlasDeploymentList) DeepCopyInto(out *AtlasDeploymentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDeploymentList) DeepCopyObject ¶
func (in *AtlasDeploymentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasDeploymentSpec ¶
type AtlasDeploymentSpec struct { // Project is a reference to AtlasProject resource the deployment belongs to Project common.ResourceRefNamespaced `json:"projectRef"` // Configuration for the advanced (v1.5) deployment API https://www.mongodb.com/docs/atlas/reference/api/clusters/ // +optional DeploymentSpec *AdvancedDeploymentSpec `json:"deploymentSpec,omitempty"` // Backup schedule for the AtlasDeployment // +optional BackupScheduleRef common.ResourceRefNamespaced `json:"backupRef"` // Configuration for the serverless deployment API. https://www.mongodb.com/docs/atlas/reference/api/serverless-instances/ // +optional ServerlessSpec *ServerlessSpec `json:"serverlessSpec,omitempty"` // ProcessArgs allows to modify Advanced Configuration Options // +optional ProcessArgs *ProcessArgs `json:"processArgs,omitempty"` }
AtlasDeploymentSpec defines the desired state of AtlasDeployment Only one of DeploymentSpec, AdvancedDeploymentSpec and ServerlessSpec should be defined
func (*AtlasDeploymentSpec) DeepCopy ¶
func (in *AtlasDeploymentSpec) DeepCopy() *AtlasDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasDeploymentSpec.
func (*AtlasDeploymentSpec) DeepCopyInto ¶
func (in *AtlasDeploymentSpec) DeepCopyInto(out *AtlasDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasDeploymentSpec) Deployment ¶
func (spec *AtlasDeploymentSpec) Deployment() (*mongodbatlas.AdvancedCluster, error)
Deployment converts the Spec to native Atlas client format.
type AtlasFederatedAuth ¶
type AtlasFederatedAuth struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AtlasFederatedAuthSpec `json:"spec,omitempty"` Status status.AtlasFederatedAuthStatus `json:"status,omitempty"` }
AtlasFederatedAuth is the Schema for the Atlasfederatedauth API +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:subresource:status
func (*AtlasFederatedAuth) ConnectionSecretObjectKey ¶
func (f *AtlasFederatedAuth) ConnectionSecretObjectKey() *client.ObjectKey
func (*AtlasFederatedAuth) DeepCopy ¶
func (in *AtlasFederatedAuth) DeepCopy() *AtlasFederatedAuth
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasFederatedAuth.
func (*AtlasFederatedAuth) DeepCopyInto ¶
func (in *AtlasFederatedAuth) DeepCopyInto(out *AtlasFederatedAuth)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasFederatedAuth) DeepCopyObject ¶
func (in *AtlasFederatedAuth) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasFederatedAuth) GetStatus ¶
func (f *AtlasFederatedAuth) GetStatus() status.Status
func (*AtlasFederatedAuth) UpdateStatus ¶
func (f *AtlasFederatedAuth) UpdateStatus(conditions []status.Condition, options ...status.Option)
type AtlasFederatedAuthList ¶
type AtlasFederatedAuthList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasFederatedAuth `json:"items"` }
AtlasFederatedAuthList contains a list of AtlasFederatedAuth +kubebuilder:object:root=true
func (*AtlasFederatedAuthList) DeepCopy ¶
func (in *AtlasFederatedAuthList) DeepCopy() *AtlasFederatedAuthList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasFederatedAuthList.
func (*AtlasFederatedAuthList) DeepCopyInto ¶
func (in *AtlasFederatedAuthList) DeepCopyInto(out *AtlasFederatedAuthList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasFederatedAuthList) DeepCopyObject ¶
func (in *AtlasFederatedAuthList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasFederatedAuthSpec ¶
type AtlasFederatedAuthSpec struct { // +kubebuilder:default:=false Enabled bool `json:"enabled,omitempty"` // Connection secret with API credentials for configuring the federation. // These credentials must have OrganizationOwner permissions. ConnectionSecretRef common.ResourceRefNamespaced `json:"connectionSecretRef,omitempty"` // Approved domains that restrict users who can join the organization based on their email address. // +optional DomainAllowList []string `json:"domainAllowList,omitempty"` // Prevent users in the federation from accessing organizations outside of the federation, and creating new organizations. // This option applies to the entire federation. // See more information at https://www.mongodb.com/docs/atlas/security/federation-advanced-options/#restrict-user-membership-to-the-federation // +kubebuilder:default:=false DomainRestrictionEnabled *bool `json:"domainRestrictionEnabled,omitempty"` // +kubebuilder:default:=false // +optional SSODebugEnabled *bool `json:"ssoDebugEnabled,omitempty"` // Atlas roles that are granted to a user in this organization after authenticating. // +optional PostAuthRoleGrants []string `json:"postAuthRoleGrants,omitempty"` // Map IDP groups to Atlas roles. // +optional RoleMappings []RoleMapping `json:"roleMappings,omitempty"` }
func (*AtlasFederatedAuthSpec) DeepCopy ¶
func (in *AtlasFederatedAuthSpec) DeepCopy() *AtlasFederatedAuthSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasFederatedAuthSpec.
func (*AtlasFederatedAuthSpec) DeepCopyInto ¶
func (in *AtlasFederatedAuthSpec) DeepCopyInto(out *AtlasFederatedAuthSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasFederatedAuthSpec) ToAtlas ¶
func (f *AtlasFederatedAuthSpec) ToAtlas(orgID, idpID string, projectNameToID map[string]string) (*admin.ConnectedOrgConfig, error)
type AtlasProject ¶
type AtlasProject struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AtlasProjectSpec `json:"spec,omitempty"` Status status.AtlasProjectStatus `json:"status,omitempty"` }
AtlasProject is the Schema for the atlasprojects API
func DefaultProject ¶
func DefaultProject(namespace, connectionSecretName string) *AtlasProject
func NewProject ¶
func NewProject(namespace, name, nameInAtlas string) *AtlasProject
func (*AtlasProject) ConnectionSecretObjectKey ¶
func (p *AtlasProject) ConnectionSecretObjectKey() *client.ObjectKey
func (*AtlasProject) DeepCopy ¶
func (in *AtlasProject) DeepCopy() *AtlasProject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasProject.
func (*AtlasProject) DeepCopyInto ¶
func (in *AtlasProject) DeepCopyInto(out *AtlasProject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasProject) DeepCopyObject ¶
func (in *AtlasProject) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasProject) GetStatus ¶
func (p *AtlasProject) GetStatus() status.Status
func (AtlasProject) ID ¶
func (p AtlasProject) ID() string
ID is just a shortcut for ID from the status
func (*AtlasProject) UpdateStatus ¶
func (p *AtlasProject) UpdateStatus(conditions []status.Condition, options ...status.Option)
func (*AtlasProject) WithAnnotations ¶
func (p *AtlasProject) WithAnnotations(annotations map[string]string) *AtlasProject
func (*AtlasProject) WithAtlasName ¶
func (p *AtlasProject) WithAtlasName(name string) *AtlasProject
func (*AtlasProject) WithConnectionSecret ¶
func (p *AtlasProject) WithConnectionSecret(name string) *AtlasProject
func (*AtlasProject) WithConnectionSecretNamespaced ¶
func (p *AtlasProject) WithConnectionSecretNamespaced(name, namespace string) *AtlasProject
func (*AtlasProject) WithIPAccessList ¶
func (p *AtlasProject) WithIPAccessList(ipAccess project.IPAccessList) *AtlasProject
func (*AtlasProject) WithLabels ¶
func (p *AtlasProject) WithLabels(labels map[string]string) *AtlasProject
func (*AtlasProject) WithMaintenanceWindow ¶
func (p *AtlasProject) WithMaintenanceWindow(window project.MaintenanceWindow) *AtlasProject
func (*AtlasProject) WithName ¶
func (p *AtlasProject) WithName(name string) *AtlasProject
func (*AtlasProject) X509SecretObjectKey ¶
func (p *AtlasProject) X509SecretObjectKey() *client.ObjectKey
type AtlasProjectList ¶
type AtlasProjectList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasProject `json:"items"` }
AtlasProjectList contains a list of AtlasProject
func (*AtlasProjectList) DeepCopy ¶
func (in *AtlasProjectList) DeepCopy() *AtlasProjectList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasProjectList.
func (*AtlasProjectList) DeepCopyInto ¶
func (in *AtlasProjectList) DeepCopyInto(out *AtlasProjectList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasProjectList) DeepCopyObject ¶
func (in *AtlasProjectList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AtlasProjectSpec ¶
type AtlasProjectSpec struct { // Name is the name of the Project that is created in Atlas by the Operator if it doesn't exist yet. Name string `json:"name"` // RegionUsageRestrictions designate the project's AWS region when using Atlas for Government. // This parameter should not be used with commercial Atlas. // In Atlas for Government, not setting this field (defaulting to NONE) means the project is restricted to COMMERCIAL_FEDRAMP_REGIONS_ONLY // +kubebuilder:validation:Enum=NONE;GOV_REGIONS_ONLY;COMMERCIAL_FEDRAMP_REGIONS_ONLY // +kubebuilder:default:=NONE // +optional RegionUsageRestrictions string `json:"regionUsageRestrictions,omitempty"` // ConnectionSecret is the name of the Kubernetes Secret which contains the information about the way to connect to // Atlas (organization ID, API keys). The default Operator connection configuration will be used if not provided. // +optional ConnectionSecret *common.ResourceRefNamespaced `json:"connectionSecretRef,omitempty"` // ProjectIPAccessList allows to enable the IP Access List for the Project. See more information at // https://docs.atlas.mongodb.com/reference/api/ip-access-list/add-entries-to-access-list/ // +optional ProjectIPAccessList []project.IPAccessList `json:"projectIpAccessList,omitempty"` // MaintenanceWindow allows to specify a preferred time in the week to run maintenance operations. See more // information at https://www.mongodb.com/docs/atlas/reference/api/maintenance-windows/ // +optional MaintenanceWindow project.MaintenanceWindow `json:"maintenanceWindow,omitempty"` // PrivateEndpoints is a list of Private Endpoints configured for the current Project. PrivateEndpoints []PrivateEndpoint `json:"privateEndpoints,omitempty"` // CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. // Deprecated: This configuration was deprecated in favor of CloudProviderIntegrations CloudProviderAccessRoles []CloudProviderAccessRole `json:"cloudProviderAccessRoles,omitempty"` // CloudProviderIntegrations is a list of Cloud Provider Integration configured for the current Project. CloudProviderIntegrations []CloudProviderIntegration `json:"cloudProviderIntegrations,omitempty"` // AlertConfiguration is a list of Alert Configurations configured for the current Project. AlertConfigurations []AlertConfiguration `json:"alertConfigurations,omitempty"` // AlertConfigurationSyncEnabled is a flag that enables/disables Alert Configurations sync for the current Project. // If true - project alert configurations will be synced according to AlertConfigurations. // If not - alert configurations will not be modified by the operator. They can be managed through API, cli, UI. //kubebuilder:default:=false // +optional AlertConfigurationSyncEnabled bool `json:"alertConfigurationSyncEnabled,omitempty"` // NetworkPeers is a list of Network Peers configured for the current Project. NetworkPeers []NetworkPeer `json:"networkPeers,omitempty"` // Flag that indicates whether to create the new project with the default alert settings enabled. This parameter defaults to true // +kubebuilder:default:=true // +optional WithDefaultAlertsSettings bool `json:"withDefaultAlertsSettings,omitempty"` // X509CertRef is the name of the Kubernetes Secret which contains PEM-encoded CA certificate X509CertRef *common.ResourceRefNamespaced `json:"x509CertRef,omitempty"` // Integrations is a list of MongoDB Atlas integrations for the project // +optional Integrations []project.Integration `json:"integrations,omitempty"` // EncryptionAtRest allows to set encryption for AWS, Azure and GCP providers // +optional EncryptionAtRest *EncryptionAtRest `json:"encryptionAtRest,omitempty"` // Auditing represents MongoDB Maintenance Windows // +optional Auditing *Auditing `json:"auditing,omitempty"` // Settings allow to set Project Settings for the project // +optional Settings *ProjectSettings `json:"settings,omitempty"` // The customRoles lets you create, and change custom roles in your cluster. Use custom roles to specify custom sets of actions that the Atlas built-in roles can't describe. // +optional CustomRoles []CustomRole `json:"customRoles,omitempty"` // Teams enable you to grant project access roles to multiple users. // +optional Teams []Team `json:"teams,omitempty"` }
AtlasProjectSpec defines the desired state of Project in Atlas
func (*AtlasProjectSpec) DeepCopy ¶
func (in *AtlasProjectSpec) DeepCopy() *AtlasProjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasProjectSpec.
func (*AtlasProjectSpec) DeepCopyInto ¶
func (in *AtlasProjectSpec) DeepCopyInto(out *AtlasProjectSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (AtlasProjectSpec) MarshalLogObject ¶
func (p AtlasProjectSpec) MarshalLogObject(e zapcore.ObjectEncoder) error
type AtlasTeam ¶
type AtlasTeam struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TeamSpec `json:"spec"` Status status.TeamStatus `json:"status,omitempty"` }
AtlasTeam is the Schema for the Atlas Teams API
func (*AtlasTeam) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasTeam.
func (*AtlasTeam) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasTeam) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AtlasTeam) Identifier ¶
func (in *AtlasTeam) Identifier() interface{}
type AtlasTeamList ¶
type AtlasTeamList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AtlasTeam `json:"items"` }
AtlasTeamList contains a list of AtlasTeam
func (*AtlasTeamList) DeepCopy ¶
func (in *AtlasTeamList) DeepCopy() *AtlasTeamList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AtlasTeamList.
func (*AtlasTeamList) DeepCopyInto ¶
func (in *AtlasTeamList) DeepCopyInto(out *AtlasTeamList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AtlasTeamList) DeepCopyObject ¶
func (in *AtlasTeamList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Auditing ¶
type Auditing struct { // Indicates whether the auditing system captures successful authentication attempts for audit filters using the "atype" : "authCheck" auditing event. For more information, see auditAuthorizationSuccess // +optional AuditAuthorizationSuccess bool `json:"auditAuthorizationSuccess,omitempty"` // JSON-formatted audit filter used by the project // +optional AuditFilter string `json:"auditFilter,omitempty"` // Denotes whether or not the project associated with the {GROUP-ID} has database auditing enabled. // +optional Enabled bool `json:"enabled,omitempty"` }
Auditing represents MongoDB Maintenance Windows
func (*Auditing) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Auditing.
func (*Auditing) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Auditing) ToAtlas ¶
func (a Auditing) ToAtlas() *mongodbatlas.Auditing
type AutoScalingSpec ¶
type AutoScalingSpec struct { // Deprecated: This flag is not supported anymore. // Flag that indicates whether autopilot mode for Performance Advisor is enabled. // The default is false. AutoIndexingEnabled *bool `json:"autoIndexingEnabled,omitempty"` // Flag that indicates whether disk auto-scaling is enabled. The default is true. // +optional DiskGBEnabled *bool `json:"diskGBEnabled,omitempty"` // Collection of settings that configure how a deployment might scale its deployment tier and whether the deployment can scale down. // +optional Compute *ComputeSpec `json:"compute,omitempty"` }
AutoScalingSpec configures your deployment to automatically scale its storage
func (*AutoScalingSpec) DeepCopy ¶
func (in *AutoScalingSpec) DeepCopy() *AutoScalingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalingSpec.
func (*AutoScalingSpec) DeepCopyInto ¶
func (in *AutoScalingSpec) DeepCopyInto(out *AutoScalingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AwsKms ¶
type AwsKms struct { Enabled *bool `json:"enabled,omitempty"` // Specifies whether Encryption at Rest is enabled for an Atlas project, To disable Encryption at Rest, pass only this parameter with a value of false, When you disable Encryption at Rest, Atlas also removes the configuration details. Region string `json:"region,omitempty"` // The AWS region in which the AWS customer master key exists: CA_CENTRAL_1, US_EAST_1, US_EAST_2, US_WEST_1, US_WEST_2, SA_EAST_1 Valid *bool `json:"valid,omitempty"` // Specifies whether the encryption key set for the provider is valid and may be used to encrypt and decrypt data. // A reference to as Secret containing the AccessKeyID, SecretAccessKey, CustomerMasterKeyID and RoleID fields // +optional SecretRef common.ResourceRefNamespaced `json:"secretRef,omitempty"` // contains filtered or unexported fields }
AwsKms specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
func (AwsKms) CustomerMasterKeyID ¶
func (*AwsKms) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AwsKms.
func (*AwsKms) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AwsKms) SetSecrets ¶
func (AwsKms) ToAtlas ¶
func (a AwsKms) ToAtlas() mongodbatlas.AwsKms
type AzureKeyVault ¶
type AzureKeyVault struct { Enabled *bool `json:"enabled,omitempty"` // Specifies whether Encryption at Rest is enabled for an Atlas project. To disable Encryption at Rest, pass only this parameter with a value of false. When you disable Encryption at Rest, Atlas also removes the configuration details. ClientID string `json:"clientID,omitempty"` // The Client ID, also known as the application ID, for an Azure application associated with the Azure AD tenant. AzureEnvironment string `json:"azureEnvironment,omitempty"` // The Azure environment where the Azure account credentials reside. Valid values are the following: AZURE, AZURE_CHINA, AZURE_GERMANY ResourceGroupName string `json:"resourceGroupName,omitempty"` // The name of the Azure Resource group that contains an Azure Key Vault. TenantID string `json:"tenantID,omitempty"` // The unique identifier for an Azure AD tenant within an Azure subscription. // A reference to as Secret containing the SubscriptionID, KeyVaultName, KeyIdentifier, Secret fields // +optional SecretRef common.ResourceRefNamespaced `json:"secretRef,omitempty"` // contains filtered or unexported fields }
AzureKeyVault specifies Azure Key Vault configuration details and whether Encryption at Rest is enabled for an Atlas project.
func (*AzureKeyVault) DeepCopy ¶
func (in *AzureKeyVault) DeepCopy() *AzureKeyVault
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureKeyVault.
func (*AzureKeyVault) DeepCopyInto ¶
func (in *AzureKeyVault) DeepCopyInto(out *AzureKeyVault)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (AzureKeyVault) KeyIdentifier ¶
func (az AzureKeyVault) KeyIdentifier() string
func (AzureKeyVault) KeyVaultName ¶
func (az AzureKeyVault) KeyVaultName() string
func (AzureKeyVault) Secret ¶
func (az AzureKeyVault) Secret() string
func (*AzureKeyVault) SetSecrets ¶
func (az *AzureKeyVault) SetSecrets(subscriptionID, keyVaultName, keyIdentifier, secret string)
func (AzureKeyVault) SubscriptionID ¶
func (az AzureKeyVault) SubscriptionID() string
func (AzureKeyVault) ToAtlas ¶
func (az AzureKeyVault) ToAtlas() mongodbatlas.AzureKeyVault
type BiConnector ¶
type BiConnector struct { Enabled *bool `json:"enabled,omitempty"` ReadPreference string `json:"readPreference,omitempty"` }
BiConnector specifies BI Connector for Atlas configuration on this deployment.
func (*BiConnector) DeepCopy ¶
func (in *BiConnector) DeepCopy() *BiConnector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BiConnector.
func (*BiConnector) DeepCopyInto ¶
func (in *BiConnector) DeepCopyInto(out *BiConnector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BiConnectorSpec ¶
type BiConnectorSpec struct { // Flag that indicates whether or not BI Connector for Atlas is enabled on the deployment. // +optional Enabled *bool `json:"enabled,omitempty"` // Source from which the BI Connector for Atlas reads data. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. // +optional ReadPreference string `json:"readPreference,omitempty"` }
BiConnectorSpec specifies BI Connector for Atlas configuration on this deployment
func (*BiConnectorSpec) DeepCopy ¶
func (in *BiConnectorSpec) DeepCopy() *BiConnectorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BiConnectorSpec.
func (*BiConnectorSpec) DeepCopyInto ¶
func (in *BiConnectorSpec) DeepCopyInto(out *BiConnectorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudProviderAccessRole ¶
type CloudProviderAccessRole struct { // ProviderName is the name of the cloud provider. Currently only AWS is supported. ProviderName string `json:"providerName"` // IamAssumedRoleArn is the ARN of the IAM role that is assumed by the Atlas cluster. // +optional IamAssumedRoleArn string `json:"iamAssumedRoleArn"` }
CloudProviderAccessRole define an integration to a cloud provider Deprecated: This type is deprecated in favor of CloudProviderIntegration
func (*CloudProviderAccessRole) DeepCopy ¶
func (in *CloudProviderAccessRole) DeepCopy() *CloudProviderAccessRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderAccessRole.
func (*CloudProviderAccessRole) DeepCopyInto ¶
func (in *CloudProviderAccessRole) DeepCopyInto(out *CloudProviderAccessRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudProviderConfig ¶
type CloudProviderConfig struct {
AWS *AWSProviderConfig `json:"aws,omitempty"`
}
func (*CloudProviderConfig) DeepCopy ¶
func (in *CloudProviderConfig) DeepCopy() *CloudProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderConfig.
func (*CloudProviderConfig) DeepCopyInto ¶
func (in *CloudProviderConfig) DeepCopyInto(out *CloudProviderConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudProviderIntegration ¶ added in v2.1.0
type CloudProviderIntegration struct { // ProviderName is the name of the cloud provider. Currently only AWS is supported. ProviderName string `json:"providerName"` // IamAssumedRoleArn is the ARN of the IAM role that is assumed by the Atlas cluster. // +optional IamAssumedRoleArn string `json:"iamAssumedRoleArn"` }
CloudProviderIntegration define an integration to a cloud provider
func (*CloudProviderIntegration) DeepCopy ¶ added in v2.1.0
func (in *CloudProviderIntegration) DeepCopy() *CloudProviderIntegration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderIntegration.
func (*CloudProviderIntegration) DeepCopyInto ¶ added in v2.1.0
func (in *CloudProviderIntegration) DeepCopyInto(out *CloudProviderIntegration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Collection ¶
type Collection struct { DataSources []DataSource `json:"dataSources,omitempty"` Name string `json:"name,omitempty"` }
func (*Collection) DeepCopy ¶
func (in *Collection) DeepCopy() *Collection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Collection.
func (*Collection) DeepCopyInto ¶
func (in *Collection) DeepCopyInto(out *Collection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComputeSpec ¶
type ComputeSpec struct { // Flag that indicates whether deployment tier auto-scaling is enabled. The default is false. // +optional Enabled *bool `json:"enabled,omitempty"` // Flag that indicates whether the deployment tier may scale down. Atlas requires this parameter if "autoScaling.compute.enabled" : true. // +optional ScaleDownEnabled *bool `json:"scaleDownEnabled,omitempty"` // Minimum instance size to which your deployment can automatically scale (such as M10). Atlas requires this parameter if "autoScaling.compute.scaleDownEnabled" : true. // +optional MinInstanceSize string `json:"minInstanceSize,omitempty"` // Maximum instance size to which your deployment can automatically scale (such as M40). Atlas requires this parameter if "autoScaling.compute.enabled" : true. // +optional MaxInstanceSize string `json:"maxInstanceSize,omitempty"` }
ComputeSpec Specifies whether the deployment automatically scales its deployment tier and whether the deployment can scale down.
func (*ComputeSpec) DeepCopy ¶
func (in *ComputeSpec) DeepCopy() *ComputeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeSpec.
func (*ComputeSpec) DeepCopyInto ¶
func (in *ComputeSpec) DeepCopyInto(out *ComputeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConnectionStrings ¶
type ConnectionStrings struct { Standard string `json:"standard,omitempty"` StandardSrv string `json:"standardSrv,omitempty"` PrivateEndpoint []PrivateEndpointSpec `json:"privateEndpoint,omitempty"` AwsPrivateLink map[string]string `json:"awsPrivateLink,omitempty"` AwsPrivateLinkSrv map[string]string `json:"awsPrivateLinkSrv,omitempty"` Private string `json:"private,omitempty"` PrivateSrv string `json:"privateSrv,omitempty"` }
ConnectionStrings configuration for applications use to connect to this deployment.
func (*ConnectionStrings) DeepCopy ¶
func (in *ConnectionStrings) DeepCopy() *ConnectionStrings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionStrings.
func (*ConnectionStrings) DeepCopyInto ¶
func (in *ConnectionStrings) DeepCopyInto(out *ConnectionStrings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CopySetting ¶
type CopySetting struct { // Identifies the cloud provider that stores the snapshot copy. // +kubebuilder:validation:Enum:=AWS;GCP;AZURE // +kubebuilder:default:=AWS CloudProvider *string `json:"cloudProvider,omitempty"` // Target region to copy snapshots belonging to replicationSpecId to. RegionName *string `json:"regionName,omitempty"` // Flag that indicates whether to copy the oplogs to the target region. ShouldCopyOplogs *bool `json:"shouldCopyOplogs,omitempty"` // List that describes which types of snapshots to copy. // +kubebuilder:validation:MinItems=1 Frequencies []string `json:"frequencies,omitempty"` }
func (*CopySetting) DeepCopy ¶
func (in *CopySetting) DeepCopy() *CopySetting
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CopySetting.
func (*CopySetting) DeepCopyInto ¶
func (in *CopySetting) DeepCopyInto(out *CopySetting)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CustomRole ¶
type CustomRole struct { // Human-readable label that identifies the role. This name must be unique for this custom role in this project. Name string `json:"name"` // List of the built-in roles that this custom role inherits. // +optional InheritedRoles []Role `json:"inheritedRoles,omitempty"` // List of the individual privilege actions that the role grants. // +optional Actions []Action `json:"actions,omitempty"` }
func (*CustomRole) DeepCopy ¶
func (in *CustomRole) DeepCopy() *CustomRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomRole.
func (*CustomRole) DeepCopyInto ¶
func (in *CustomRole) DeepCopyInto(out *CustomRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CustomRole) ToAtlas ¶
func (in *CustomRole) ToAtlas() *mongodbatlas.CustomDBRole
type CustomZoneMapping ¶
func (*CustomZoneMapping) DeepCopy ¶
func (in *CustomZoneMapping) DeepCopy() *CustomZoneMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CustomZoneMapping.
func (*CustomZoneMapping) DeepCopyInto ¶
func (in *CustomZoneMapping) DeepCopyInto(out *CustomZoneMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CustomZoneMapping) ToAtlas ¶
func (c *CustomZoneMapping) ToAtlas() mongodbatlas.CustomZoneMapping
type DataFederationPE ¶
type DataFederationPE struct { EndpointID string `json:"endpointId,omitempty"` Provider string `json:"provider,omitempty"` Type string `json:"type,omitempty"` }
func (*DataFederationPE) DeepCopy ¶
func (in *DataFederationPE) DeepCopy() *DataFederationPE
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFederationPE.
func (*DataFederationPE) DeepCopyInto ¶
func (in *DataFederationPE) DeepCopyInto(out *DataFederationPE)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (DataFederationPE) Identifier ¶
func (pe DataFederationPE) Identifier() interface{}
type DataFederationSpec ¶
type DataFederationSpec struct { // Project is a reference to AtlasProject resource the deployment belongs to Project common.ResourceRefNamespaced `json:"projectRef"` Name string `json:"name"` // +optional CloudProviderConfig *CloudProviderConfig `json:"cloudProviderConfig,omitempty"` // +optional DataProcessRegion *DataProcessRegion `json:"dataProcessRegion,omitempty"` // +optional Storage *Storage `json:"storage,omitempty"` // +optional PrivateEndpoints []DataFederationPE `json:"privateEndpoints,omitempty"` }
func (*DataFederationSpec) DeepCopy ¶
func (in *DataFederationSpec) DeepCopy() *DataFederationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataFederationSpec.
func (*DataFederationSpec) DeepCopyInto ¶
func (in *DataFederationSpec) DeepCopyInto(out *DataFederationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataProcessRegion ¶
type DataProcessRegion struct { // +kubebuilder:validation:Enum:=AWS CloudProvider string `json:"cloudProvider,omitempty"` // +kubebuilder:validation:Enum:=SYDNEY_AUS;MUMBAI_IND;FRANKFURT_DEU;DUBLIN_IRL;LONDON_GBR;VIRGINIA_USA;OREGON_USA;SAOPAULO_BRA;SINGAPORE_SGP Region string `json:"region,omitempty"` }
func (*DataProcessRegion) DeepCopy ¶
func (in *DataProcessRegion) DeepCopy() *DataProcessRegion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataProcessRegion.
func (*DataProcessRegion) DeepCopyInto ¶
func (in *DataProcessRegion) DeepCopyInto(out *DataProcessRegion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataSource ¶
type DataSource struct { AllowInsecure bool `json:"allowInsecure,omitempty"` Collection string `json:"collection,omitempty"` CollectionRegex string `json:"collectionRegex,omitempty"` Database string `json:"database,omitempty"` DatabaseRegex string `json:"databaseRegex,omitempty"` // +kubebuilder:validation:Enum:=.avro;.avro.bz2;.avro.gz;.bson;.bson.bz2;.bson.gz;.bsonx;.csv;.csv.bz2;.csv.gz;.json;.json.bz2;.json.gz;.orc;.parquet;.tsv;.tsv.bz2;.tsv.gz DefaultFormat string `json:"defaultFormat,omitempty"` Path string `json:"path,omitempty"` ProvenanceFieldName string `json:"provenanceFieldName,omitempty"` StoreName string `json:"storeName,omitempty"` Urls []string `json:"urls,omitempty"` }
func (*DataSource) DeepCopy ¶
func (in *DataSource) DeepCopy() *DataSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSource.
func (*DataSource) DeepCopyInto ¶
func (in *DataSource) DeepCopyInto(out *DataSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Database ¶
type Database struct { Collections []Collection `json:"collections,omitempty"` MaxWildcardCollections int `json:"maxWildcardCollections,omitempty"` Name string `json:"name,omitempty"` Views []View `json:"views,omitempty"` }
func (*Database) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Database.
func (*Database) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentType ¶
type DeploymentType string
const ( TypeReplicaSet DeploymentType = "REPLICASET" TypeSharded DeploymentType = "SHARDED" TypeGeoSharded DeploymentType = "GEOSHARDED" )
type DiskGB ¶
type DiskGB struct {
Enabled *bool `json:"enabled,omitempty"`
}
DiskGB specifies whether disk auto-scaling is enabled. The default is true.
func (*DiskGB) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskGB.
func (*DiskGB) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EncryptionAtRest ¶
type EncryptionAtRest struct { AwsKms AwsKms `json:"awsKms,omitempty"` // AwsKms specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project. AzureKeyVault AzureKeyVault `json:"azureKeyVault,omitempty"` // AzureKeyVault specifies Azure Key Vault configuration details and whether Encryption at Rest is enabled for an Atlas project. GoogleCloudKms GoogleCloudKms `json:"googleCloudKms,omitempty"` // Specifies GCP KMS configuration details and whether Encryption at Rest is enabled for an Atlas project. }
EncryptionAtRest allows to specify the Encryption at Rest for AWS, Azure and GCP providers
func (*EncryptionAtRest) DeepCopy ¶
func (in *EncryptionAtRest) DeepCopy() *EncryptionAtRest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionAtRest.
func (*EncryptionAtRest) DeepCopyInto ¶
func (in *EncryptionAtRest) DeepCopyInto(out *EncryptionAtRest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (EncryptionAtRest) ToAtlas ¶
func (e EncryptionAtRest) ToAtlas(projectID string) (*mongodbatlas.EncryptionAtRest, error)
type EndpointSpec ¶
type EndpointSpec struct { EndpointID string `json:"endpointId,omitempty"` ProviderName string `json:"providerName,omitempty"` Region string `json:"region,omitempty"` }
EndpointSpec through which you connect to Atlas.
func (*EndpointSpec) DeepCopy ¶
func (in *EndpointSpec) DeepCopy() *EndpointSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSpec.
func (*EndpointSpec) DeepCopyInto ¶
func (in *EndpointSpec) DeepCopyInto(out *EndpointSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GCPEndpoint ¶
type GCPEndpoint struct { // Forwarding rule that corresponds to the endpoint you created in Google Cloud. EndpointName string `json:"endpointName,omitempty"` // Private IP address of the endpoint you created in Google Cloud. IPAddress string `json:"ipAddress,omitempty"` }
func (*GCPEndpoint) DeepCopy ¶
func (in *GCPEndpoint) DeepCopy() *GCPEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCPEndpoint.
func (*GCPEndpoint) DeepCopyInto ¶
func (in *GCPEndpoint) DeepCopyInto(out *GCPEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GCPEndpoints ¶
type GCPEndpoints []GCPEndpoint
func (GCPEndpoints) ConvertToAtlas ¶
func (endpoints GCPEndpoints) ConvertToAtlas() []admin.CreateGCPForwardingRuleRequest
func (GCPEndpoints) DeepCopy ¶
func (in GCPEndpoints) DeepCopy() GCPEndpoints
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GCPEndpoints.
func (GCPEndpoints) DeepCopyInto ¶
func (in GCPEndpoints) DeepCopyInto(out *GCPEndpoints)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GoogleCloudKms ¶
type GoogleCloudKms struct { Enabled *bool `json:"enabled,omitempty"` // Specifies whether Encryption at Rest is enabled for an Atlas project. To disable Encryption at Rest, pass only this parameter with a value of false. When you disable Encryption at Rest, Atlas also removes the configuration details. // A reference to as Secret containing the ServiceAccountKey, KeyVersionResourceID fields // +optional SecretRef common.ResourceRefNamespaced `json:"secretRef,omitempty"` // contains filtered or unexported fields }
GoogleCloudKms specifies GCP KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
func (*GoogleCloudKms) DeepCopy ¶
func (in *GoogleCloudKms) DeepCopy() *GoogleCloudKms
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GoogleCloudKms.
func (*GoogleCloudKms) DeepCopyInto ¶
func (in *GoogleCloudKms) DeepCopyInto(out *GoogleCloudKms)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (GoogleCloudKms) KeyVersionResourceID ¶
func (g GoogleCloudKms) KeyVersionResourceID() string
func (GoogleCloudKms) ServiceAccountKey ¶
func (g GoogleCloudKms) ServiceAccountKey() string
func (*GoogleCloudKms) SetSecrets ¶
func (g *GoogleCloudKms) SetSecrets(serviceAccountKey, keyVersionResourceID string)
func (GoogleCloudKms) ToAtlas ¶
func (g GoogleCloudKms) ToAtlas() mongodbatlas.GoogleCloudKms
type ManagedNamespace ¶
type ManagedNamespace struct { Db string `json:"db"` //nolint:stylecheck // not changing this as is a breaking change Collection string `json:"collection"` CustomShardKey string `json:"customShardKey,omitempty"` NumInitialChunks int `json:"numInitialChunks,omitempty"` PresplitHashedZones *bool `json:"presplitHashedZones,omitempty"` IsCustomShardKeyHashed *bool `json:"isCustomShardKeyHashed,omitempty"` // Flag that specifies whether the custom shard key for the collection is hashed. IsShardKeyUnique *bool `json:"isShardKeyUnique,omitempty"` // Flag that specifies whether the underlying index enforces a unique constraint. }
ManagedNamespace represents the information about managed namespace configuration.
func (*ManagedNamespace) DeepCopy ¶
func (in *ManagedNamespace) DeepCopy() *ManagedNamespace
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedNamespace.
func (*ManagedNamespace) DeepCopyInto ¶
func (in *ManagedNamespace) DeepCopyInto(out *ManagedNamespace)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ManagedNamespace) ToAtlas ¶
func (in *ManagedNamespace) ToAtlas() mongodbatlas.ManagedNamespace
type Matcher ¶
type Matcher struct { // Name of the field in the target object to match on. FieldName string `json:"fieldName,omitempty"` // The operator to test the field’s value. Operator string `json:"operator,omitempty"` // Value to test with the specified operator. Value string `json:"value,omitempty"` }
func (*Matcher) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Matcher.
func (*Matcher) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricThreshold ¶
type MetricThreshold struct { // Name of the metric to check. MetricName string `json:"metricName,omitempty"` // Operator to apply when checking the current metric value against the threshold value. Operator string `json:"operator,omitempty"` // Threshold value outside which an alert will be triggered. Threshold string `json:"threshold"` // The units for the threshold value. Units string `json:"units,omitempty"` // This must be set to AVERAGE. Atlas computes the current metric value as an average. Mode string `json:"mode,omitempty"` }
MetricThreshold causes an alert to be triggered. Required if "eventTypeName" : "OUTSIDE_METRIC_THRESHOLD".
func (*MetricThreshold) DeepCopy ¶
func (in *MetricThreshold) DeepCopy() *MetricThreshold
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricThreshold.
func (*MetricThreshold) DeepCopyInto ¶
func (in *MetricThreshold) DeepCopyInto(out *MetricThreshold)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricThreshold) IsEqual ¶
func (in *MetricThreshold) IsEqual(threshold *admin.ServerlessMetricThreshold) bool
func (*MetricThreshold) ToAtlas ¶
func (in *MetricThreshold) ToAtlas() (*admin.ServerlessMetricThreshold, error)
type NetworkPeer ¶
type NetworkPeer struct { //AccepterRegionName is the provider region name of user's vpc. // +optional AccepterRegionName string `json:"accepterRegionName"` // ContainerRegion is the provider region name of Atlas network peer container. If not set, AccepterRegionName is used. // +optional ContainerRegion string `json:"containerRegion"` // AccountID of the user's vpc. // +optional AWSAccountID string `json:"awsAccountId,omitempty"` // ID of the network peer container. If not set, operator will create a new container with ContainerRegion and AtlasCIDRBlock input. // +optional ContainerID string `json:"containerId"` //ProviderName is the name of the provider. If not set, it will be set to "AWS". // +optional ProviderName provider.ProviderName `json:"providerName,omitempty"` //User VPC CIDR. // +optional RouteTableCIDRBlock string `json:"routeTableCidrBlock,omitempty"` //AWS VPC ID. // +optional VpcID string `json:"vpcId,omitempty"` //Atlas CIDR. It needs to be set if ContainerID is not set. // +optional AtlasCIDRBlock string `json:"atlasCidrBlock"` //AzureDirectoryID is the unique identifier for an Azure AD directory. // +optional AzureDirectoryID string `json:"azureDirectoryId,omitempty"` // AzureSubscriptionID is the unique identifier of the Azure subscription in which the VNet resides. // +optional AzureSubscriptionID string `json:"azureSubscriptionId,omitempty"` //ResourceGroupName is the name of your Azure resource group. // +optional ResourceGroupName string `json:"resourceGroupName,omitempty"` // VNetName is name of your Azure VNet. Its applicable only for Azure. // +optional VNetName string `json:"vnetName,omitempty"` // +optional // User GCP Project ID. Its applicable only for GCP. GCPProjectID string `json:"gcpProjectId,omitempty"` // GCP Network Peer Name. Its applicable only for GCP. // +optional NetworkName string `json:"networkName,omitempty"` }
func NewNetworkPeerFromAtlas ¶ added in v2.1.0
func NewNetworkPeerFromAtlas(atlasPeer admin.BaseNetworkPeeringConnectionSettings) *NetworkPeer
NewNetworkPeerFromAtlas creates a network peer based off a network peering connection from Atlas. Note: ContainerRegion and AtlasCIDRBlock are unset as this information is not provided by Atlas for a peering connection.
func (*NetworkPeer) DeepCopy ¶
func (in *NetworkPeer) DeepCopy() *NetworkPeer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeer.
func (*NetworkPeer) DeepCopyInto ¶
func (in *NetworkPeer) DeepCopyInto(out *NetworkPeer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NetworkPeer) GetContainerRegion ¶
func (in *NetworkPeer) GetContainerRegion() string
func (*NetworkPeer) ToAtlas ¶
func (in *NetworkPeer) ToAtlas() (*admin.BaseNetworkPeeringConnectionSettings, error)
func (*NetworkPeer) ToAtlasPeer ¶
func (in *NetworkPeer) ToAtlasPeer() *admin.BaseNetworkPeeringConnectionSettings
type Notification ¶
type Notification struct { // Secret containing a Slack API token or Bot token. Populated for the SLACK notifications type. If the token later becomes invalid, Atlas sends an email to the project owner and eventually removes the token. // +optional APITokenRef common.ResourceRefNamespaced `json:"apiTokenRef,omitempty"` // Slack channel name. Populated for the SLACK notifications type. ChannelName string `json:"channelName,omitempty"` // Secret containing a Datadog API Key. Found in the Datadog dashboard. Populated for the DATADOG notifications type. // +optional DatadogAPIKeyRef common.ResourceRefNamespaced `json:"datadogAPIKeyRef,omitempty"` // Region that indicates which API URL to use DatadogRegion string `json:"datadogRegion,omitempty"` // Number of minutes to wait after an alert condition is detected before sending out the first notification. DelayMin *int `json:"delayMin,omitempty"` // Email address to which alert notifications are sent. Populated for the EMAIL notifications type. EmailAddress string `json:"emailAddress,omitempty"` // Flag indicating if email notifications should be sent. Populated for ORG, GROUP, and USER notifications types. EmailEnabled *bool `json:"emailEnabled,omitempty"` // The Flowdock personal API token. Populated for the FLOWDOCK notifications type. If the token later becomes invalid, Atlas sends an email to the project owner and eventually removes the token. // +optional FlowdockAPITokenRef common.ResourceRefNamespaced `json:"flowdockApiTokenRef,omitempty"` // Flowdock flow name in lower-case letters. FlowName string `json:"flowName,omitempty"` // Number of minutes to wait between successive notifications for unacknowledged alerts that are not resolved. IntervalMin int `json:"intervalMin,omitempty"` // Mobile number to which alert notifications are sent. Populated for the SMS notifications type. MobileNumber string `json:"mobileNumber,omitempty"` // OpsGenie API Key. Populated for the OPS_GENIE notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the token. // +optional OpsGenieAPIKeyRef common.ResourceRefNamespaced `json:"opsGenieApiKeyRef,omitempty"` // Region that indicates which API URL to use. OpsGenieRegion string `json:"opsGenieRegion,omitempty"` // Flowdock organization name in lower-case letters. This is the name that appears after www.flowdock.com/app/ in the URL string. Populated for the FLOWDOCK notifications type. OrgName string `json:"orgName,omitempty"` // PagerDuty service key. Populated for the PAGER_DUTY notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key. // +optional ServiceKeyRef common.ResourceRefNamespaced `json:"serviceKeyRef,omitempty"` // Flag indicating if text message notifications should be sent. Populated for ORG, GROUP, and USER notifications types. SMSEnabled *bool `json:"smsEnabled,omitempty"` // Unique identifier of a team. TeamID string `json:"teamId,omitempty"` // Label for the team that receives this notification. TeamName string `json:"teamName,omitempty"` // Type of alert notification. TypeName string `json:"typeName,omitempty"` // Name of the Atlas user to which to send notifications. Only a user in the project that owns the alert configuration is allowed here. Populated for the USER notifications type. Username string `json:"username,omitempty"` // Secret containing a VictorOps API key and Routing key. Populated for the VICTOR_OPS notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key. // +optional VictorOpsSecretRef common.ResourceRefNamespaced `json:"victorOpsSecretRef,omitempty"` // The following roles grant privileges within a project. Roles []string `json:"roles,omitempty"` // contains filtered or unexported fields }
func (*Notification) DeepCopy ¶
func (in *Notification) DeepCopy() *Notification
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Notification.
func (*Notification) DeepCopyInto ¶
func (in *Notification) DeepCopyInto(out *Notification)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Notification) IsEqual ¶
func (in *Notification) IsEqual(notification admin.AlertsNotificationRootForGroup) bool
func (*Notification) SetAPIToken ¶
func (in *Notification) SetAPIToken(token string)
func (*Notification) SetDatadogAPIKey ¶
func (in *Notification) SetDatadogAPIKey(token string)
func (*Notification) SetFlowdockAPIToken ¶
func (in *Notification) SetFlowdockAPIToken(token string)
func (*Notification) SetOpsGenieAPIKey ¶
func (in *Notification) SetOpsGenieAPIKey(token string)
func (*Notification) SetServiceKey ¶
func (in *Notification) SetServiceKey(token string)
func (*Notification) SetVictorOpsAPIKey ¶
func (in *Notification) SetVictorOpsAPIKey(token string)
func (*Notification) SetVictorOpsRoutingKey ¶
func (in *Notification) SetVictorOpsRoutingKey(token string)
func (*Notification) ToAtlas ¶
func (in *Notification) ToAtlas() (*admin.AlertsNotificationRootForGroup, error)
type PrivateEndpoint ¶
type PrivateEndpoint struct { // Cloud provider for which you want to retrieve a private endpoint service. Atlas accepts AWS or AZURE. // +kubebuilder:validation:Enum=AWS;GCP;AZURE;TENANT Provider provider.ProviderName `json:"provider"` // Cloud provider region for which you want to create the private endpoint service. Region string `json:"region"` // Unique identifier of the private endpoint you created in your AWS VPC or Azure Vnet. // +optional ID string `json:"id,omitempty"` // Private IP address of the private endpoint network interface you created in your Azure VNet. // +optional IP string `json:"ip,omitempty"` // Unique identifier of the Google Cloud project in which you created your endpoints. // +optional GCPProjectID string `json:"gcpProjectId,omitempty"` // Unique identifier of the endpoint group. The endpoint group encompasses all of the endpoints that you created in Google Cloud. // +optional EndpointGroupName string `json:"endpointGroupName,omitempty"` // Collection of individual private endpoints that comprise your endpoint group. // +optional Endpoints GCPEndpoints `json:"endpoints,omitempty"` }
func (*PrivateEndpoint) DeepCopy ¶
func (in *PrivateEndpoint) DeepCopy() *PrivateEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpoint.
func (*PrivateEndpoint) DeepCopyInto ¶
func (in *PrivateEndpoint) DeepCopyInto(out *PrivateEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (PrivateEndpoint) Identifier ¶
func (i PrivateEndpoint) Identifier() interface{}
Identifier is required to satisfy "Identifiable" iterface
type PrivateEndpointSpec ¶
type PrivateEndpointSpec struct { ConnectionString string `json:"connectionString,omitempty"` Endpoints []EndpointSpec `json:"endpoints,omitempty"` SRVConnectionString string `json:"srvConnectionString,omitempty"` Type string `json:"type,omitempty"` }
PrivateEndpointSpec connection strings. Each object describes the connection strings you can use to connect to this deployment through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this deployment's nodes.
func (*PrivateEndpointSpec) DeepCopy ¶
func (in *PrivateEndpointSpec) DeepCopy() *PrivateEndpointSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointSpec.
func (*PrivateEndpointSpec) DeepCopyInto ¶
func (in *PrivateEndpointSpec) DeepCopyInto(out *PrivateEndpointSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProcessArgs ¶
type ProcessArgs struct { DefaultReadConcern string `json:"defaultReadConcern,omitempty"` DefaultWriteConcern string `json:"defaultWriteConcern,omitempty"` MinimumEnabledTLSProtocol string `json:"minimumEnabledTlsProtocol,omitempty"` FailIndexKeyTooLong *bool `json:"failIndexKeyTooLong,omitempty"` JavascriptEnabled *bool `json:"javascriptEnabled,omitempty"` NoTableScan *bool `json:"noTableScan,omitempty"` OplogSizeMB *int64 `json:"oplogSizeMB,omitempty"` SampleSizeBIConnector *int64 `json:"sampleSizeBIConnector,omitempty"` SampleRefreshIntervalBIConnector *int64 `json:"sampleRefreshIntervalBIConnector,omitempty"` OplogMinRetentionHours string `json:"oplogMinRetentionHours,omitempty"` }
func (*ProcessArgs) DeepCopy ¶
func (in *ProcessArgs) DeepCopy() *ProcessArgs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProcessArgs.
func (*ProcessArgs) DeepCopyInto ¶
func (in *ProcessArgs) DeepCopyInto(out *ProcessArgs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ProcessArgs) IsEqual ¶
func (specArgs ProcessArgs) IsEqual(newArgs interface{}) bool
func (ProcessArgs) ToAtlas ¶
func (specArgs ProcessArgs) ToAtlas() (*mongodbatlas.ProcessArgs, error)
type ProjectSettings ¶
type ProjectSettings struct { IsCollectDatabaseSpecificsStatisticsEnabled *bool `json:"isCollectDatabaseSpecificsStatisticsEnabled,omitempty"` IsDataExplorerEnabled *bool `json:"isDataExplorerEnabled,omitempty"` IsExtendedStorageSizesEnabled *bool `json:"isExtendedStorageSizesEnabled,omitempty"` IsPerformanceAdvisorEnabled *bool `json:"isPerformanceAdvisorEnabled,omitempty"` IsRealtimePerformancePanelEnabled *bool `json:"isRealtimePerformancePanelEnabled,omitempty"` IsSchemaAdvisorEnabled *bool `json:"isSchemaAdvisorEnabled,omitempty"` }
func (*ProjectSettings) DeepCopy ¶
func (in *ProjectSettings) DeepCopy() *ProjectSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectSettings.
func (*ProjectSettings) DeepCopyInto ¶
func (in *ProjectSettings) DeepCopyInto(out *ProjectSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ProjectSettings) ToAtlas ¶
func (s ProjectSettings) ToAtlas() (*mongodbatlas.ProjectSettings, error)
type Resource ¶
type Resource struct { // Flag that indicates whether to grant the action on the cluster resource. If true, MongoDB Cloud ignores Database and Collection parameters. Cluster *bool `json:"cluster,omitempty"` // Human-readable label that identifies the database on which you grant the action to one MongoDB user. Database *string `json:"database,omitempty"` // Human-readable label that identifies the collection on which you grant the action to one MongoDB user. Collection *string `json:"collection,omitempty"` }
func (*Resource) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resource.
func (*Resource) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Role ¶
type Role struct { // Human-readable label that identifies the role inherited. Name string `json:"name"` // Human-readable label that identifies the database on which someone grants the action to one MongoDB user. Database string `json:"database"` }
func (*Role) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Role.
func (*Role) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoleAssignment ¶
type RoleAssignment struct { // The Atlas project in the same org in which the role should be given. ProjectName string `json:"projectName,omitempty"` // The role in Atlas that should be given to group members. // +kubebuilder:validation:Enum=ORG_MEMBER;ORG_READ_ONLY;ORG_BILLING_ADMIN;ORG_GROUP_CREATOR;ORG_OWNER;ORG_BILLING_READ_ONLY;ORG_TEAM_MEMBERS_ADMIN;GROUP_AUTOMATION_ADMIN;GROUP_BACKUP_ADMIN;GROUP_MONITORING_ADMIN;GROUP_OWNER;GROUP_READ_ONLY;GROUP_USER_ADMIN;GROUP_BILLING_ADMIN;GROUP_DATA_ACCESS_ADMIN;GROUP_DATA_ACCESS_READ_ONLY;GROUP_DATA_ACCESS_READ_WRITE;GROUP_CHARTS_ADMIN;GROUP_CLUSTER_MANAGER;GROUP_SEARCH_INDEX_EDITOR Role string `json:"role,omitempty"` }
func (*RoleAssignment) DeepCopy ¶
func (in *RoleAssignment) DeepCopy() *RoleAssignment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleAssignment.
func (*RoleAssignment) DeepCopyInto ¶
func (in *RoleAssignment) DeepCopyInto(out *RoleAssignment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoleMapping ¶
type RoleMapping struct { // ExternalGroupName is the name of the IDP group to which this mapping applies. // +kubebuilder:validation:MinLength:=1 // +kubebuilder:validation:MaxLength:=200 ExternalGroupName string `json:"externalGroupName,omitempty"` // RoleAssignments define the roles within projects that should be given to members of the group. RoleAssignments []RoleAssignment `json:"roleAssignments,omitempty"` }
RoleMapping maps an external group from an identity provider to roles within Atlas.
func (*RoleMapping) DeepCopy ¶
func (in *RoleMapping) DeepCopy() *RoleMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleMapping.
func (*RoleMapping) DeepCopyInto ¶
func (in *RoleMapping) DeepCopyInto(out *RoleMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoleSpec ¶
type RoleSpec struct { // RoleName is a name of the role. This value can either be a built-in role or a custom role. RoleName string `json:"roleName"` // DatabaseName is a database on which the user has the specified role. A role on the admin database can include // privileges that apply to the other databases. DatabaseName string `json:"databaseName"` // CollectionName is a collection for which the role applies. CollectionName string `json:"collectionName,omitempty"` }
RoleSpec allows the user to perform particular actions on the specified database. A role on the admin database can include privileges that apply to the other databases as well.
func (*RoleSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleSpec.
func (*RoleSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScopeSpec ¶
type ScopeSpec struct { // Name is a name of the cluster or Atlas Data Lake that the user has access to. Name string `json:"name"` // Type is a type of resource that the user has access to. // +kubebuilder:validation:Enum=CLUSTER;DATA_LAKE Type ScopeType `json:"type"` }
ScopeSpec if present a database user only have access to the indicated resource (Cluster or Atlas Data Lake) if none is given then it has access to all. It's highly recommended to restrict the access of the database users only to a limited set of resources.
func (*ScopeSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScopeSpec.
func (*ScopeSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerlessBackupOptions ¶
type ServerlessBackupOptions struct { // ServerlessContinuousBackupEnabled // +kubebuilder:default:=true ServerlessContinuousBackupEnabled bool `json:"serverlessContinuousBackupEnabled,omitempty"` }
func (*ServerlessBackupOptions) DeepCopy ¶
func (in *ServerlessBackupOptions) DeepCopy() *ServerlessBackupOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerlessBackupOptions.
func (*ServerlessBackupOptions) DeepCopyInto ¶
func (in *ServerlessBackupOptions) DeepCopyInto(out *ServerlessBackupOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerlessPrivateEndpoint ¶
type ServerlessPrivateEndpoint struct { // Name is the name of the Serverless PrivateLink Service. Should be unique. Name string `json:"name,omitempty"` // CloudProviderEndpointID is the identifier of the cloud provider endpoint. CloudProviderEndpointID string `json:"cloudProviderEndpointID,omitempty"` // PrivateEndpointIPAddress is the IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service. PrivateEndpointIPAddress string `json:"privateEndpointIpAddress,omitempty"` }
func (*ServerlessPrivateEndpoint) DeepCopy ¶
func (in *ServerlessPrivateEndpoint) DeepCopy() *ServerlessPrivateEndpoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerlessPrivateEndpoint.
func (*ServerlessPrivateEndpoint) DeepCopyInto ¶
func (in *ServerlessPrivateEndpoint) DeepCopyInto(out *ServerlessPrivateEndpoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServerlessPrivateEndpoint) IsInitialState ¶
func (in *ServerlessPrivateEndpoint) IsInitialState() bool
IsInitialState pe initially should be empty except for comment
func (*ServerlessPrivateEndpoint) ToAtlas ¶
func (in *ServerlessPrivateEndpoint) ToAtlas(providerName provider.ProviderName) *mongodbatlas.ServerlessPrivateEndpointConnection
type ServerlessProviderSettingsSpec ¶ added in v2.2.1
type ServerlessProviderSettingsSpec struct { // Cloud service provider on which the host for a multi-tenant deployment is provisioned. // This setting only works when "providerSetting.providerName" : "TENANT" and "providerSetting.instanceSizeName" : M2 or M5. // +kubebuilder:validation:Enum=AWS;GCP;AZURE // +optional BackingProviderName string `json:"backingProviderName,omitempty"` // DEPRECATED FIELD. The value of this field doesn't take any effect. Disk IOPS setting for AWS storage. // Set only if you selected AWS as your cloud service provider. // +optional DiskIOPS *int64 `json:"diskIOPS,omitempty"` // DEPRECATED FIELD. The value of this field doesn't take any effect. Type of disk if you selected Azure as your cloud service provider. // +optional DiskTypeName string `json:"diskTypeName,omitempty"` // DEPRECATED FIELD. The value of this field doesn't take any effect. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the deployment. // +optional EncryptEBSVolume *bool `json:"encryptEBSVolume,omitempty"` // DEPRECATED FIELD. The value of this field doesn't take any effect. Atlas provides different deployment tiers, each with a default storage capacity and RAM size. The deployment you select is used for all the data-bearing hosts in your deployment tier. // +optional InstanceSizeName string `json:"instanceSizeName,omitempty"` // Cloud service provider on which Atlas provisions the hosts. // +kubebuilder:validation:Enum=AWS;GCP;AZURE;TENANT;SERVERLESS ProviderName provider.ProviderName `json:"providerName"` // Physical location of your MongoDB deployment. // The region you choose can affect network latency for clients accessing your databases. // +optional RegionName string `json:"regionName,omitempty"` // DEPRECATED FIELD. The value of this field doesn't take any effect. Disk IOPS setting for AWS storage. // Set only if you selected AWS as your cloud service provider. // +kubebuilder:validation:Enum=STANDARD;PROVISIONED VolumeType string `json:"volumeType,omitempty"` // DEPRECATED FIELD. The value of this field doesn't take any effect. Range of instance sizes to which your deployment can scale. AutoScaling *AutoScalingSpec `json:"autoScaling,omitempty"` }
ServerlessProviderSettingsSpec configuration for the provisioned servers on which MongoDB runs. The available options are specific to the cloud service provider.
func (*ServerlessProviderSettingsSpec) DeepCopy ¶ added in v2.2.1
func (in *ServerlessProviderSettingsSpec) DeepCopy() *ServerlessProviderSettingsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerlessProviderSettingsSpec.
func (*ServerlessProviderSettingsSpec) DeepCopyInto ¶ added in v2.2.1
func (in *ServerlessProviderSettingsSpec) DeepCopyInto(out *ServerlessProviderSettingsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerlessSpec ¶
type ServerlessSpec struct { // Name of the serverless deployment as it appears in Atlas. // After Atlas creates the deployment, you can't change its name. // Can only contain ASCII letters, numbers, and hyphens. // +kubebuilder:validation:Pattern:=^[a-zA-Z0-9][a-zA-Z0-9-]*$ Name string `json:"name"` // Configuration for the provisioned hosts on which MongoDB runs. The available options are specific to the cloud service provider. ProviderSettings *ServerlessProviderSettingsSpec `json:"providerSettings"` PrivateEndpoints []ServerlessPrivateEndpoint `json:"privateEndpoints,omitempty"` // Key-value pairs for resource tagging. // +kubebuilder:validation:MaxItems=50 // +optional Tags []*TagSpec `json:"tags,omitempty"` // Serverless Backup Options BackupOptions ServerlessBackupOptions `json:"backupOptions,omitempty"` // Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster. // +kubebuilder:default:=false TerminationProtectionEnabled bool `json:"terminationProtectionEnabled,omitempty"` }
ServerlessSpec defines the desired state of Atlas Serverless Instance
func (*ServerlessSpec) DeepCopy ¶
func (in *ServerlessSpec) DeepCopy() *ServerlessSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerlessSpec.
func (*ServerlessSpec) DeepCopyInto ¶
func (in *ServerlessSpec) DeepCopyInto(out *ServerlessSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServerlessSpec) ToAtlas ¶
func (s *ServerlessSpec) ToAtlas() (*mongodbatlas.Cluster, error)
ToAtlas converts the ServerlessSpec to native Atlas client Cluster format.
type Specs ¶
type Specs struct { // Disk IOPS setting for AWS storage. // Set only if you selected AWS as your cloud service provider. // +optional DiskIOPS *int64 `json:"diskIOPS,omitempty"` // Disk IOPS setting for AWS storage. // Set only if you selected AWS as your cloud service provider. // +kubebuilder:validation:Enum=STANDARD;PROVISIONED EbsVolumeType string `json:"ebsVolumeType,omitempty"` // Hardware specification for the instance sizes in this region. // Each instance size has a default storage and memory capacity. // The instance size you select applies to all the data-bearing hosts in your instance size InstanceSize string `json:"instanceSize,omitempty"` // Number of nodes of the given type for MongoDB Cloud to deploy to the region. NodeCount *int `json:"nodeCount,omitempty"` }
func (*Specs) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Specs.
func (*Specs) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Storage ¶
type Storage struct { Databases []Database `json:"databases,omitempty"` Stores []Store `json:"stores,omitempty"` }
func (*Storage) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Store ¶
type Store struct { Name string `json:"name,omitempty"` Provider string `json:"provider,omitempty"` AdditionalStorageClasses []string `json:"additionalStorageClasses,omitempty"` Bucket string `json:"bucket,omitempty"` Delimiter string `json:"delimiter,omitempty"` IncludeTags bool `json:"includeTags,omitempty"` Prefix string `json:"prefix,omitempty"` Public bool `json:"public,omitempty"` Region string `json:"region,omitempty"` }
func (*Store) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Store.
func (*Store) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TagSpec ¶
type TagSpec struct { // +kubebuilder:validation:MaxLength:=255 // +kubebuilder:validation:MinLength:=1 // +kubebuilder:validation:Pattern:=^[a-zA-Z0-9][a-zA-Z0-9 @_.+`;`-]*$ Key string `json:"key"` // +kubebuilder:validation:MaxLength:=255 // +kubebuilder:validation:MinLength:=1 // +kubebuilder:validation:Pattern:=^[a-zA-Z0-9][a-zA-Z0-9@_.+`;`-]*$ Value string `json:"value"` }
TagSpec holds a key-value pair for resource tagging on this deployment.
func (*TagSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TagSpec.
func (*TagSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Team ¶
type Team struct { // Reference to the team which will assigned to the project TeamRef common.ResourceRefNamespaced `json:"teamRef"` // +kubebuilder:validation:MinItems=1 // Roles the users of the team has over the project Roles []TeamRole `json:"roles"` }
func (*Team) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Team.
func (*Team) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Team) ToAtlas ¶
func (in *Team) ToAtlas(teamID string) *mongodbatlas.ProjectTeam
type TeamRole ¶
type TeamRole string
const ( TeamRoleOwner TeamRole = "GROUP_OWNER" TeamRoleClusterManager TeamRole = "GROUP_CLUSTER_MANAGER" TeamRoleDataAccessAdmin TeamRole = "GROUP_DATA_ACCESS_ADMIN" TeamRoleDataAccessReadWrite TeamRole = "GROUP_DATA_ACCESS_READ_WRITE" TeamRoleDataAccessReadOnly TeamRole = "GROUP_DATA_ACCESS_READ_ONLY" TeamRoleReadOnly TeamRole = "GROUP_READ_ONLY" )
type TeamSpec ¶
type TeamSpec struct { // The name of the team you want to create. Name string `json:"name"` // Valid email addresses of users to add to the new team Usernames []TeamUser `json:"usernames"` }
TeamSpec defines the desired state of a Team in Atlas
func (*TeamSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TeamSpec.
func (*TeamSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Threshold ¶
type Threshold struct { // Operator to apply when checking the current metric value against the threshold value. it accepts the following values: GREATER_THAN, LESS_THAN Operator string `json:"operator,omitempty"` // The units for the threshold value Units string `json:"units,omitempty"` // Threshold value outside which an alert will be triggered. Threshold string `json:"threshold,omitempty"` }
func (*Threshold) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Threshold.
func (*Threshold) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type View ¶
type View struct { Name string `json:"name,omitempty"` Pipeline string `json:"pipeline,omitempty"` Source string `json:"source,omitempty"` }
func (*View) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new View.
func (*View) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- alert_configurations.go
- atlasbackuppolicy_types.go
- atlasbackupschedule_types.go
- atlascustomresource.go
- atlasdatabaseuser_types.go
- atlasdatafederation_types.go
- atlasdeployment_types.go
- atlasfederatedauth_types.go
- atlasproject_types.go
- atlasteam_types.go
- auditing.go
- cloud_provider_integration.go
- custom_roles.go
- encryption_at_rest.go
- global_deployment.go
- groupversion_info.go
- networkpeer.go
- privateendpoint.go
- project_settings.go
- project_teams.go
- serverless_private_endpoint.go
- zz_generated.deepcopy.go