mongodbatlas

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: Jan 2, 2020 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CloudProviderSnapshot

type CloudProviderSnapshot struct {
	// contains filtered or unexported fields
}

`.CloudProviderSnapshot` provides a resource to take a cloud provider snapshot on demand. On-demand snapshots happen immediately, unlike scheduled snapshots which occur at regular intervals. If there is already an on-demand snapshot with a status of queued or inProgress, you must wait until Atlas has completed the on-demand snapshot before taking another.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/cloud_provider_snapshot.html.markdown.

func GetCloudProviderSnapshot

func GetCloudProviderSnapshot(ctx *pulumi.Context,
	name string, id pulumi.ID, state *CloudProviderSnapshotState, opts ...pulumi.ResourceOpt) (*CloudProviderSnapshot, error)

GetCloudProviderSnapshot gets an existing CloudProviderSnapshot resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCloudProviderSnapshot

func NewCloudProviderSnapshot(ctx *pulumi.Context,
	name string, args *CloudProviderSnapshotArgs, opts ...pulumi.ResourceOpt) (*CloudProviderSnapshot, error)

NewCloudProviderSnapshot registers a new resource with the given unique name, arguments, and options.

func (*CloudProviderSnapshot) ClusterName

func (r *CloudProviderSnapshot) ClusterName() pulumi.StringOutput

The name of the Atlas cluster that contains the snapshots you want to retrieve.

func (*CloudProviderSnapshot) CreatedAt

func (r *CloudProviderSnapshot) CreatedAt() pulumi.StringOutput

UTC ISO 8601 formatted point in time when Atlas took the snapshot.

func (*CloudProviderSnapshot) Description

func (r *CloudProviderSnapshot) Description() pulumi.StringOutput

Description of the on-demand snapshot.

func (*CloudProviderSnapshot) ExpiresAt

func (r *CloudProviderSnapshot) ExpiresAt() pulumi.StringOutput

UTC ISO 8601 formatted point in time when Atlas will delete the snapshot.

func (*CloudProviderSnapshot) ID

ID is this resource's unique identifier assigned by its provider.

func (*CloudProviderSnapshot) MasterKeyUuid

func (r *CloudProviderSnapshot) MasterKeyUuid() pulumi.StringOutput

Unique ID of the AWS KMS Customer Master Key used to encrypt the snapshot. Only visible for clusters using Encryption at Rest via Customer KMS.

func (*CloudProviderSnapshot) MongodVersion

func (r *CloudProviderSnapshot) MongodVersion() pulumi.StringOutput

Version of the MongoDB server.

func (*CloudProviderSnapshot) ProjectId

func (r *CloudProviderSnapshot) ProjectId() pulumi.StringOutput

The unique identifier of the project for the Atlas cluster.

func (*CloudProviderSnapshot) RetentionInDays

func (r *CloudProviderSnapshot) RetentionInDays() pulumi.IntOutput

The number of days that Atlas should retain the on-demand snapshot. Must be at least 1.

func (*CloudProviderSnapshot) SnapshotId

func (r *CloudProviderSnapshot) SnapshotId() pulumi.StringOutput

Unique identifier of the snapshot.

func (*CloudProviderSnapshot) SnapshotType

func (r *CloudProviderSnapshot) SnapshotType() pulumi.StringOutput

Specified the type of snapshot. Valid values are onDemand and scheduled.

func (*CloudProviderSnapshot) Status

Current status of the snapshot. One of the following values will be returned: queued, inProgress, completed, failed.

func (*CloudProviderSnapshot) StorageSizeBytes

func (r *CloudProviderSnapshot) StorageSizeBytes() pulumi.IntOutput

Specifies the size of the snapshot in bytes.

func (*CloudProviderSnapshot) Type

Specifies the type of cluster: replicaSet or shardedCluster.

func (*CloudProviderSnapshot) URN

URN is this resource's unique name assigned by Pulumi.

type CloudProviderSnapshotArgs

type CloudProviderSnapshotArgs struct {
	// The name of the Atlas cluster that contains the snapshots you want to retrieve.
	ClusterName interface{}
	// Description of the on-demand snapshot.
	Description interface{}
	// The unique identifier of the project for the Atlas cluster.
	ProjectId interface{}
	// The number of days that Atlas should retain the on-demand snapshot. Must be at least 1.
	RetentionInDays interface{}
}

The set of arguments for constructing a CloudProviderSnapshot resource.

type CloudProviderSnapshotRestoreJob

type CloudProviderSnapshotRestoreJob struct {
	// contains filtered or unexported fields
}

`.CloudProviderSnapshotRestoreJob` provides a resource to create a new restore job from a cloud provider snapshot of a specified cluster. The restore job can be one of two types: * **automated:** Atlas automatically restores the snapshot with snapshotId to the Atlas cluster with name targetClusterName in the Atlas project with targetGroupId.

* **download:** Atlas provides a URL to download a .tar.gz of the snapshot with snapshotId. The contents of the archive contain the data files for your Atlas cluster.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/cloud_provider_snapshot_restore_job.html.markdown.

func GetCloudProviderSnapshotRestoreJob

func GetCloudProviderSnapshotRestoreJob(ctx *pulumi.Context,
	name string, id pulumi.ID, state *CloudProviderSnapshotRestoreJobState, opts ...pulumi.ResourceOpt) (*CloudProviderSnapshotRestoreJob, error)

GetCloudProviderSnapshotRestoreJob gets an existing CloudProviderSnapshotRestoreJob resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCloudProviderSnapshotRestoreJob

func NewCloudProviderSnapshotRestoreJob(ctx *pulumi.Context,
	name string, args *CloudProviderSnapshotRestoreJobArgs, opts ...pulumi.ResourceOpt) (*CloudProviderSnapshotRestoreJob, error)

NewCloudProviderSnapshotRestoreJob registers a new resource with the given unique name, arguments, and options.

func (*CloudProviderSnapshotRestoreJob) Cancelled

Indicates whether the restore job was canceled.

func (*CloudProviderSnapshotRestoreJob) ClusterName

The name of the Atlas cluster whose snapshot you want to restore.

func (*CloudProviderSnapshotRestoreJob) CreatedAt

UTC ISO 8601 formatted point in time when Atlas created the restore job.

func (*CloudProviderSnapshotRestoreJob) DeliveryType

func (r *CloudProviderSnapshotRestoreJob) DeliveryType() pulumi.Output

Type of restore job to create. Possible values are: **download** or **automated**, only one must be set it in “true“.

func (*CloudProviderSnapshotRestoreJob) DeliveryUrls

One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.

func (*CloudProviderSnapshotRestoreJob) Expired

Indicates whether the restore job expired.

func (*CloudProviderSnapshotRestoreJob) ExpiresAt

UTC ISO 8601 formatted point in time when the restore job expires.

func (*CloudProviderSnapshotRestoreJob) FinishedAt

UTC ISO 8601 formatted point in time when the restore job completed.

func (*CloudProviderSnapshotRestoreJob) ID

ID is this resource's unique identifier assigned by its provider.

func (*CloudProviderSnapshotRestoreJob) ProjectId

The unique identifier of the project for the Atlas cluster whose snapshot you want to restore.

func (*CloudProviderSnapshotRestoreJob) SnapshotId

Unique identifier of the snapshot to restore.

func (*CloudProviderSnapshotRestoreJob) SnapshotRestoreJobId

func (r *CloudProviderSnapshotRestoreJob) SnapshotRestoreJobId() pulumi.StringOutput

The unique identifier of the restore job.

func (*CloudProviderSnapshotRestoreJob) Timestamp

Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.

func (*CloudProviderSnapshotRestoreJob) URN

URN is this resource's unique name assigned by Pulumi.

type CloudProviderSnapshotRestoreJobArgs

type CloudProviderSnapshotRestoreJobArgs struct {
	// The name of the Atlas cluster whose snapshot you want to restore.
	ClusterName interface{}
	// Type of restore job to create. Possible values are: **download** or **automated**, only one must be set it in “true“.
	DeliveryType interface{}
	// The unique identifier of the project for the Atlas cluster whose snapshot you want to restore.
	ProjectId interface{}
	// Unique identifier of the snapshot to restore.
	SnapshotId interface{}
}

The set of arguments for constructing a CloudProviderSnapshotRestoreJob resource.

type CloudProviderSnapshotRestoreJobState

type CloudProviderSnapshotRestoreJobState struct {
	// Indicates whether the restore job was canceled.
	Cancelled interface{}
	// The name of the Atlas cluster whose snapshot you want to restore.
	ClusterName interface{}
	// UTC ISO 8601 formatted point in time when Atlas created the restore job.
	CreatedAt interface{}
	// Type of restore job to create. Possible values are: **download** or **automated**, only one must be set it in “true“.
	DeliveryType interface{}
	// One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.
	DeliveryUrls interface{}
	// Indicates whether the restore job expired.
	Expired interface{}
	// UTC ISO 8601 formatted point in time when the restore job expires.
	ExpiresAt interface{}
	// UTC ISO 8601 formatted point in time when the restore job completed.
	FinishedAt interface{}
	// The unique identifier of the project for the Atlas cluster whose snapshot you want to restore.
	ProjectId interface{}
	// Unique identifier of the snapshot to restore.
	SnapshotId interface{}
	// The unique identifier of the restore job.
	SnapshotRestoreJobId interface{}
	// Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.
	Timestamp interface{}
}

Input properties used for looking up and filtering CloudProviderSnapshotRestoreJob resources.

type CloudProviderSnapshotState

type CloudProviderSnapshotState struct {
	// The name of the Atlas cluster that contains the snapshots you want to retrieve.
	ClusterName interface{}
	// UTC ISO 8601 formatted point in time when Atlas took the snapshot.
	CreatedAt interface{}
	// Description of the on-demand snapshot.
	Description interface{}
	// UTC ISO 8601 formatted point in time when Atlas will delete the snapshot.
	ExpiresAt interface{}
	// Unique ID of the AWS KMS Customer Master Key used to encrypt the snapshot. Only visible for clusters using Encryption at Rest via Customer KMS.
	MasterKeyUuid interface{}
	// Version of the MongoDB server.
	MongodVersion interface{}
	// The unique identifier of the project for the Atlas cluster.
	ProjectId interface{}
	// The number of days that Atlas should retain the on-demand snapshot. Must be at least 1.
	RetentionInDays interface{}
	// Unique identifier of the snapshot.
	SnapshotId interface{}
	// Specified the type of snapshot. Valid values are onDemand and scheduled.
	SnapshotType interface{}
	// Current status of the snapshot. One of the following values will be returned: queued, inProgress, completed, failed.
	Status interface{}
	// Specifies the size of the snapshot in bytes.
	StorageSizeBytes interface{}
	// Specifies the type of cluster: replicaSet or shardedCluster.
	Type interface{}
}

Input properties used for looking up and filtering CloudProviderSnapshot resources.

type Cluster

type Cluster struct {
	// contains filtered or unexported fields
}

`.Cluster` provides a Cluster resource. The resource lets you create, edit and delete clusters. The resource requires your Project ID.

> **NOTE:** Groups and projects are synonymous terms. You may find groupId in the official documentation.

> **IMPORTANT:** <br> &#8226; Changes to cluster configurations can affect costs. Before making changes, please see [Billing](https://docs.atlas.mongodb.com/billing/). <br> &#8226; If your Atlas project contains a custom role that uses actions introduced in a specific MongoDB version, you cannot create a cluster with a MongoDB version less than that version unless you delete the custom role.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/cluster.html.markdown.

func GetCluster

func GetCluster(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ClusterState, opts ...pulumi.ResourceOpt) (*Cluster, error)

GetCluster gets an existing Cluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCluster

func NewCluster(ctx *pulumi.Context,
	name string, args *ClusterArgs, opts ...pulumi.ResourceOpt) (*Cluster, error)

NewCluster registers a new resource with the given unique name, arguments, and options.

func (*Cluster) AdvancedConfiguration

func (r *Cluster) AdvancedConfiguration() pulumi.Output

func (*Cluster) AutoScalingDiskGbEnabled

func (r *Cluster) AutoScalingDiskGbEnabled() pulumi.BoolOutput

Specifies whether disk auto-scaling is enabled. The default is true. - Set to `true` to enable disk auto-scaling. - Set to `false` to disable disk auto-scaling.

func (*Cluster) BackingProviderName

func (r *Cluster) BackingProviderName() pulumi.StringOutput

Cloud service provider on which the server for a multi-tenant cluster is provisioned. (Note: When upgrading from a multi-tenant cluster to a dedicated cluster remove this argument.)

func (*Cluster) BackupEnabled

func (r *Cluster) BackupEnabled() pulumi.BoolOutput

Set to true to enable Atlas continuous backups for the cluster.

func (*Cluster) BiConnector

func (r *Cluster) BiConnector() pulumi.Output

Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.

func (*Cluster) ClusterId

func (r *Cluster) ClusterId() pulumi.StringOutput

The cluster ID.

func (*Cluster) ClusterType

func (r *Cluster) ClusterType() pulumi.StringOutput

Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

func (*Cluster) DiskSizeGb

func (r *Cluster) DiskSizeGb() pulumi.Float64Output

The size in gigabytes of the server’s root volume. You can add capacity by increasing this number, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

func (*Cluster) EncryptionAtRestProvider

func (r *Cluster) EncryptionAtRestProvider() pulumi.StringOutput

Set the Encryption at Rest parameter. Possible values are AWS, GCP, AZURE or NONE. Requires M10 or greater and for backupEnabled to be false or omitted.

func (*Cluster) ID

func (r *Cluster) ID() pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Cluster) MongoDbMajorVersion

func (r *Cluster) MongoDbMajorVersion() pulumi.StringOutput

Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: `3.4`, `3.6` or `4.0`. You must set this value to `4.0` if `providerInstanceSizeName` is either M2 or M5.

func (*Cluster) MongoDbVersion

func (r *Cluster) MongoDbVersion() pulumi.StringOutput

Version of MongoDB the cluster runs, in `major-version`.`minor-version` format.

func (*Cluster) MongoUri

func (r *Cluster) MongoUri() pulumi.StringOutput

Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.

func (*Cluster) MongoUriUpdated

func (r *Cluster) MongoUriUpdated() pulumi.StringOutput

Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.

func (*Cluster) MongoUriWithOptions

func (r *Cluster) MongoUriWithOptions() pulumi.StringOutput

connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.

func (*Cluster) Name

func (r *Cluster) Name() pulumi.StringOutput

Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed.

func (*Cluster) NumShards

func (r *Cluster) NumShards() pulumi.IntOutput

Number of shards to deploy in the specified zone.

func (*Cluster) Paused

func (r *Cluster) Paused() pulumi.BoolOutput

Flag that indicates whether the cluster is paused or not.

func (*Cluster) ProjectId

func (r *Cluster) ProjectId() pulumi.StringOutput

The unique ID for the project to create the database user.

func (*Cluster) ProviderBackupEnabled

func (r *Cluster) ProviderBackupEnabled() pulumi.BoolOutput

Flag indicating if the cluster uses Cloud Provider Snapshots for backups.

func (*Cluster) ProviderDiskIops

func (r *Cluster) ProviderDiskIops() pulumi.IntOutput

The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected providerSettings.instanceSizeName and diskSizeGB.

func (*Cluster) ProviderDiskTypeName

func (r *Cluster) ProviderDiskTypeName() pulumi.StringOutput

Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName.

func (*Cluster) ProviderEncryptEbsVolume

func (r *Cluster) ProviderEncryptEbsVolume() pulumi.BoolOutput

If enabled, the Amazon EBS encryption feature encrypts the server’s root volume for both data at rest within the volume and for data moving between the volume and the instance.

func (*Cluster) ProviderInstanceSizeName

func (r *Cluster) ProviderInstanceSizeName() pulumi.StringOutput

Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See [Create a Cluster](https://docs.atlas.mongodb.com/reference/api/clusters-create-one/) `providerSettings.instanceSizeName` for valid values and default resources.

func (*Cluster) ProviderName

func (r *Cluster) ProviderName() pulumi.StringOutput

Cloud service provider on which the servers are provisioned.

func (*Cluster) ProviderRegionName

func (r *Cluster) ProviderRegionName() pulumi.StringOutput

Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas Region name, see the reference list for [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/). Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.

func (*Cluster) ProviderVolumeType

func (r *Cluster) ProviderVolumeType() pulumi.StringOutput

The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` required if setting IOPS higher than the default instance IOPS.

func (*Cluster) ReplicationFactor

func (r *Cluster) ReplicationFactor() pulumi.IntOutput

Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.

func (*Cluster) ReplicationSpecs

func (r *Cluster) ReplicationSpecs() pulumi.ArrayOutput

Configuration for cluster regions. See Replication Spec below for more details.

func (*Cluster) SrvAddress

func (r *Cluster) SrvAddress() pulumi.StringOutput

Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.

func (*Cluster) StateName

func (r *Cluster) StateName() pulumi.StringOutput

Current state of the cluster. The possible states are: - IDLE - CREATING - UPDATING - DELETING - DELETED - REPAIRING

func (*Cluster) URN

func (r *Cluster) URN() pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ClusterArgs

type ClusterArgs struct {
	AdvancedConfiguration interface{}
	// Specifies whether disk auto-scaling is enabled. The default is true.
	// - Set to `true` to enable disk auto-scaling.
	// - Set to `false` to disable disk auto-scaling.
	AutoScalingDiskGbEnabled interface{}
	// Cloud service provider on which the server for a multi-tenant cluster is provisioned.  (Note: When upgrading from a multi-tenant cluster to a dedicated cluster remove this argument.)
	BackingProviderName interface{}
	// Set to true to enable Atlas continuous backups for the cluster.
	BackupEnabled interface{}
	// Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
	BiConnector interface{}
	// Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.
	ClusterType interface{}
	// The size in gigabytes of the server’s root volume. You can add capacity by increasing this number, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.
	DiskSizeGb interface{}
	// Set the Encryption at Rest parameter.  Possible values are AWS, GCP, AZURE or NONE.  Requires M10 or greater and for backupEnabled to be false or omitted.
	EncryptionAtRestProvider interface{}
	// Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: `3.4`, `3.6` or `4.0`. You must set this value to `4.0` if `providerInstanceSizeName` is either M2 or M5.
	MongoDbMajorVersion interface{}
	// Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed.
	Name interface{}
	// Number of shards to deploy in the specified zone.
	NumShards interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Flag indicating if the cluster uses Cloud Provider Snapshots for backups.
	ProviderBackupEnabled interface{}
	// The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected providerSettings.instanceSizeName and diskSizeGB.
	ProviderDiskIops interface{}
	// Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName.
	ProviderDiskTypeName interface{}
	// If enabled, the Amazon EBS encryption feature encrypts the server’s root volume for both data at rest within the volume and for data moving between the volume and the instance.
	ProviderEncryptEbsVolume interface{}
	// Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See [Create a Cluster](https://docs.atlas.mongodb.com/reference/api/clusters-create-one/) `providerSettings.instanceSizeName` for valid values and default resources.
	ProviderInstanceSizeName interface{}
	// Cloud service provider on which the servers are provisioned.
	ProviderName interface{}
	// Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases.  Requires the Atlas Region name, see the reference list for [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
	// Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
	ProviderRegionName interface{}
	// The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`.  `PROVISIONED` required if setting IOPS higher than the default instance IOPS.
	ProviderVolumeType interface{}
	// Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
	ReplicationFactor interface{}
	// Configuration for cluster regions.  See Replication Spec below for more details.
	ReplicationSpecs interface{}
}

The set of arguments for constructing a Cluster resource.

type ClusterState

type ClusterState struct {
	AdvancedConfiguration interface{}
	// Specifies whether disk auto-scaling is enabled. The default is true.
	// - Set to `true` to enable disk auto-scaling.
	// - Set to `false` to disable disk auto-scaling.
	AutoScalingDiskGbEnabled interface{}
	// Cloud service provider on which the server for a multi-tenant cluster is provisioned.  (Note: When upgrading from a multi-tenant cluster to a dedicated cluster remove this argument.)
	BackingProviderName interface{}
	// Set to true to enable Atlas continuous backups for the cluster.
	BackupEnabled interface{}
	// Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
	BiConnector interface{}
	// The cluster ID.
	ClusterId interface{}
	// Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.
	ClusterType interface{}
	// The size in gigabytes of the server’s root volume. You can add capacity by increasing this number, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.
	DiskSizeGb interface{}
	// Set the Encryption at Rest parameter.  Possible values are AWS, GCP, AZURE or NONE.  Requires M10 or greater and for backupEnabled to be false or omitted.
	EncryptionAtRestProvider interface{}
	// Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: `3.4`, `3.6` or `4.0`. You must set this value to `4.0` if `providerInstanceSizeName` is either M2 or M5.
	MongoDbMajorVersion interface{}
	// Version of MongoDB the cluster runs, in `major-version`.`minor-version` format.
	MongoDbVersion interface{}
	// Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
	MongoUri interface{}
	// Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
	MongoUriUpdated interface{}
	// connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
	MongoUriWithOptions interface{}
	// Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed.
	Name interface{}
	// Number of shards to deploy in the specified zone.
	NumShards interface{}
	// Flag that indicates whether the cluster is paused or not.
	Paused interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Flag indicating if the cluster uses Cloud Provider Snapshots for backups.
	ProviderBackupEnabled interface{}
	// The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected providerSettings.instanceSizeName and diskSizeGB.
	ProviderDiskIops interface{}
	// Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName.
	ProviderDiskTypeName interface{}
	// If enabled, the Amazon EBS encryption feature encrypts the server’s root volume for both data at rest within the volume and for data moving between the volume and the instance.
	ProviderEncryptEbsVolume interface{}
	// Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See [Create a Cluster](https://docs.atlas.mongodb.com/reference/api/clusters-create-one/) `providerSettings.instanceSizeName` for valid values and default resources.
	ProviderInstanceSizeName interface{}
	// Cloud service provider on which the servers are provisioned.
	ProviderName interface{}
	// Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases.  Requires the Atlas Region name, see the reference list for [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
	// Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
	ProviderRegionName interface{}
	// The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`.  `PROVISIONED` required if setting IOPS higher than the default instance IOPS.
	ProviderVolumeType interface{}
	// Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
	ReplicationFactor interface{}
	// Configuration for cluster regions.  See Replication Spec below for more details.
	ReplicationSpecs interface{}
	// Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
	SrvAddress interface{}
	// Current state of the cluster. The possible states are:
	// - IDLE
	// - CREATING
	// - UPDATING
	// - DELETING
	// - DELETED
	// - REPAIRING
	StateName interface{}
}

Input properties used for looking up and filtering Cluster resources.

type DatabaseUser

type DatabaseUser struct {
	// contains filtered or unexported fields
}

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/database_user.html.markdown.

func GetDatabaseUser

func GetDatabaseUser(ctx *pulumi.Context,
	name string, id pulumi.ID, state *DatabaseUserState, opts ...pulumi.ResourceOpt) (*DatabaseUser, error)

GetDatabaseUser gets an existing DatabaseUser resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDatabaseUser

func NewDatabaseUser(ctx *pulumi.Context,
	name string, args *DatabaseUserArgs, opts ...pulumi.ResourceOpt) (*DatabaseUser, error)

NewDatabaseUser registers a new resource with the given unique name, arguments, and options.

func (*DatabaseUser) DatabaseName

func (r *DatabaseUser) DatabaseName() pulumi.StringOutput

Database on which the user has the specified role. A role on the `admin` database can include privileges that apply to the other databases.

func (*DatabaseUser) ID

func (r *DatabaseUser) ID() pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*DatabaseUser) Password

func (r *DatabaseUser) Password() pulumi.StringOutput

User's initial password. This is required to create the user but may be removed after. Password may show up in logs, and it will be stored in the state file as plain-text. Password can be changed in the web interface to increase security.

func (*DatabaseUser) ProjectId

func (r *DatabaseUser) ProjectId() pulumi.StringOutput

The unique ID for the project to create the database user.

func (*DatabaseUser) Roles

func (r *DatabaseUser) Roles() pulumi.ArrayOutput

List of 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. A role on the admin database can include privileges that apply to the other databases as well. See Roles below for more details.

func (*DatabaseUser) URN

func (r *DatabaseUser) URN() pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*DatabaseUser) Username

func (r *DatabaseUser) Username() pulumi.StringOutput

Username for authenticating to MongoDB.

type DatabaseUserArgs

type DatabaseUserArgs struct {
	// 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 interface{}
	// User's initial password. This is required to create the user but may be removed after. Password may show up in logs, and it will be stored in the state file as plain-text. Password can be changed in the web interface to increase security.
	Password interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// List of 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. A role on the admin database can include privileges that apply to the other databases as well. See Roles below for more details.
	Roles interface{}
	// Username for authenticating to MongoDB.
	Username interface{}
}

The set of arguments for constructing a DatabaseUser resource.

type DatabaseUserState

type DatabaseUserState struct {
	// 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 interface{}
	// User's initial password. This is required to create the user but may be removed after. Password may show up in logs, and it will be stored in the state file as plain-text. Password can be changed in the web interface to increase security.
	Password interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// List of 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. A role on the admin database can include privileges that apply to the other databases as well. See Roles below for more details.
	Roles interface{}
	// Username for authenticating to MongoDB.
	Username interface{}
}

Input properties used for looking up and filtering DatabaseUser resources.

type EncryptionAtRest

type EncryptionAtRest struct {
	// contains filtered or unexported fields
}

`.EncryptionAtRest` Atlas encrypts your data at rest using encrypted storage media. Using keys you manage with AWS KMS, Atlas encrypts your data a second time when it writes it to the MongoDB encrypted storage engine. You can use the following clouds: AWS CMK, AZURE KEY VAULT and GOOGLE KEY VAULT to encrypt the MongoDB master encryption keys.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/encryption_at_rest.html.markdown.

func GetEncryptionAtRest

func GetEncryptionAtRest(ctx *pulumi.Context,
	name string, id pulumi.ID, state *EncryptionAtRestState, opts ...pulumi.ResourceOpt) (*EncryptionAtRest, error)

GetEncryptionAtRest gets an existing EncryptionAtRest resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEncryptionAtRest

func NewEncryptionAtRest(ctx *pulumi.Context,
	name string, args *EncryptionAtRestArgs, opts ...pulumi.ResourceOpt) (*EncryptionAtRest, error)

NewEncryptionAtRest registers a new resource with the given unique name, arguments, and options.

func (*EncryptionAtRest) AwsKms

func (r *EncryptionAtRest) AwsKms() pulumi.Output

Specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.

func (*EncryptionAtRest) AzureKeyVault

func (r *EncryptionAtRest) AzureKeyVault() pulumi.Output

Specifies Azure Key Vault configuration details and whether Encryption at Rest is enabled for an Atlas project.

func (*EncryptionAtRest) GoogleCloudKms

func (r *EncryptionAtRest) GoogleCloudKms() pulumi.Output

Specifies GCP KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.

func (*EncryptionAtRest) ID

ID is this resource's unique identifier assigned by its provider.

func (*EncryptionAtRest) ProjectId

func (r *EncryptionAtRest) ProjectId() pulumi.StringOutput

The unique identifier for the project.

func (*EncryptionAtRest) URN

URN is this resource's unique name assigned by Pulumi.

type EncryptionAtRestArgs

type EncryptionAtRestArgs struct {
	// Specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
	AwsKms interface{}
	// Specifies Azure Key Vault configuration details and whether Encryption at Rest is enabled for an Atlas project.
	AzureKeyVault interface{}
	// Specifies GCP KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
	GoogleCloudKms interface{}
	// The unique identifier for the project.
	ProjectId interface{}
}

The set of arguments for constructing a EncryptionAtRest resource.

type EncryptionAtRestState

type EncryptionAtRestState struct {
	// Specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
	AwsKms interface{}
	// Specifies Azure Key Vault configuration details and whether Encryption at Rest is enabled for an Atlas project.
	AzureKeyVault interface{}
	// Specifies GCP KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
	GoogleCloudKms interface{}
	// The unique identifier for the project.
	ProjectId interface{}
}

Input properties used for looking up and filtering EncryptionAtRest resources.

type GetCloudProviderSnapshotArgs

type GetCloudProviderSnapshotArgs struct {
	// The name of the Atlas cluster that contains the snapshot you want to retrieve.
	ClusterName interface{}
	ProjectId   interface{}
	// The unique identifier of the snapshot you want to retrieve.
	SnapshotId interface{}
}

A collection of arguments for invoking getCloudProviderSnapshot.

type GetCloudProviderSnapshotRestoreJobArgs

type GetCloudProviderSnapshotRestoreJobArgs struct {
	// The name of the Atlas cluster for which you want to retrieve the restore job.
	ClusterName interface{}
	// The unique identifier of the restore job to retrieve.
	JobId interface{}
	// The unique identifier of the project for the Atlas cluster.
	ProjectId interface{}
}

A collection of arguments for invoking getCloudProviderSnapshotRestoreJob.

type GetCloudProviderSnapshotRestoreJobResult

type GetCloudProviderSnapshotRestoreJobResult struct {
	// Indicates whether the restore job was canceled.
	Cancelled   interface{}
	ClusterName interface{}
	// UTC ISO 8601 formatted point in time when Atlas created the restore job.
	CreatedAt interface{}
	// Type of restore job to create. Possible values are: automated and download.
	DeliveryType interface{}
	// One or more URLs for the compressed snapshot files for manual download. Only visible if deliveryType is download.
	DeliveryUrls interface{}
	// Indicates whether the restore job expired.
	Expired interface{}
	// UTC ISO 8601 formatted point in time when the restore job expires.
	ExpiresAt interface{}
	// UTC ISO 8601 formatted point in time when the restore job completed.
	FinishedAt interface{}
	JobId      interface{}
	ProjectId  interface{}
	// Unique identifier of the source snapshot ID of the restore job.
	SnapshotId interface{}
	// Name of the target Atlas cluster to which the restore job restores the snapshot. Only visible if deliveryType is automated.
	TargetClusterName interface{}
	TargetProjectId   interface{}
	// Timestamp in ISO 8601 date and time format in UTC when the snapshot associated to snapshotId was taken.
	Timestamp interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCloudProviderSnapshotRestoreJob.

func LookupCloudProviderSnapshotRestoreJob

func LookupCloudProviderSnapshotRestoreJob(ctx *pulumi.Context, args *GetCloudProviderSnapshotRestoreJobArgs) (*GetCloudProviderSnapshotRestoreJobResult, error)

`.CloudProviderSnapshotRestoreJob` provides a Cloud Provider Snapshot Restore Job entry datasource. Gets all cloud provider snapshot restore jobs for the specified cluster.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/cloud_provider_snapshot_restore_job.html.markdown.

type GetCloudProviderSnapshotRestoreJobsArgs

type GetCloudProviderSnapshotRestoreJobsArgs struct {
	// The name of the Atlas cluster for which you want to retrieve restore jobs.
	ClusterName interface{}
	// The unique identifier of the project for the Atlas cluster.
	ProjectId interface{}
}

A collection of arguments for invoking getCloudProviderSnapshotRestoreJobs.

type GetCloudProviderSnapshotRestoreJobsResult

type GetCloudProviderSnapshotRestoreJobsResult struct {
	ClusterName interface{}
	ProjectId   interface{}
	// Includes cloudProviderSnapshotRestoreJob object for each item detailed in the results array section.
	Results    interface{}
	TotalCount interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCloudProviderSnapshotRestoreJobs.

func LookupCloudProviderSnapshotRestoreJobs

func LookupCloudProviderSnapshotRestoreJobs(ctx *pulumi.Context, args *GetCloudProviderSnapshotRestoreJobsArgs) (*GetCloudProviderSnapshotRestoreJobsResult, error)

`.getCloudProviderSnapshotRestoreJobs` provides a Cloud Provider Snapshot Restore Jobs entry datasource. Gets all cloud provider snapshot restore jobs for the specified cluster.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/cloud_provider_snapshot_restore_jobs.html.markdown.

type GetCloudProviderSnapshotResult

type GetCloudProviderSnapshotResult struct {
	ClusterName interface{}
	// UTC ISO 8601 formatted point in time when Atlas took the snapshot.
	CreatedAt interface{}
	// UDescription of the snapshot. Only present for on-demand snapshots.
	Description interface{}
	// UTC ISO 8601 formatted point in time when Atlas will delete the snapshot.
	ExpiresAt interface{}
	// Unique ID of the AWS KMS Customer Master Key used to encrypt the snapshot. Only visible for clusters using Encryption at Rest via Customer KMS.
	MasterKeyUuid interface{}
	// Version of the MongoDB server.
	MongodVersion interface{}
	ProjectId     interface{}
	SnapshotId    interface{}
	// Specified the type of snapshot. Valid values are onDemand and scheduled.
	SnapshotType interface{}
	// Current status of the snapshot. One of the following values: queued, inProgress, completed, failed.
	Status interface{}
	// Specifies the size of the snapshot in bytes.
	StorageSizeBytes interface{}
	// Specifies the type of cluster: replicaSet or shardedCluster.
	Type interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCloudProviderSnapshot.

func LookupCloudProviderSnapshot

func LookupCloudProviderSnapshot(ctx *pulumi.Context, args *GetCloudProviderSnapshotArgs) (*GetCloudProviderSnapshotResult, error)

`.CloudProviderSnapshot` provides an Cloud Provider Snapshot entry datasource. Atlas Cloud Provider Snapshots provide localized backup storage using the native snapshot functionality of the cluster’s cloud service provider.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/cloud_provider_snapshot.html.markdown.

type GetCloudProviderSnapshotsArgs

type GetCloudProviderSnapshotsArgs struct {
	// The name of the Atlas cluster that contains the snapshot you want to retrieve.
	ClusterName interface{}
	ProjectId   interface{}
}

A collection of arguments for invoking getCloudProviderSnapshots.

type GetCloudProviderSnapshotsResult

type GetCloudProviderSnapshotsResult struct {
	ClusterName interface{}
	ProjectId   interface{}
	// Includes cloudProviderSnapshot object for each item detailed in the results array section.
	Results    interface{}
	TotalCount interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCloudProviderSnapshots.

func LookupCloudProviderSnapshots

func LookupCloudProviderSnapshots(ctx *pulumi.Context, args *GetCloudProviderSnapshotsArgs) (*GetCloudProviderSnapshotsResult, error)

`.getCloudProviderSnapshots` provides an Cloud Provider Snapshot entry datasource. Atlas Cloud Provider Snapshots provide localized backup storage using the native snapshot functionality of the cluster’s cloud service provider.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/cloud_provider_snapshots.html.markdown.

type GetClusterArgs

type GetClusterArgs struct {
	// Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed.
	Name interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
}

A collection of arguments for invoking getCluster.

type GetClusterResult

type GetClusterResult struct {
	// Indicates whether disk auto-scaling is enabled.
	AutoScalingDiskGbEnabled interface{}
	// Indicates Cloud service provider on which the server for a multi-tenant cluster is provisioned.
	BackingProviderName interface{}
	// Indicates whether Atlas continuous backups are enabled for the cluster.
	BackupEnabled interface{}
	// Indicates BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
	BiConnector interface{}
	// Indicates the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.
	ClusterType interface{}
	// Indicates the size in gigabytes of the server’s root volume.
	DiskSizeGb interface{}
	// Indicates whether Encryption at Rest is enabled or disabled.
	EncryptionAtRestProvider interface{}
	// Indicates the version of the cluster to deploy.
	MongoDbMajorVersion interface{}
	// Version of MongoDB the cluster runs, in `major-version`.`minor-version` format.
	MongoDbVersion interface{}
	// Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
	MongoUri interface{}
	// Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
	MongoUriUpdated interface{}
	// Describes connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
	MongoUriWithOptions interface{}
	// Name of the cluster as it appears in Atlas.
	Name interface{}
	// Number of shards to deploy in the specified zone.
	NumShards interface{}
	// Flag that indicates whether the cluster is paused or not.
	Paused    interface{}
	ProjectId interface{}
	// Flag indicating if the cluster uses Cloud Provider Snapshots for backups.
	ProviderBackupEnabled interface{}
	// Indicates the maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected providerSettings.instanceSizeName and diskSizeGB.
	ProviderDiskIops interface{}
	// Describes Azure disk type of the server’s root volume.
	ProviderDiskTypeName interface{}
	// Indicates whether the Amazon EBS encryption is enabled. This feature encrypts the server’s root volume for both data at rest within the volume and data moving between the volume and the instance.
	ProviderEncryptEbsVolume interface{}
	// Atlas provides different instance sizes, each with a default storage capacity and RAM size.
	ProviderInstanceSizeName interface{}
	// Indicates the cloud service provider on which the servers are provisioned.
	ProviderName interface{}
	// Indicates Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases.  Requires the Atlas Region name, see the reference list for [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
	ProviderRegionName interface{}
	// Indicates the type of the volume. The possible values are: `STANDARD` and `PROVISIONED`.
	ProviderVolumeType interface{}
	// Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
	ReplicationFactor interface{}
	// Configuration for cluster regions.  See Replication Spec below for more details.
	ReplicationSpecs interface{}
	// Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
	SrvAddress interface{}
	// Indicates the current state of the cluster. The possible states are:
	// - IDLE
	// - CREATING
	// - UPDATING
	// - DELETING
	// - DELETED
	// - REPAIRING
	StateName interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCluster.

func LookupCluster

func LookupCluster(ctx *pulumi.Context, args *GetClusterArgs) (*GetClusterResult, error)

`.Cluster` describes a Cluster. The. The data source requires your Project ID.

> **NOTE:** Groups and projects are synonymous terms. You may find groupId in the official documentation.

> **IMPORTANT:** <br> &#8226; Changes to cluster configurations can affect costs. Before making changes, please see [Billing](https://docs.atlas.mongodb.com/billing/). <br> &#8226; If your Atlas project contains a custom role that uses actions introduced in a specific MongoDB version, you cannot create a cluster with a MongoDB version less than that version unless you delete the custom role.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/cluster.html.markdown.

type GetClustersArgs

type GetClustersArgs struct {
	// The unique ID for the project to get the clusters.
	ProjectId interface{}
}

A collection of arguments for invoking getClusters.

type GetClustersResult

type GetClustersResult struct {
	ProjectId interface{}
	// A list where each represents a Cluster. See Cluster below for more details.
	Results interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getClusters.

func LookupClusters

func LookupClusters(ctx *pulumi.Context, args *GetClustersArgs) (*GetClustersResult, error)

`.Cluster` describes all Clusters by the provided project_id. The data source requires your Project ID.

> **NOTE:** Groups and projects are synonymous terms. You may find groupId in the official documentation.

> **IMPORTANT:** <br> &#8226; Changes to cluster configurations can affect costs. Before making changes, please see [Billing](https://docs.atlas.mongodb.com/billing/). <br> &#8226; If your Atlas project contains a custom role that uses actions introduced in a specific MongoDB version, you cannot create a cluster with a MongoDB version less than that version unless you delete the custom role.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/clusters.html.markdown.

type GetDatabaseUserArgs

type GetDatabaseUserArgs struct {
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Username for authenticating to MongoDB.
	Username interface{}
}

A collection of arguments for invoking getDatabaseUser.

type GetDatabaseUserResult

type GetDatabaseUserResult struct {
	// 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 interface{}
	ProjectId    interface{}
	// List of 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. A role on the admin database can include privileges that apply to the other databases as well. See Roles below for more details.
	Roles    interface{}
	Username interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getDatabaseUser.

func LookupDatabaseUser

func LookupDatabaseUser(ctx *pulumi.Context, args *GetDatabaseUserArgs) (*GetDatabaseUserResult, error)

`.DatabaseUser` describe a Database User. This represents a database user which will be applied to all clusters within the project.

Each user has a set of roles that provide access to the project’s databases. User's roles apply to all the clusters in the project: if two clusters have a `products` database and a user has a role granting `read` access on the products database, the user has that access on both clusters.

> **NOTE:** Groups and projects are synonymous terms. You may find groupId in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/database_user.html.markdown.

type GetDatabaseUsersArgs

type GetDatabaseUsersArgs struct {
	// The unique ID for the project to get all database users.
	ProjectId interface{}
}

A collection of arguments for invoking getDatabaseUsers.

type GetDatabaseUsersResult

type GetDatabaseUsersResult struct {
	// ID of the Atlas project the user belongs to.
	ProjectId interface{}
	// A list where each represents a Database user.
	Results interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getDatabaseUsers.

func LookupDatabaseUsers

func LookupDatabaseUsers(ctx *pulumi.Context, args *GetDatabaseUsersArgs) (*GetDatabaseUsersResult, error)

`.getDatabaseUsers` describe all Database Users. This represents a database user which will be applied to all clusters within the project.

Each user has a set of roles that provide access to the project’s databases. User's roles apply to all the clusters in the project: if two clusters have a `products` database and a user has a role granting `read` access on the products database, the user has that access on both clusters.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/database_users.html.markdown.

type GetNetworkContainerArgs

type GetNetworkContainerArgs struct {
	// The Network Peering Container ID.
	ContainerId interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
}

A collection of arguments for invoking getNetworkContainer.

type GetNetworkContainerResult

type GetNetworkContainerResult struct {
	// CIDR block that Atlas uses for your clusters. Atlas uses the specified CIDR block for all other Network Peering connections created in the project. The Atlas CIDR block must be at least a /24 and at most a /21 in one of the following [private networks](https://tools.ietf.org/html/rfc1918.html#section-3).
	AtlasCidrBlock interface{}
	// Unique identifer of the Azure subscription in which the VNet resides.
	AzureSubscriptionId interface{}
	ContainerId         interface{}
	// Unique identifier of the GCP project in which the Network Peering connection resides.
	GcpProjectId interface{}
	// Name of the Network Peering connection in the Atlas project.
	NetworkName interface{}
	ProjectId   interface{}
	// Cloud provider for this Network Peering connection. If omitted, Atlas sets this parameter to AWS.
	ProviderName interface{}
	// Indicates whether the project has Network Peering connections deployed in the container.
	Provisioned interface{}
	// Azure region where the container resides.
	Region interface{}
	// AWS region.
	RegionName interface{}
	// The name of the Azure VNet. This value is null until you provision an Azure VNet in the container.
	VnetName interface{}
	// Unique identifier of the project’s VPC.
	VpcId interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNetworkContainer.

func LookupNetworkContainer

func LookupNetworkContainer(ctx *pulumi.Context, args *GetNetworkContainerArgs) (*GetNetworkContainerResult, error)

`.NetworkContainer` describes a Network Peering Container. The resource requires your Project ID and container ID.

> **IMPORTANT:** This resource creates one Network Peering container into which Atlas can deploy Network Peering connections. An Atlas project can have a maximum of one container for each cloud provider. You must have either the Project Owner or Organization Owner role to successfully call this endpoint.

> **NOTE:** Groups and projects are synonymous terms. You may find **group_id** in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/network_container.html.markdown.

type GetNetworkContainersArgs

type GetNetworkContainersArgs struct {
	// The unique ID for the project to create the database user.
	ProjectId interface{}
}

A collection of arguments for invoking getNetworkContainers.

type GetNetworkContainersResult

type GetNetworkContainersResult struct {
	ProjectId interface{}
	// A list where each represents a Network Peering Container.
	Results interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNetworkContainers.

func LookupNetworkContainers

func LookupNetworkContainers(ctx *pulumi.Context, args *GetNetworkContainersArgs) (*GetNetworkContainersResult, error)

`.getNetworkContainers` describes all Network Peering Containers. The data source requires your Project ID.

> **NOTE:** Groups and projects are synonymous terms. You may find **group_id** in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/network_containers.html.markdown.

type GetNetworkPeeringArgs

type GetNetworkPeeringArgs struct {
	// Atlas assigned unique ID for the peering connection.
	PeeringId interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
}

A collection of arguments for invoking getNetworkPeering.

type GetNetworkPeeringResult

type GetNetworkPeeringResult struct {
	// Specifies the region where the peer VPC resides. For complete lists of supported regions, see [Amazon Web Services](https://docs.atlas.mongodb.com/reference/amazon-aws/).
	AccepterRegionName interface{}
	// Unique identifier for an Azure AD directory.
	AtlasCidrBlock interface{}
	AtlasId        interface{}
	// Account ID of the owner of the peer VPC.
	AwsAccountId interface{}
	// Unique identifier for an Azure AD directory.
	AzureDirectoryId interface{}
	// Unique identifer of the Azure subscription in which the VNet resides.
	AzureSubscriptionId interface{}
	// Unique identifier for the peering connection.
	ConnectionId interface{}
	ContainerId  interface{}
	// When `"status" : "FAILED"`, Atlas provides a description of the error.
	ErrorMessage interface{}
	// Description of the Atlas error when `status` is `Failed`, Otherwise, Atlas returns `null`.
	ErrorState interface{}
	// Error state, if any. The VPC peering connection error state value can be one of the following: `REJECTED`, `EXPIRED`, `INVALID_ARGUMENT`.
	ErrorStateName interface{}
	// GCP project ID of the owner of the network peer.
	GcpProjectId interface{}
	// Name of the network peer to which Atlas connects.
	NetworkName interface{}
	PeeringId   interface{}
	ProjectId   interface{}
	// Cloud provider for this VPC peering connection. If omitted, Atlas sets this parameter to AWS. (Possible Values `AWS`, `AZURE`, `GCP`).
	ProviderName interface{}
	// Name of your Azure resource group.
	ResourceGroupName interface{}
	// Peer VPC CIDR block or subnet.
	RouteTableCidrBlock interface{}
	// Status of the Atlas network peering connection: `ADDING_PEER`, `AVAILABLE`, `FAILED`, `DELETING`, `WAITING_FOR_USER`.
	Status interface{}
	// The VPC peering connection status value can be one of the following: `INITIATING`, `PENDING_ACCEPTANCE`, `FAILED`, `FINALIZING`, `AVAILABLE`, `TERMINATING`.
	StatusName interface{}
	// Name of your Azure VNet.
	VnetName interface{}
	// Unique identifier of the peer VPC.
	VpcId interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNetworkPeering.

func LookupNetworkPeering

func LookupNetworkPeering(ctx *pulumi.Context, args *GetNetworkPeeringArgs) (*GetNetworkPeeringResult, error)

`.NetworkPeering` describes a Network Peering Connection.

> **NOTE:** Groups and projects are synonymous terms. You may find **group_id** in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/network_peering.html.markdown.

type GetNetworkPeeringsArgs

type GetNetworkPeeringsArgs struct {
	// The unique ID for the project to create the database user.
	ProjectId interface{}
}

A collection of arguments for invoking getNetworkPeerings.

type GetNetworkPeeringsResult

type GetNetworkPeeringsResult struct {
	ProjectId interface{}
	// A list where each represents a Network Peering Connection.
	Results interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNetworkPeerings.

func LookupNetworkPeerings

func LookupNetworkPeerings(ctx *pulumi.Context, args *GetNetworkPeeringsArgs) (*GetNetworkPeeringsResult, error)

`.getNetworkPeerings` describes all Network Peering Connections.

> **NOTE:** Groups and projects are synonymous terms. You may find **group_id** in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/d/network_peerings.html.markdown.

type GetProjectArgs

type GetProjectArgs struct {
	Name interface{}
}

A collection of arguments for invoking getProject.

type GetProjectResult

type GetProjectResult struct {
	ClusterCount interface{}
	Created      interface{}
	Name         interface{}
	OrgId        interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getProject.

func LookupProject

func LookupProject(ctx *pulumi.Context, args *GetProjectArgs) (*GetProjectResult, error)

type GetProjectsResult

type GetProjectsResult struct {
	Results    interface{}
	TotalCount interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getProjects.

func LookupProjects

func LookupProjects(ctx *pulumi.Context) (*GetProjectsResult, error)

type NetworkContainer

type NetworkContainer struct {
	// contains filtered or unexported fields
}

`.NetworkContainer` provides a Network Peering Container resource. The resource lets you create, edit and delete network peering containers. The resource requires your Project ID.

> **IMPORTANT:** This resource creates one Network Peering container into which Atlas can deploy Network Peering connections. An Atlas project can have a maximum of one container for each cloud provider. You must have either the Project Owner or Organization Owner role to successfully call this endpoint.

> **NOTE:** Groups and projects are synonymous terms. You may find **group_id** in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/network_container.html.markdown.

func GetNetworkContainer

func GetNetworkContainer(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NetworkContainerState, opts ...pulumi.ResourceOpt) (*NetworkContainer, error)

GetNetworkContainer gets an existing NetworkContainer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkContainer

func NewNetworkContainer(ctx *pulumi.Context,
	name string, args *NetworkContainerArgs, opts ...pulumi.ResourceOpt) (*NetworkContainer, error)

NewNetworkContainer registers a new resource with the given unique name, arguments, and options.

func (*NetworkContainer) AtlasCidrBlock

func (r *NetworkContainer) AtlasCidrBlock() pulumi.StringOutput

CIDR block that Atlas uses for your clusters. Atlas uses the specified CIDR block for all other Network Peering connections created in the project. The Atlas CIDR block must be at least a /24 and at most a /21 in one of the following [private networks](https://tools.ietf.org/html/rfc1918.html#section-3).

func (*NetworkContainer) AzureSubscriptionId

func (r *NetworkContainer) AzureSubscriptionId() pulumi.StringOutput

Unique identifer of the Azure subscription in which the VNet resides.

func (*NetworkContainer) ContainerId

func (r *NetworkContainer) ContainerId() pulumi.StringOutput

The Network Peering Container ID.

func (*NetworkContainer) GcpProjectId

func (r *NetworkContainer) GcpProjectId() pulumi.StringOutput

Unique identifier of the GCP project in which the Network Peering connection resides.

func (*NetworkContainer) ID

ID is this resource's unique identifier assigned by its provider.

func (*NetworkContainer) NetworkName

func (r *NetworkContainer) NetworkName() pulumi.StringOutput

Name of the Network Peering connection in the Atlas project.

func (*NetworkContainer) ProjectId

func (r *NetworkContainer) ProjectId() pulumi.StringOutput

The unique ID for the project to create the database user.

func (*NetworkContainer) ProviderName

func (r *NetworkContainer) ProviderName() pulumi.StringOutput

Cloud provider for this Network Peering connection. If omitted, Atlas sets this parameter to AWS.

func (*NetworkContainer) Provisioned

func (r *NetworkContainer) Provisioned() pulumi.BoolOutput

Indicates whether the project has Network Peering connections deployed in the container.

func (*NetworkContainer) Region

func (r *NetworkContainer) Region() pulumi.StringOutput

Azure region where the container resides.

func (*NetworkContainer) RegionName

func (r *NetworkContainer) RegionName() pulumi.StringOutput

AWS region.

func (*NetworkContainer) URN

URN is this resource's unique name assigned by Pulumi.

func (*NetworkContainer) VnetName

func (r *NetworkContainer) VnetName() pulumi.StringOutput

The name of the Azure VNet. This value is null until you provision an Azure VNet in the container.

func (*NetworkContainer) VpcId

Unique identifier of the project’s VPC.

type NetworkContainerArgs

type NetworkContainerArgs struct {
	// CIDR block that Atlas uses for your clusters. Atlas uses the specified CIDR block for all other Network Peering connections created in the project. The Atlas CIDR block must be at least a /24 and at most a /21 in one of the following [private networks](https://tools.ietf.org/html/rfc1918.html#section-3).
	AtlasCidrBlock interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Cloud provider for this Network Peering connection. If omitted, Atlas sets this parameter to AWS.
	ProviderName interface{}
	// Azure region where the container resides.
	Region interface{}
	// AWS region.
	RegionName interface{}
}

The set of arguments for constructing a NetworkContainer resource.

type NetworkContainerState

type NetworkContainerState struct {
	// CIDR block that Atlas uses for your clusters. Atlas uses the specified CIDR block for all other Network Peering connections created in the project. The Atlas CIDR block must be at least a /24 and at most a /21 in one of the following [private networks](https://tools.ietf.org/html/rfc1918.html#section-3).
	AtlasCidrBlock interface{}
	// Unique identifer of the Azure subscription in which the VNet resides.
	AzureSubscriptionId interface{}
	// The Network Peering Container ID.
	ContainerId interface{}
	// Unique identifier of the GCP project in which the Network Peering connection resides.
	GcpProjectId interface{}
	// Name of the Network Peering connection in the Atlas project.
	NetworkName interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Cloud provider for this Network Peering connection. If omitted, Atlas sets this parameter to AWS.
	ProviderName interface{}
	// Indicates whether the project has Network Peering connections deployed in the container.
	Provisioned interface{}
	// Azure region where the container resides.
	Region interface{}
	// AWS region.
	RegionName interface{}
	// The name of the Azure VNet. This value is null until you provision an Azure VNet in the container.
	VnetName interface{}
	// Unique identifier of the project’s VPC.
	VpcId interface{}
}

Input properties used for looking up and filtering NetworkContainer resources.

type NetworkPeering

type NetworkPeering struct {
	// contains filtered or unexported fields
}

`.NetworkPeering` provides a Network Peering Connection resource. The resource lets you create, edit and delete network peering connections. The resource requires your Project ID.

> **GCP AND AZURE ONLY:** You must enable Connect via Peering Only mode to use network peering.

> **NOTE:** Groups and projects are synonymous terms. You may find **group_id** in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/network_peering.html.markdown.

func GetNetworkPeering

func GetNetworkPeering(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NetworkPeeringState, opts ...pulumi.ResourceOpt) (*NetworkPeering, error)

GetNetworkPeering gets an existing NetworkPeering resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetworkPeering

func NewNetworkPeering(ctx *pulumi.Context,
	name string, args *NetworkPeeringArgs, opts ...pulumi.ResourceOpt) (*NetworkPeering, error)

NewNetworkPeering registers a new resource with the given unique name, arguments, and options.

func (*NetworkPeering) AccepterRegionName

func (r *NetworkPeering) AccepterRegionName() pulumi.StringOutput

Specifies the region where the peer VPC resides. For complete lists of supported regions, see [Amazon Web Services](https://docs.atlas.mongodb.com/reference/amazon-aws/).

func (*NetworkPeering) AtlasCidrBlock

func (r *NetworkPeering) AtlasCidrBlock() pulumi.StringOutput

Unique identifier for an Azure AD directory.

func (*NetworkPeering) AtlasGcpProjectId

func (r *NetworkPeering) AtlasGcpProjectId() pulumi.StringOutput

The Atlas GCP Project ID for the GCP VPC used by your atlas cluster that it is need to set up the reciprocal connection.

func (*NetworkPeering) AtlasId

func (r *NetworkPeering) AtlasId() pulumi.StringOutput

func (*NetworkPeering) AtlasVpcName

func (r *NetworkPeering) AtlasVpcName() pulumi.StringOutput

The Atlas VPC Name is used by your atlas clister that it is need to set up the reciprocal connection.

func (*NetworkPeering) AwsAccountId

func (r *NetworkPeering) AwsAccountId() pulumi.StringOutput

Account ID of the owner of the peer VPC.

func (*NetworkPeering) AzureDirectoryId

func (r *NetworkPeering) AzureDirectoryId() pulumi.StringOutput

Unique identifier for an Azure AD directory.

func (*NetworkPeering) AzureSubscriptionId

func (r *NetworkPeering) AzureSubscriptionId() pulumi.StringOutput

Unique identifer of the Azure subscription in which the VNet resides.

func (*NetworkPeering) ConnectionId

func (r *NetworkPeering) ConnectionId() pulumi.StringOutput

Unique identifier for the peering connection.

func (*NetworkPeering) ContainerId

func (r *NetworkPeering) ContainerId() pulumi.StringOutput

Unique identifier of the Atlas VPC container for the region. You can create an Atlas VPC container using the Create Container endpoint. You cannot create more than one container per region. To retrieve a list of container IDs, use the Get list of VPC containers endpoint.

func (*NetworkPeering) ErrorMessage

func (r *NetworkPeering) ErrorMessage() pulumi.StringOutput

When `"status" : "FAILED"`, Atlas provides a description of the error.

func (*NetworkPeering) ErrorState

func (r *NetworkPeering) ErrorState() pulumi.StringOutput

Description of the Atlas error when `status` is `Failed`, Otherwise, Atlas returns `null`.

func (*NetworkPeering) ErrorStateName

func (r *NetworkPeering) ErrorStateName() pulumi.StringOutput

Error state, if any. The VPC peering connection error state value can be one of the following: `REJECTED`, `EXPIRED`, `INVALID_ARGUMENT`.

func (*NetworkPeering) GcpProjectId

func (r *NetworkPeering) GcpProjectId() pulumi.StringOutput

GCP project ID of the owner of the network peer.

func (*NetworkPeering) ID

func (r *NetworkPeering) ID() pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*NetworkPeering) NetworkName

func (r *NetworkPeering) NetworkName() pulumi.StringOutput

Name of the network peer to which Atlas connects.

func (*NetworkPeering) PeerId

func (r *NetworkPeering) PeerId() pulumi.StringOutput

The Network Peering Container ID.

func (*NetworkPeering) ProjectId

func (r *NetworkPeering) ProjectId() pulumi.StringOutput

The unique ID for the project to create the database user.

func (*NetworkPeering) ProviderName

func (r *NetworkPeering) ProviderName() pulumi.StringOutput

Cloud provider for this VPC peering connection. If omitted, Atlas sets this parameter to AWS. (Possible Values `AWS`, `AZURE`, `GCP`).

func (*NetworkPeering) ResourceGroupName

func (r *NetworkPeering) ResourceGroupName() pulumi.StringOutput

Name of your Azure resource group.

func (*NetworkPeering) RouteTableCidrBlock

func (r *NetworkPeering) RouteTableCidrBlock() pulumi.StringOutput

Peer VPC CIDR block or subnet.

func (*NetworkPeering) Status

func (r *NetworkPeering) Status() pulumi.StringOutput

Status of the Atlas network peering connection: `ADDING_PEER`, `AVAILABLE`, `FAILED`, `DELETING`, `WAITING_FOR_USER`.

func (*NetworkPeering) StatusName

func (r *NetworkPeering) StatusName() pulumi.StringOutput

The VPC peering connection status value can be one of the following: `INITIATING`, `PENDING_ACCEPTANCE`, `FAILED`, `FINALIZING`, `AVAILABLE`, `TERMINATING`.

func (*NetworkPeering) URN

func (r *NetworkPeering) URN() pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*NetworkPeering) VnetName

func (r *NetworkPeering) VnetName() pulumi.StringOutput

Name of your Azure VNet.

func (*NetworkPeering) VpcId

func (r *NetworkPeering) VpcId() pulumi.StringOutput

Unique identifier of the peer VPC.

type NetworkPeeringArgs

type NetworkPeeringArgs struct {
	// Specifies the region where the peer VPC resides. For complete lists of supported regions, see [Amazon Web Services](https://docs.atlas.mongodb.com/reference/amazon-aws/).
	AccepterRegionName interface{}
	// Unique identifier for an Azure AD directory.
	AtlasCidrBlock interface{}
	// The Atlas GCP Project ID for the GCP VPC used by your atlas cluster that it is need to set up the reciprocal connection.
	AtlasGcpProjectId interface{}
	// The Atlas VPC Name is used by your atlas clister that it is need to set up the reciprocal connection.
	AtlasVpcName interface{}
	// Account ID of the owner of the peer VPC.
	AwsAccountId interface{}
	// Unique identifier for an Azure AD directory.
	AzureDirectoryId interface{}
	// Unique identifer of the Azure subscription in which the VNet resides.
	AzureSubscriptionId interface{}
	// Unique identifier of the Atlas VPC container for the region. You can create an Atlas VPC container using the Create Container endpoint. You cannot create more than one container per region. To retrieve a list of container IDs, use the Get list of VPC containers endpoint.
	ContainerId interface{}
	// GCP project ID of the owner of the network peer.
	GcpProjectId interface{}
	// Name of the network peer to which Atlas connects.
	NetworkName interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Cloud provider for this VPC peering connection. If omitted, Atlas sets this parameter to AWS. (Possible Values `AWS`, `AZURE`, `GCP`).
	ProviderName interface{}
	// Name of your Azure resource group.
	ResourceGroupName interface{}
	// Peer VPC CIDR block or subnet.
	RouteTableCidrBlock interface{}
	// Name of your Azure VNet.
	VnetName interface{}
	// Unique identifier of the peer VPC.
	VpcId interface{}
}

The set of arguments for constructing a NetworkPeering resource.

type NetworkPeeringState

type NetworkPeeringState struct {
	// Specifies the region where the peer VPC resides. For complete lists of supported regions, see [Amazon Web Services](https://docs.atlas.mongodb.com/reference/amazon-aws/).
	AccepterRegionName interface{}
	// Unique identifier for an Azure AD directory.
	AtlasCidrBlock interface{}
	// The Atlas GCP Project ID for the GCP VPC used by your atlas cluster that it is need to set up the reciprocal connection.
	AtlasGcpProjectId interface{}
	AtlasId           interface{}
	// The Atlas VPC Name is used by your atlas clister that it is need to set up the reciprocal connection.
	AtlasVpcName interface{}
	// Account ID of the owner of the peer VPC.
	AwsAccountId interface{}
	// Unique identifier for an Azure AD directory.
	AzureDirectoryId interface{}
	// Unique identifer of the Azure subscription in which the VNet resides.
	AzureSubscriptionId interface{}
	// Unique identifier for the peering connection.
	ConnectionId interface{}
	// Unique identifier of the Atlas VPC container for the region. You can create an Atlas VPC container using the Create Container endpoint. You cannot create more than one container per region. To retrieve a list of container IDs, use the Get list of VPC containers endpoint.
	ContainerId interface{}
	// When `"status" : "FAILED"`, Atlas provides a description of the error.
	ErrorMessage interface{}
	// Description of the Atlas error when `status` is `Failed`, Otherwise, Atlas returns `null`.
	ErrorState interface{}
	// Error state, if any. The VPC peering connection error state value can be one of the following: `REJECTED`, `EXPIRED`, `INVALID_ARGUMENT`.
	ErrorStateName interface{}
	// GCP project ID of the owner of the network peer.
	GcpProjectId interface{}
	// Name of the network peer to which Atlas connects.
	NetworkName interface{}
	// The Network Peering Container ID.
	PeerId interface{}
	// The unique ID for the project to create the database user.
	ProjectId interface{}
	// Cloud provider for this VPC peering connection. If omitted, Atlas sets this parameter to AWS. (Possible Values `AWS`, `AZURE`, `GCP`).
	ProviderName interface{}
	// Name of your Azure resource group.
	ResourceGroupName interface{}
	// Peer VPC CIDR block or subnet.
	RouteTableCidrBlock interface{}
	// Status of the Atlas network peering connection: `ADDING_PEER`, `AVAILABLE`, `FAILED`, `DELETING`, `WAITING_FOR_USER`.
	Status interface{}
	// The VPC peering connection status value can be one of the following: `INITIATING`, `PENDING_ACCEPTANCE`, `FAILED`, `FINALIZING`, `AVAILABLE`, `TERMINATING`.
	StatusName interface{}
	// Name of your Azure VNet.
	VnetName interface{}
	// Unique identifier of the peer VPC.
	VpcId interface{}
}

Input properties used for looking up and filtering NetworkPeering resources.

type PrivateIpMode

type PrivateIpMode struct {
	// contains filtered or unexported fields
}

`.PrivateIpMode` provides a Private IP Mode resource. This allows one to enable/disable Connect via Peering Only mode for a MongoDB Atlas Project.

> **IMPORTANT**: <br>**What is Connect via Peering Only Mode?** <br>Connect via Peering Only mode prevents clusters in an Atlas project from connecting to any network destination other than an Atlas Network Peer. Connect via Peering Only mode applies only to **GCP** and **Azure-backed** dedicated clusters. This setting disables the ability to: <br><br>• Deploy non-GCP or Azure-backed dedicated clusters in an Atlas project, and <br>• Use MongoDB Stitch with dedicated clusters in an Atlas project.

> **NOTE:** You should create one privateIpMode per project.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/private_ip_mode.html.markdown.

func GetPrivateIpMode

func GetPrivateIpMode(ctx *pulumi.Context,
	name string, id pulumi.ID, state *PrivateIpModeState, opts ...pulumi.ResourceOpt) (*PrivateIpMode, error)

GetPrivateIpMode gets an existing PrivateIpMode resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPrivateIpMode

func NewPrivateIpMode(ctx *pulumi.Context,
	name string, args *PrivateIpModeArgs, opts ...pulumi.ResourceOpt) (*PrivateIpMode, error)

NewPrivateIpMode registers a new resource with the given unique name, arguments, and options.

func (*PrivateIpMode) Enabled

func (r *PrivateIpMode) Enabled() pulumi.BoolOutput

Indicates whether Connect via Peering Only mode is enabled or disabled for an Atlas project.

func (*PrivateIpMode) ID

func (r *PrivateIpMode) ID() pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*PrivateIpMode) ProjectId

func (r *PrivateIpMode) ProjectId() pulumi.StringOutput

The unique ID for the project to enable Only Private IP Mode.

func (*PrivateIpMode) URN

func (r *PrivateIpMode) URN() pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type PrivateIpModeArgs

type PrivateIpModeArgs struct {
	// Indicates whether Connect via Peering Only mode is enabled or disabled for an Atlas project.
	Enabled interface{}
	// The unique ID for the project to enable Only Private IP Mode.
	ProjectId interface{}
}

The set of arguments for constructing a PrivateIpMode resource.

type PrivateIpModeState

type PrivateIpModeState struct {
	// Indicates whether Connect via Peering Only mode is enabled or disabled for an Atlas project.
	Enabled interface{}
	// The unique ID for the project to enable Only Private IP Mode.
	ProjectId interface{}
}

Input properties used for looking up and filtering PrivateIpMode resources.

type Project

type Project struct {
	// contains filtered or unexported fields
}

`.Project` provides a Project resource. This allows project to be created.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/project.html.markdown.

func GetProject

func GetProject(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ProjectState, opts ...pulumi.ResourceOpt) (*Project, error)

GetProject gets an existing Project resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProject

func NewProject(ctx *pulumi.Context,
	name string, args *ProjectArgs, opts ...pulumi.ResourceOpt) (*Project, error)

NewProject registers a new resource with the given unique name, arguments, and options.

func (*Project) ClusterCount

func (r *Project) ClusterCount() pulumi.IntOutput

The number of Atlas clusters deployed in the project..

func (*Project) Created

func (r *Project) Created() pulumi.StringOutput

The ISO-8601-formatted timestamp of when Atlas created the project..

func (*Project) ID

func (r *Project) ID() pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Project) Name

func (r *Project) Name() pulumi.StringOutput

The name of the project you want to create.

func (*Project) OrgId

func (r *Project) OrgId() pulumi.StringOutput

The ID of the organization you want to create the project within.

func (*Project) URN

func (r *Project) URN() pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ProjectArgs

type ProjectArgs struct {
	// The name of the project you want to create.
	Name interface{}
	// The ID of the organization you want to create the project within.
	OrgId interface{}
}

The set of arguments for constructing a Project resource.

type ProjectIpWhitelist

type ProjectIpWhitelist struct {
	// contains filtered or unexported fields
}

`.ProjectIpWhitelist` provides an IP Whitelist entry resource. The whitelist grants access from IPs or CIDRs to clusters within the Project.

> **NOTE:** Groups and projects are synonymous terms. You may find `groupId` in the official documentation.

> This content is derived from https://github.com/terraform-providers/terraform-provider-mongodbatlas/blob/master/website/docs/r/project_ip_whitelist.html.markdown.

func GetProjectIpWhitelist

func GetProjectIpWhitelist(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ProjectIpWhitelistState, opts ...pulumi.ResourceOpt) (*ProjectIpWhitelist, error)

GetProjectIpWhitelist gets an existing ProjectIpWhitelist resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectIpWhitelist

func NewProjectIpWhitelist(ctx *pulumi.Context,
	name string, args *ProjectIpWhitelistArgs, opts ...pulumi.ResourceOpt) (*ProjectIpWhitelist, error)

NewProjectIpWhitelist registers a new resource with the given unique name, arguments, and options.

func (*ProjectIpWhitelist) ID

ID is this resource's unique identifier assigned by its provider.

func (*ProjectIpWhitelist) ProjectId

func (r *ProjectIpWhitelist) ProjectId() pulumi.StringOutput

The ID of the project in which to add the whitelist entry.

func (*ProjectIpWhitelist) URN

URN is this resource's unique name assigned by Pulumi.

func (*ProjectIpWhitelist) Whitelists

func (r *ProjectIpWhitelist) Whitelists() pulumi.ArrayOutput

type ProjectIpWhitelistArgs

type ProjectIpWhitelistArgs struct {
	// The ID of the project in which to add the whitelist entry.
	ProjectId  interface{}
	Whitelists interface{}
}

The set of arguments for constructing a ProjectIpWhitelist resource.

type ProjectIpWhitelistState

type ProjectIpWhitelistState struct {
	// The ID of the project in which to add the whitelist entry.
	ProjectId  interface{}
	Whitelists interface{}
}

Input properties used for looking up and filtering ProjectIpWhitelist resources.

type ProjectState

type ProjectState struct {
	// The number of Atlas clusters deployed in the project..
	ClusterCount interface{}
	// The ISO-8601-formatted timestamp of when Atlas created the project..
	Created interface{}
	// The name of the project you want to create.
	Name interface{}
	// The ID of the organization you want to create the project within.
	OrgId interface{}
}

Input properties used for looking up and filtering Project resources.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL