diff --git a/docs/_index.md b/docs/_index.md index 3d4d90b9..f18129af 100644 --- a/docs/_index.md +++ b/docs/_index.md @@ -20,7 +20,6 @@ The provider needs to be configured with the proper credentials before it can be Use the navigation to the left to read about the available provider resources and functions. You may want to consider pinning the provider version to ensure you have a chance to review and prepare for changes. -Speaking of changes, see CHANGELOG for current version information. ## Example Usage {{< chooser language "typescript,python,go,csharp,java,yaml" >}} diff --git a/provider/cmd/pulumi-resource-mongodbatlas/schema.json b/provider/cmd/pulumi-resource-mongodbatlas/schema.json index 9214d0dd..d49ce16f 100644 --- a/provider/cmd/pulumi-resource-mongodbatlas/schema.json +++ b/provider/cmd/pulumi-resource-mongodbatlas/schema.json @@ -321,7 +321,7 @@ }, "providerName": { "type": "string", - "description": "Cloud service provider on which the servers are provisioned.\nThe possible values are:\n\n- `AWS` - Amazon AWS\n- `GCP` - Google Cloud Platform\n- `AZURE` - Microsoft Azure\n- `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider.\n" + "description": "Cloud service provider on which the servers are provisioned.\nThe possible values are:\n\n- `AWS` - Amazon AWS\n- `GCP` - Google Cloud Platform\n- `AZURE` - Microsoft Azure\n- `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider.\n" }, "region": { "type": "string" @@ -360,10 +360,12 @@ } }, "externalId": { - "type": "string" + "type": "string", + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated.\n" }, "id": { "type": "string", + "description": "**(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n", "deprecationMessage": "This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown" }, "numShards": { @@ -431,7 +433,7 @@ }, "providerName": { "type": "string", - "description": "Cloud service provider on which the servers are provisioned.\nThe possible values are:\n\n- `AWS` - Amazon AWS\n- `GCP` - Google Cloud Platform\n- `AZURE` - Microsoft Azure\n- `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider.\n" + "description": "Cloud service provider on which the servers are provisioned.\nThe possible values are:\n\n- `AWS` - Amazon AWS\n- `GCP` - Google Cloud Platform\n- `AZURE` - Microsoft Azure\n- `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider.\n" }, "readOnlySpecs": { "$ref": "#/types/mongodbatlas:index/AdvancedClusterReplicationSpecRegionConfigReadOnlySpecs:AdvancedClusterReplicationSpecRegionConfigReadOnlySpecs", @@ -482,7 +484,7 @@ }, "diskGbEnabled": { "type": "boolean", - "description": "Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true.\n" + "description": "Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false.\n" } }, "type": "object", @@ -1820,7 +1822,7 @@ "properties": { "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "numShards": { "type": "integer", @@ -1940,7 +1942,7 @@ "properties": { "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "policyItems": { "type": "array", @@ -1969,7 +1971,7 @@ }, "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "retentionUnit": { "type": "string" @@ -3905,7 +3907,8 @@ "description": "A key-value map of the Network Peering Container ID(s) for the configuration specified in `region_configs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `\"providerName:regionName\" = \"containerId\"`. Example `AWS:US_EAST_1\" = \"61e0797dde08fb498ca11a71`.\n" }, "externalId": { - "type": "string" + "type": "string", + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated.\n" }, "id": { "type": "string", @@ -4238,6 +4241,14 @@ "type": "string", "description": "Type of the cluster that you want to create.\n" }, + "configServerManagementMode": { + "type": "string", + "description": "Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, + "configServerType": { + "type": "string", + "description": "Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, "connectionStrings": { "type": "array", "items": { @@ -4266,8 +4277,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/getAdvancedClustersResultLabel:getAdvancedClustersResultLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -4290,7 +4300,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "(Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n" + "description": "(Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info.\n" }, "replicaSetScalingStrategy": { "type": "string", @@ -4333,6 +4343,8 @@ "backupEnabled", "biConnectorConfigs", "clusterType", + "configServerManagementMode", + "configServerType", "connectionStrings", "createDate", "diskSizeGb", @@ -4587,7 +4599,8 @@ "description": "A key-value map of the Network Peering Container ID(s) for the configuration specified in `region_configs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `\"providerName:regionName\" = \"containerId\"`. Example `AWS:US_EAST_1\" = \"61e0797dde08fb498ca11a71`.\n" }, "externalId": { - "type": "string" + "type": "string", + "description": "Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated.\n" }, "id": { "type": "string", @@ -6948,7 +6961,7 @@ "properties": { "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "numShards": { "type": "integer", @@ -7067,7 +7080,7 @@ "properties": { "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "policyItems": { "type": "array", @@ -7097,7 +7110,7 @@ }, "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "retentionUnit": { "type": "string" @@ -7206,8 +7219,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/getClustersResultLabel:getClustersResultLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -7287,7 +7299,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "(Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n" + "description": "(Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info.\n" }, "replicationFactor": { "type": "integer", @@ -7615,7 +7627,7 @@ "properties": { "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "numShards": { "type": "integer", @@ -7734,7 +7746,7 @@ "properties": { "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "policyItems": { "type": "array", @@ -7764,7 +7776,7 @@ }, "id": { "type": "string", - "description": "Unique identifer of the replication document for a zone in a Global Cluster.\n" + "description": "Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.\n" }, "retentionUnit": { "type": "string" @@ -12011,6 +12023,11 @@ "type": "boolean", "description": "Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui).\n" }, + "isSlowOperationThresholdingEnabled": { + "type": "boolean", + "description": "Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action.\n", + "deprecationMessage": "This parameter is deprecated and will be removed in version 1.24.0." + }, "limits": { "type": "array", "items": { @@ -12059,6 +12076,7 @@ "isPerformanceAdvisorEnabled", "isRealtimePerformancePanelEnabled", "isSchemaAdvisorEnabled", + "isSlowOperationThresholdingEnabled", "limits", "name", "orgId", @@ -13425,7 +13443,7 @@ } }, "mongodbatlas:index/advancedCluster:AdvancedCluster": { - "description": "## # Resource: mongodbatlas.AdvancedCluster\n\n`mongodbatlas.AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID.\n\nMore information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations)\n\n\u003e **IMPORTANT:** The primary difference between `mongodbatlas.Cluster` and `mongodbatlas.AdvancedCluster` is that `mongodbatlas.AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `mongodbatlas.AdvancedCluster` resource. \n\n\u003e **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy).\n\n\u003e **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information.\n\n\u003e **NOTE:** To enable Cluster Extended Storage Sizes use the `is_extended_storage_sizes_enabled` parameter in the mongodbatlas.Project resource.\n\n\u003e **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/).\n\n\u003e **NOTE:** Groups and projects are synonymous terms. You might find group_id in the official documentation.\n\n\n## Example Usage\n\n### Example single provider and single region\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [{\n electableSpecs: {\n instanceSize: \"M10\",\n nodeCount: 3,\n },\n analyticsSpecs: {\n instanceSize: \"M10\",\n nodeCount: 1,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [{\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 3,\n },\n \"analytics_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 1,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 3,\n },\n AnalyticsSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 1,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tAnalyticsSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs(AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(3)\n .build())\n .analyticsSpecs(AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(1)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M10\n nodeCount: 3\n analyticsSpecs:\n instanceSize: M10\n nodeCount: 1\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Example Tenant Cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [{\n electableSpecs: {\n instanceSize: \"M5\",\n },\n providerName: \"TENANT\",\n backingProviderName: \"AWS\",\n regionName: \"US_EAST_1\",\n priority: 7,\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [{\n \"electable_specs\": {\n \"instance_size\": \"M5\",\n },\n \"provider_name\": \"TENANT\",\n \"backing_provider_name\": \"AWS\",\n \"region_name\": \"US_EAST_1\",\n \"priority\": 7,\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M5\",\n },\n ProviderName = \"TENANT\",\n BackingProviderName = \"AWS\",\n RegionName = \"US_EAST_1\",\n Priority = 7,\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M5\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"TENANT\"),\n\t\t\t\t\t\t\tBackingProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs(AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M5\")\n .build())\n .providerName(\"TENANT\")\n .backingProviderName(\"AWS\")\n .regionName(\"US_EAST_1\")\n .priority(7)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M5\n providerName: TENANT\n backingProviderName: AWS\n regionName: US_EAST_1\n priority: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n**NOTE**: Upgrading the shared tier is supported. Any change from a shared tier cluster (a tenant) to a different instance size will be considered a tenant upgrade. When upgrading from the shared tier, change the `provider_name` from \"TENANT\" to your preferred provider (AWS, GCP or Azure) and remove the variable `backing_provider_name`. See the Example Tenant Cluster Upgrade below. You can upgrade a shared tier cluster only to a single provider on an M10-tier cluster or greater. \n\nWhen upgrading from the shared tier, *only* the upgrade changes will be applied. This helps avoid a corrupt state file in the event that the upgrade succeeds but subsequent updates fail within the same `pulumi up`. To apply additional cluster changes, run a secondary `pulumi up` after the upgrade succeeds.\n\n\n### Example Tenant Cluster Upgrade\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [{\n electableSpecs: {\n instanceSize: \"M10\",\n },\n providerName: \"AWS\",\n regionName: \"US_EAST_1\",\n priority: 7,\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [{\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n },\n \"provider_name\": \"AWS\",\n \"region_name\": \"US_EAST_1\",\n \"priority\": 7,\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n },\n ProviderName = \"AWS\",\n RegionName = \"US_EAST_1\",\n Priority = 7,\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs(AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .build())\n .providerName(\"AWS\")\n .regionName(\"US_EAST_1\")\n .priority(7)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M10\n providerName: AWS\n regionName: US_EAST_1\n priority: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Example Multi-Cloud Cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M10\",\n nodeCount: 3,\n },\n analyticsSpecs: {\n instanceSize: \"M10\",\n nodeCount: 1,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M10\",\n nodeCount: 2,\n },\n providerName: \"GCP\",\n priority: 6,\n regionName: \"NORTH_AMERICA_NORTHEAST_1\",\n },\n ],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 3,\n },\n \"analytics_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 1,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 2,\n },\n \"provider_name\": \"GCP\",\n \"priority\": 6,\n \"region_name\": \"NORTH_AMERICA_NORTHEAST_1\",\n },\n ],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 3,\n },\n AnalyticsSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 1,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 2,\n },\n ProviderName = \"GCP\",\n Priority = 6,\n RegionName = \"NORTH_AMERICA_NORTHEAST_1\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tAnalyticsSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"GCP\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"NORTH_AMERICA_NORTHEAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(3)\n .build())\n .analyticsSpecs(AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(1)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(2)\n .build())\n .providerName(\"GCP\")\n .priority(6)\n .regionName(\"NORTH_AMERICA_NORTHEAST_1\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M10\n nodeCount: 3\n analyticsSpecs:\n instanceSize: M10\n nodeCount: 1\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M10\n nodeCount: 2\n providerName: GCP\n priority: 6\n regionName: NORTH_AMERICA_NORTHEAST_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n### Example of a Multi Cloud Sharded Cluster with 2 shards\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst cluster = new mongodbatlas.AdvancedCluster(\"cluster\", {\n projectId: project.id,\n name: clusterName,\n clusterType: \"SHARDED\",\n backupEnabled: true,\n replicationSpecs: [\n {\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n {\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n ],\n advancedConfiguration: {\n javascriptEnabled: true,\n oplogSizeMb: 991,\n sampleRefreshIntervalBiConnector: 300,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ncluster = mongodbatlas.AdvancedCluster(\"cluster\",\n project_id=project[\"id\"],\n name=cluster_name,\n cluster_type=\"SHARDED\",\n backup_enabled=True,\n replication_specs=[\n {\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n {\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n ],\n advanced_configuration={\n \"javascript_enabled\": True,\n \"oplog_size_mb\": 991,\n \"sample_refresh_interval_bi_connector\": 300,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cluster = new Mongodbatlas.AdvancedCluster(\"cluster\", new()\n {\n ProjectId = project.Id,\n Name = clusterName,\n ClusterType = \"SHARDED\",\n BackupEnabled = true,\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n },\n AdvancedConfiguration = new Mongodbatlas.Inputs.AdvancedClusterAdvancedConfigurationArgs\n {\n JavascriptEnabled = true,\n OplogSizeMb = 991,\n SampleRefreshIntervalBiConnector = 300,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"cluster\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.Any(project.Id),\n\t\t\tName: pulumi.Any(clusterName),\n\t\t\tClusterType: pulumi.String(\"SHARDED\"),\n\t\t\tBackupEnabled: pulumi.Bool(true),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdvancedConfiguration: \u0026mongodbatlas.AdvancedClusterAdvancedConfigurationArgs{\n\t\t\t\tJavascriptEnabled: pulumi.Bool(true),\n\t\t\t\tOplogSizeMb: pulumi.Int(991),\n\t\t\t\tSampleRefreshIntervalBiConnector: pulumi.Int(300),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterAdvancedConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var cluster = new AdvancedCluster(\"cluster\", AdvancedClusterArgs.builder()\n .projectId(project.id())\n .name(clusterName)\n .clusterType(\"SHARDED\")\n .backupEnabled(true)\n .replicationSpecs( \n AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build())\n .advancedConfiguration(AdvancedClusterAdvancedConfigurationArgs.builder()\n .javascriptEnabled(true)\n .oplogSizeMb(991)\n .sampleRefreshIntervalBiConnector(300)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cluster:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: ${project.id}\n name: ${clusterName}\n clusterType: SHARDED\n backupEnabled: true\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n - regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n advancedConfiguration:\n javascriptEnabled: true\n oplogSizeMb: 991\n sampleRefreshIntervalBiConnector: 300\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Example of a Global Cluster with 2 zones\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst cluster = new mongodbatlas.AdvancedCluster(\"cluster\", {\n projectId: project.id,\n name: clusterName,\n clusterType: \"GEOSHARDED\",\n backupEnabled: true,\n replicationSpecs: [\n {\n zoneName: \"zone n1\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n {\n zoneName: \"zone n1\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n {\n zoneName: \"zone n2\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"EU_WEST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"EUROPE_NORTH\",\n },\n ],\n },\n {\n zoneName: \"zone n2\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"EU_WEST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"EUROPE_NORTH\",\n },\n ],\n },\n ],\n advancedConfiguration: {\n javascriptEnabled: true,\n oplogSizeMb: 999,\n sampleRefreshIntervalBiConnector: 300,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ncluster = mongodbatlas.AdvancedCluster(\"cluster\",\n project_id=project[\"id\"],\n name=cluster_name,\n cluster_type=\"GEOSHARDED\",\n backup_enabled=True,\n replication_specs=[\n {\n \"zone_name\": \"zone n1\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n {\n \"zone_name\": \"zone n1\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n {\n \"zone_name\": \"zone n2\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"EU_WEST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"EUROPE_NORTH\",\n },\n ],\n },\n {\n \"zone_name\": \"zone n2\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"EU_WEST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"EUROPE_NORTH\",\n },\n ],\n },\n ],\n advanced_configuration={\n \"javascript_enabled\": True,\n \"oplog_size_mb\": 999,\n \"sample_refresh_interval_bi_connector\": 300,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cluster = new Mongodbatlas.AdvancedCluster(\"cluster\", new()\n {\n ProjectId = project.Id,\n Name = clusterName,\n ClusterType = \"GEOSHARDED\",\n BackupEnabled = true,\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n1\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n1\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n2\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"EU_WEST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"EUROPE_NORTH\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n2\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"EU_WEST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"EUROPE_NORTH\",\n },\n },\n },\n },\n AdvancedConfiguration = new Mongodbatlas.Inputs.AdvancedClusterAdvancedConfigurationArgs\n {\n JavascriptEnabled = true,\n OplogSizeMb = 999,\n SampleRefreshIntervalBiConnector = 300,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"cluster\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.Any(project.Id),\n\t\t\tName: pulumi.Any(clusterName),\n\t\t\tClusterType: pulumi.String(\"GEOSHARDED\"),\n\t\t\tBackupEnabled: pulumi.Bool(true),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n1\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n1\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n2\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EU_WEST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EUROPE_NORTH\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n2\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EU_WEST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EUROPE_NORTH\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdvancedConfiguration: \u0026mongodbatlas.AdvancedClusterAdvancedConfigurationArgs{\n\t\t\t\tJavascriptEnabled: pulumi.Bool(true),\n\t\t\t\tOplogSizeMb: pulumi.Int(999),\n\t\t\t\tSampleRefreshIntervalBiConnector: pulumi.Int(300),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterAdvancedConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var cluster = new AdvancedCluster(\"cluster\", AdvancedClusterArgs.builder()\n .projectId(project.id())\n .name(clusterName)\n .clusterType(\"GEOSHARDED\")\n .backupEnabled(true)\n .replicationSpecs( \n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n1\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n1\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n2\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"EU_WEST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"EUROPE_NORTH\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n2\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"EU_WEST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"EUROPE_NORTH\")\n .build())\n .build())\n .advancedConfiguration(AdvancedClusterAdvancedConfigurationArgs.builder()\n .javascriptEnabled(true)\n .oplogSizeMb(999)\n .sampleRefreshIntervalBiConnector(300)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cluster:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: ${project.id}\n name: ${clusterName}\n clusterType: GEOSHARDED\n backupEnabled: true\n replicationSpecs:\n - zoneName: zone n1\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n - zoneName: zone n1\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n - zoneName: zone n2\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: EU_WEST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: EUROPE_NORTH\n - zoneName: zone n2\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: EU_WEST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: EUROPE_NORTH\n advancedConfiguration:\n javascriptEnabled: true\n oplogSizeMb: 999\n sampleRefreshIntervalBiConnector: 300\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n### Example - Return a Connection String\nStandard\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n\nexport const standard = cluster.connectionStrings[0].standard;\n```\n```python\nimport pulumi\n\npulumi.export(\"standard\", cluster[\"connectionStrings\"][0][\"standard\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"standard\"] = cluster.ConnectionStrings[0].Standard,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tctx.Export(\"standard\", cluster.ConnectionStrings[0].Standard)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n ctx.export(\"standard\", cluster.connectionStrings()[0].standard());\n }\n}\n```\n```yaml\noutputs:\n standard: ${cluster.connectionStrings[0].standard}\n```\n\u003c!--End PulumiCodeChooser --\u003e\nStandard srv\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n\nexport const standardSrv = cluster.connectionStrings[0].standardSrv;\n```\n```python\nimport pulumi\n\npulumi.export(\"standardSrv\", cluster[\"connectionStrings\"][0][\"standardSrv\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"standardSrv\"] = cluster.ConnectionStrings[0].StandardSrv,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tctx.Export(\"standardSrv\", cluster.ConnectionStrings[0].StandardSrv)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n ctx.export(\"standardSrv\", cluster.connectionStrings()[0].standardSrv());\n }\n}\n```\n```yaml\noutputs:\n standardSrv: ${cluster.connectionStrings[0].standardSrv}\n```\n\u003c!--End PulumiCodeChooser --\u003e\nPrivate with Network peering and Custom DNS AWS enabled\n## Import\n\nClusters can be imported using project ID and cluster name, in the format `PROJECTID-CLUSTERNAME`, e.g.\n\n```sh\n$ pulumi import mongodbatlas:index/advancedCluster:AdvancedCluster my_cluster 1112222b3bf99403840e8934-Cluster0\n```\nSee detailed information for arguments and attributes: [MongoDB API Advanced Clusters](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/)\n\n~\u003e __IMPORTANT:__\n\\n\\n \u0026#8226; When a cluster is imported, the resulting schema structure will always return the new schema including `replication_specs` per independent shards of the cluster.\n\\n\\n \u0026#8226; Note: The first time `pulumi up` command is run __after__ updating the configuration of an imported cluster, you may receive a `500 Internal Server Error (Error code: \"SERVICE_UNAVAILABLE\")` error. This is a known temporary issue. If you encounter this, please re-run `pulumi up` and this time the update should succeed.\n\n", + "description": "## Example Usage\n\n### Example single provider and single region\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [{\n electableSpecs: {\n instanceSize: \"M10\",\n nodeCount: 3,\n },\n analyticsSpecs: {\n instanceSize: \"M10\",\n nodeCount: 1,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [{\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 3,\n },\n \"analytics_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 1,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 3,\n },\n AnalyticsSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 1,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tAnalyticsSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs(AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(3)\n .build())\n .analyticsSpecs(AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(1)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M10\n nodeCount: 3\n analyticsSpecs:\n instanceSize: M10\n nodeCount: 1\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Example Tenant Cluster\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [{\n electableSpecs: {\n instanceSize: \"M5\",\n },\n providerName: \"TENANT\",\n backingProviderName: \"AWS\",\n regionName: \"US_EAST_1\",\n priority: 7,\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [{\n \"electable_specs\": {\n \"instance_size\": \"M5\",\n },\n \"provider_name\": \"TENANT\",\n \"backing_provider_name\": \"AWS\",\n \"region_name\": \"US_EAST_1\",\n \"priority\": 7,\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M5\",\n },\n ProviderName = \"TENANT\",\n BackingProviderName = \"AWS\",\n RegionName = \"US_EAST_1\",\n Priority = 7,\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M5\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"TENANT\"),\n\t\t\t\t\t\t\tBackingProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs(AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M5\")\n .build())\n .providerName(\"TENANT\")\n .backingProviderName(\"AWS\")\n .regionName(\"US_EAST_1\")\n .priority(7)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M5\n providerName: TENANT\n backingProviderName: AWS\n regionName: US_EAST_1\n priority: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n**NOTE**: Upgrading the shared tier is supported. Any change from a shared tier cluster (a tenant) to a different instance size will be considered a tenant upgrade. When upgrading from the shared tier, change the `provider_name` from \"TENANT\" to your preferred provider (AWS, GCP or Azure) and remove the variable `backing_provider_name`. See the Example Tenant Cluster Upgrade below. You can upgrade a shared tier cluster only to a single provider on an M10-tier cluster or greater. \n\nWhen upgrading from the shared tier, *only* the upgrade changes will be applied. This helps avoid a corrupt state file in the event that the upgrade succeeds but subsequent updates fail within the same `pulumi up`. To apply additional cluster changes, run a secondary `pulumi up` after the upgrade succeeds.\n\n\n### Example Tenant Cluster Upgrade\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [{\n electableSpecs: {\n instanceSize: \"M10\",\n },\n providerName: \"AWS\",\n regionName: \"US_EAST_1\",\n priority: 7,\n }],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [{\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n },\n \"provider_name\": \"AWS\",\n \"region_name\": \"US_EAST_1\",\n \"priority\": 7,\n }],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n },\n ProviderName = \"AWS\",\n RegionName = \"US_EAST_1\",\n Priority = 7,\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs(AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .build())\n .providerName(\"AWS\")\n .regionName(\"US_EAST_1\")\n .priority(7)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M10\n providerName: AWS\n regionName: US_EAST_1\n priority: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Example Multi-Cloud Cluster\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = new mongodbatlas.AdvancedCluster(\"test\", {\n projectId: \"PROJECT ID\",\n name: \"NAME OF CLUSTER\",\n clusterType: \"REPLICASET\",\n replicationSpecs: [{\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M10\",\n nodeCount: 3,\n },\n analyticsSpecs: {\n instanceSize: \"M10\",\n nodeCount: 1,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M10\",\n nodeCount: 2,\n },\n providerName: \"GCP\",\n priority: 6,\n regionName: \"NORTH_AMERICA_NORTHEAST_1\",\n },\n ],\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.AdvancedCluster(\"test\",\n project_id=\"PROJECT ID\",\n name=\"NAME OF CLUSTER\",\n cluster_type=\"REPLICASET\",\n replication_specs=[{\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 3,\n },\n \"analytics_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 1,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M10\",\n \"node_count\": 2,\n },\n \"provider_name\": \"GCP\",\n \"priority\": 6,\n \"region_name\": \"NORTH_AMERICA_NORTHEAST_1\",\n },\n ],\n }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = new Mongodbatlas.AdvancedCluster(\"test\", new()\n {\n ProjectId = \"PROJECT ID\",\n Name = \"NAME OF CLUSTER\",\n ClusterType = \"REPLICASET\",\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 3,\n },\n AnalyticsSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 1,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M10\",\n NodeCount = 2,\n },\n ProviderName = \"GCP\",\n Priority = 6,\n RegionName = \"NORTH_AMERICA_NORTHEAST_1\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"test\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.String(\"PROJECT ID\"),\n\t\t\tName: pulumi.String(\"NAME OF CLUSTER\"),\n\t\t\tClusterType: pulumi.String(\"REPLICASET\"),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tAnalyticsSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M10\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"GCP\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"NORTH_AMERICA_NORTHEAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test = new AdvancedCluster(\"test\", AdvancedClusterArgs.builder()\n .projectId(\"PROJECT ID\")\n .name(\"NAME OF CLUSTER\")\n .clusterType(\"REPLICASET\")\n .replicationSpecs(AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(3)\n .build())\n .analyticsSpecs(AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(1)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M10\")\n .nodeCount(2)\n .build())\n .providerName(\"GCP\")\n .priority(6)\n .regionName(\"NORTH_AMERICA_NORTHEAST_1\")\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: PROJECT ID\n name: NAME OF CLUSTER\n clusterType: REPLICASET\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M10\n nodeCount: 3\n analyticsSpecs:\n instanceSize: M10\n nodeCount: 1\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M10\n nodeCount: 2\n providerName: GCP\n priority: 6\n regionName: NORTH_AMERICA_NORTHEAST_1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n### Example of a Multi Cloud Sharded Cluster with 2 shards\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst cluster = new mongodbatlas.AdvancedCluster(\"cluster\", {\n projectId: project.id,\n name: clusterName,\n clusterType: \"SHARDED\",\n backupEnabled: true,\n replicationSpecs: [\n {\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n {\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n ],\n advancedConfiguration: {\n javascriptEnabled: true,\n oplogSizeMb: 991,\n sampleRefreshIntervalBiConnector: 300,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ncluster = mongodbatlas.AdvancedCluster(\"cluster\",\n project_id=project[\"id\"],\n name=cluster_name,\n cluster_type=\"SHARDED\",\n backup_enabled=True,\n replication_specs=[\n {\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n {\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n ],\n advanced_configuration={\n \"javascript_enabled\": True,\n \"oplog_size_mb\": 991,\n \"sample_refresh_interval_bi_connector\": 300,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cluster = new Mongodbatlas.AdvancedCluster(\"cluster\", new()\n {\n ProjectId = project.Id,\n Name = clusterName,\n ClusterType = \"SHARDED\",\n BackupEnabled = true,\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n },\n AdvancedConfiguration = new Mongodbatlas.Inputs.AdvancedClusterAdvancedConfigurationArgs\n {\n JavascriptEnabled = true,\n OplogSizeMb = 991,\n SampleRefreshIntervalBiConnector = 300,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"cluster\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.Any(project.Id),\n\t\t\tName: pulumi.Any(clusterName),\n\t\t\tClusterType: pulumi.String(\"SHARDED\"),\n\t\t\tBackupEnabled: pulumi.Bool(true),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdvancedConfiguration: \u0026mongodbatlas.AdvancedClusterAdvancedConfigurationArgs{\n\t\t\t\tJavascriptEnabled: pulumi.Bool(true),\n\t\t\t\tOplogSizeMb: pulumi.Int(991),\n\t\t\t\tSampleRefreshIntervalBiConnector: pulumi.Int(300),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterAdvancedConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var cluster = new AdvancedCluster(\"cluster\", AdvancedClusterArgs.builder()\n .projectId(project.id())\n .name(clusterName)\n .clusterType(\"SHARDED\")\n .backupEnabled(true)\n .replicationSpecs( \n AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build())\n .advancedConfiguration(AdvancedClusterAdvancedConfigurationArgs.builder()\n .javascriptEnabled(true)\n .oplogSizeMb(991)\n .sampleRefreshIntervalBiConnector(300)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cluster:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: ${project.id}\n name: ${clusterName}\n clusterType: SHARDED\n backupEnabled: true\n replicationSpecs:\n - regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n - regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n advancedConfiguration:\n javascriptEnabled: true\n oplogSizeMb: 991\n sampleRefreshIntervalBiConnector: 300\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n### Example of a Global Cluster with 2 zones\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst cluster = new mongodbatlas.AdvancedCluster(\"cluster\", {\n projectId: project.id,\n name: clusterName,\n clusterType: \"GEOSHARDED\",\n backupEnabled: true,\n replicationSpecs: [\n {\n zoneName: \"zone n1\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n {\n zoneName: \"zone n1\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"US_EAST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"US_EAST_2\",\n },\n ],\n },\n {\n zoneName: \"zone n2\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"EU_WEST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"EUROPE_NORTH\",\n },\n ],\n },\n {\n zoneName: \"zone n2\",\n regionConfigs: [\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 3,\n },\n providerName: \"AWS\",\n priority: 7,\n regionName: \"EU_WEST_1\",\n },\n {\n electableSpecs: {\n instanceSize: \"M30\",\n nodeCount: 2,\n },\n providerName: \"AZURE\",\n priority: 6,\n regionName: \"EUROPE_NORTH\",\n },\n ],\n },\n ],\n advancedConfiguration: {\n javascriptEnabled: true,\n oplogSizeMb: 999,\n sampleRefreshIntervalBiConnector: 300,\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ncluster = mongodbatlas.AdvancedCluster(\"cluster\",\n project_id=project[\"id\"],\n name=cluster_name,\n cluster_type=\"GEOSHARDED\",\n backup_enabled=True,\n replication_specs=[\n {\n \"zone_name\": \"zone n1\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n {\n \"zone_name\": \"zone n1\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"US_EAST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"US_EAST_2\",\n },\n ],\n },\n {\n \"zone_name\": \"zone n2\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"EU_WEST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"EUROPE_NORTH\",\n },\n ],\n },\n {\n \"zone_name\": \"zone n2\",\n \"region_configs\": [\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 3,\n },\n \"provider_name\": \"AWS\",\n \"priority\": 7,\n \"region_name\": \"EU_WEST_1\",\n },\n {\n \"electable_specs\": {\n \"instance_size\": \"M30\",\n \"node_count\": 2,\n },\n \"provider_name\": \"AZURE\",\n \"priority\": 6,\n \"region_name\": \"EUROPE_NORTH\",\n },\n ],\n },\n ],\n advanced_configuration={\n \"javascript_enabled\": True,\n \"oplog_size_mb\": 999,\n \"sample_refresh_interval_bi_connector\": 300,\n })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var cluster = new Mongodbatlas.AdvancedCluster(\"cluster\", new()\n {\n ProjectId = project.Id,\n Name = clusterName,\n ClusterType = \"GEOSHARDED\",\n BackupEnabled = true,\n ReplicationSpecs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n1\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n1\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"US_EAST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"US_EAST_2\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n2\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"EU_WEST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"EUROPE_NORTH\",\n },\n },\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecArgs\n {\n ZoneName = \"zone n2\",\n RegionConfigs = new[]\n {\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 3,\n },\n ProviderName = \"AWS\",\n Priority = 7,\n RegionName = \"EU_WEST_1\",\n },\n new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigArgs\n {\n ElectableSpecs = new Mongodbatlas.Inputs.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs\n {\n InstanceSize = \"M30\",\n NodeCount = 2,\n },\n ProviderName = \"AZURE\",\n Priority = 6,\n RegionName = \"EUROPE_NORTH\",\n },\n },\n },\n },\n AdvancedConfiguration = new Mongodbatlas.Inputs.AdvancedClusterAdvancedConfigurationArgs\n {\n JavascriptEnabled = true,\n OplogSizeMb = 999,\n SampleRefreshIntervalBiConnector = 300,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := mongodbatlas.NewAdvancedCluster(ctx, \"cluster\", \u0026mongodbatlas.AdvancedClusterArgs{\n\t\t\tProjectId: pulumi.Any(project.Id),\n\t\t\tName: pulumi.Any(clusterName),\n\t\t\tClusterType: pulumi.String(\"GEOSHARDED\"),\n\t\t\tBackupEnabled: pulumi.Bool(true),\n\t\t\tReplicationSpecs: mongodbatlas.AdvancedClusterReplicationSpecArray{\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n1\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n1\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"US_EAST_2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n2\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EU_WEST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EUROPE_NORTH\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecArgs{\n\t\t\t\t\tZoneName: pulumi.String(\"zone n2\"),\n\t\t\t\t\tRegionConfigs: mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArray{\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(3),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AWS\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(7),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EU_WEST_1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigArgs{\n\t\t\t\t\t\t\tElectableSpecs: \u0026mongodbatlas.AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs{\n\t\t\t\t\t\t\t\tInstanceSize: pulumi.String(\"M30\"),\n\t\t\t\t\t\t\t\tNodeCount: pulumi.Int(2),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProviderName: pulumi.String(\"AZURE\"),\n\t\t\t\t\t\t\tPriority: pulumi.Int(6),\n\t\t\t\t\t\t\tRegionName: pulumi.String(\"EUROPE_NORTH\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdvancedConfiguration: \u0026mongodbatlas.AdvancedClusterAdvancedConfigurationArgs{\n\t\t\t\tJavascriptEnabled: pulumi.Bool(true),\n\t\t\t\tOplogSizeMb: pulumi.Int(999),\n\t\t\t\tSampleRefreshIntervalBiConnector: pulumi.Int(300),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.AdvancedCluster;\nimport com.pulumi.mongodbatlas.AdvancedClusterArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterReplicationSpecArgs;\nimport com.pulumi.mongodbatlas.inputs.AdvancedClusterAdvancedConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var cluster = new AdvancedCluster(\"cluster\", AdvancedClusterArgs.builder()\n .projectId(project.id())\n .name(clusterName)\n .clusterType(\"GEOSHARDED\")\n .backupEnabled(true)\n .replicationSpecs( \n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n1\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n1\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"US_EAST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"US_EAST_2\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n2\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"EU_WEST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"EUROPE_NORTH\")\n .build())\n .build(),\n AdvancedClusterReplicationSpecArgs.builder()\n .zoneName(\"zone n2\")\n .regionConfigs( \n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(3)\n .build())\n .providerName(\"AWS\")\n .priority(7)\n .regionName(\"EU_WEST_1\")\n .build(),\n AdvancedClusterReplicationSpecRegionConfigArgs.builder()\n .electableSpecs(AdvancedClusterReplicationSpecRegionConfigElectableSpecsArgs.builder()\n .instanceSize(\"M30\")\n .nodeCount(2)\n .build())\n .providerName(\"AZURE\")\n .priority(6)\n .regionName(\"EUROPE_NORTH\")\n .build())\n .build())\n .advancedConfiguration(AdvancedClusterAdvancedConfigurationArgs.builder()\n .javascriptEnabled(true)\n .oplogSizeMb(999)\n .sampleRefreshIntervalBiConnector(300)\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n cluster:\n type: mongodbatlas:AdvancedCluster\n properties:\n projectId: ${project.id}\n name: ${clusterName}\n clusterType: GEOSHARDED\n backupEnabled: true\n replicationSpecs:\n - zoneName: zone n1\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n - zoneName: zone n1\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: US_EAST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: US_EAST_2\n - zoneName: zone n2\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: EU_WEST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: EUROPE_NORTH\n - zoneName: zone n2\n regionConfigs:\n - electableSpecs:\n instanceSize: M30\n nodeCount: 3\n providerName: AWS\n priority: 7\n regionName: EU_WEST_1\n - electableSpecs:\n instanceSize: M30\n nodeCount: 2\n providerName: AZURE\n priority: 6\n regionName: EUROPE_NORTH\n advancedConfiguration:\n javascriptEnabled: true\n oplogSizeMb: 999\n sampleRefreshIntervalBiConnector: 300\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n### Example - Return a Connection String\nStandard\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n\nexport const standard = cluster.connectionStrings[0].standard;\n```\n```python\nimport pulumi\n\npulumi.export(\"standard\", cluster[\"connectionStrings\"][0][\"standard\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"standard\"] = cluster.ConnectionStrings[0].Standard,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tctx.Export(\"standard\", cluster.ConnectionStrings[0].Standard)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n ctx.export(\"standard\", cluster.connectionStrings()[0].standard());\n }\n}\n```\n```yaml\noutputs:\n standard: ${cluster.connectionStrings[0].standard}\n```\n\u003c!--End PulumiCodeChooser --\u003e\nStandard srv\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\n\nexport const standardSrv = cluster.connectionStrings[0].standardSrv;\n```\n```python\nimport pulumi\n\npulumi.export(\"standardSrv\", cluster[\"connectionStrings\"][0][\"standardSrv\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n return new Dictionary\u003cstring, object?\u003e\n {\n [\"standardSrv\"] = cluster.ConnectionStrings[0].StandardSrv,\n };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tctx.Export(\"standardSrv\", cluster.ConnectionStrings[0].StandardSrv)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n ctx.export(\"standardSrv\", cluster.connectionStrings()[0].standardSrv());\n }\n}\n```\n```yaml\noutputs:\n standardSrv: ${cluster.connectionStrings[0].standardSrv}\n```\n\u003c!--End PulumiCodeChooser --\u003e\nPrivate with Network peering and Custom DNS AWS enabled\n## Import\n\nClusters can be imported using project ID and cluster name, in the format `PROJECTID-CLUSTERNAME`, e.g.\n\n```sh\n$ pulumi import mongodbatlas:index/advancedCluster:AdvancedCluster my_cluster 1112222b3bf99403840e8934-Cluster0\n```\nSee detailed information for arguments and attributes: [MongoDB API Advanced Clusters](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/)\n\n~\u003e __IMPORTANT:__\n\\n\\n \u0026#8226; When a cluster is imported, the resulting schema structure will always return the new schema including `replication_specs` per independent shards of the cluster.\n\\n\\n \u0026#8226; Note: The first time `pulumi up` command is run __after__ updating the configuration of an imported cluster, you may receive a `500 Internal Server Error (Error code: \"SERVICE_UNAVAILABLE\")` error. This is a known temporary issue. If you encounter this, please re-run `pulumi up` and this time the update should succeed.\n\n", "properties": { "acceptDataRisksAndForceReplicaSetReconfig": { "type": "string", @@ -13450,6 +13468,14 @@ "type": "string", "description": "Type of the cluster that you want to create.\nAccepted values include:\n- `REPLICASET` Replica set\n- `SHARDED`\tSharded cluster\n- `GEOSHARDED` Global Cluster\n" }, + "configServerManagementMode": { + "type": "string", + "description": "Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, + "configServerType": { + "type": "string", + "description": "Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, "connectionStrings": { "type": "array", "items": { @@ -13478,8 +13504,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/AdvancedClusterLabel:AdvancedClusterLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -13506,7 +13531,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n" + "description": "Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated.\n" }, "replicaSetScalingStrategy": { "type": "string", @@ -13553,6 +13578,8 @@ "biConnectorConfig", "clusterId", "clusterType", + "configServerManagementMode", + "configServerType", "connectionStrings", "createDate", "diskSizeGb", @@ -13592,6 +13619,10 @@ "type": "string", "description": "Type of the cluster that you want to create.\nAccepted values include:\n- `REPLICASET` Replica set\n- `SHARDED`\tSharded cluster\n- `GEOSHARDED` Global Cluster\n" }, + "configServerManagementMode": { + "type": "string", + "description": "Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, "diskSizeGb": { "type": "number", "description": "Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide.\n", @@ -13610,8 +13641,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/AdvancedClusterLabel:AdvancedClusterLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -13636,7 +13666,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n" + "description": "Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated.\n" }, "replicaSetScalingStrategy": { "type": "string", @@ -13704,6 +13734,14 @@ "type": "string", "description": "Type of the cluster that you want to create.\nAccepted values include:\n- `REPLICASET` Replica set\n- `SHARDED`\tSharded cluster\n- `GEOSHARDED` Global Cluster\n" }, + "configServerManagementMode": { + "type": "string", + "description": "Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, + "configServerType": { + "type": "string", + "description": "Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n" + }, "connectionStrings": { "type": "array", "items": { @@ -13732,8 +13770,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/AdvancedClusterLabel:AdvancedClusterLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -13762,7 +13799,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n" + "description": "Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated.\n" }, "replicaSetScalingStrategy": { "type": "string", @@ -15518,8 +15555,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/ClusterLabel:ClusterLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -15602,7 +15638,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`.\n" + "description": "Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`.\n" }, "replicationFactor": { "type": "integer", @@ -15745,8 +15781,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/ClusterLabel:ClusterLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -15812,7 +15847,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`.\n" + "description": "Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`.\n" }, "replicationFactor": { "type": "integer", @@ -15917,8 +15952,7 @@ "items": { "$ref": "#/types/mongodbatlas:index/ClusterLabel:ClusterLabel" }, - "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags" + "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n" }, "mongoDbMajorVersion": { "type": "string", @@ -16003,7 +16037,7 @@ }, "redactClientLogData": { "type": "boolean", - "description": "Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`.\n" + "description": "Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`.\n" }, "replicationFactor": { "type": "integer", @@ -20267,7 +20301,7 @@ } }, "mongodbatlas:index/project:Project": { - "description": "## # Resource: mongodbatlas.Project\n\n`mongodbatlas.Project` provides a Project resource. This allows project to be created.\n\n\u003e **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot delete the Atlas project if any snapshots exist. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = mongodbatlas.getRolesOrgId({});\nconst testProject = new mongodbatlas.Project(\"test\", {\n name: \"project-name\",\n orgId: test.then(test =\u003e test.orgId),\n projectOwnerId: \"\u003cOWNER_ACCOUNT_ID\u003e\",\n teams: [\n {\n teamId: \"5e0fa8c99ccf641c722fe645\",\n roleNames: [\"GROUP_OWNER\"],\n },\n {\n teamId: \"5e1dd7b4f2a30ba80a70cd4rw\",\n roleNames: [\n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\",\n ],\n },\n ],\n limits: [\n {\n name: \"atlas.project.deployment.clusters\",\n value: 26,\n },\n {\n name: \"atlas.project.deployment.nodesPerPrivateLinkRegion\",\n value: 51,\n },\n ],\n isCollectDatabaseSpecificsStatisticsEnabled: true,\n isDataExplorerEnabled: true,\n isExtendedStorageSizesEnabled: true,\n isPerformanceAdvisorEnabled: true,\n isRealtimePerformancePanelEnabled: true,\n isSchemaAdvisorEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.get_roles_org_id()\ntest_project = mongodbatlas.Project(\"test\",\n name=\"project-name\",\n org_id=test.org_id,\n project_owner_id=\"\u003cOWNER_ACCOUNT_ID\u003e\",\n teams=[\n {\n \"team_id\": \"5e0fa8c99ccf641c722fe645\",\n \"role_names\": [\"GROUP_OWNER\"],\n },\n {\n \"team_id\": \"5e1dd7b4f2a30ba80a70cd4rw\",\n \"role_names\": [\n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\",\n ],\n },\n ],\n limits=[\n {\n \"name\": \"atlas.project.deployment.clusters\",\n \"value\": 26,\n },\n {\n \"name\": \"atlas.project.deployment.nodesPerPrivateLinkRegion\",\n \"value\": 51,\n },\n ],\n is_collect_database_specifics_statistics_enabled=True,\n is_data_explorer_enabled=True,\n is_extended_storage_sizes_enabled=True,\n is_performance_advisor_enabled=True,\n is_realtime_performance_panel_enabled=True,\n is_schema_advisor_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Mongodbatlas.GetRolesOrgId.Invoke();\n\n var testProject = new Mongodbatlas.Project(\"test\", new()\n {\n Name = \"project-name\",\n OrgId = test.Apply(getRolesOrgIdResult =\u003e getRolesOrgIdResult.OrgId),\n ProjectOwnerId = \"\u003cOWNER_ACCOUNT_ID\u003e\",\n Teams = new[]\n {\n new Mongodbatlas.Inputs.ProjectTeamArgs\n {\n TeamId = \"5e0fa8c99ccf641c722fe645\",\n RoleNames = new[]\n {\n \"GROUP_OWNER\",\n },\n },\n new Mongodbatlas.Inputs.ProjectTeamArgs\n {\n TeamId = \"5e1dd7b4f2a30ba80a70cd4rw\",\n RoleNames = new[]\n {\n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\",\n },\n },\n },\n Limits = new[]\n {\n new Mongodbatlas.Inputs.ProjectLimitArgs\n {\n Name = \"atlas.project.deployment.clusters\",\n Value = 26,\n },\n new Mongodbatlas.Inputs.ProjectLimitArgs\n {\n Name = \"atlas.project.deployment.nodesPerPrivateLinkRegion\",\n Value = 51,\n },\n },\n IsCollectDatabaseSpecificsStatisticsEnabled = true,\n IsDataExplorerEnabled = true,\n IsExtendedStorageSizesEnabled = true,\n IsPerformanceAdvisorEnabled = true,\n IsRealtimePerformancePanelEnabled = true,\n IsSchemaAdvisorEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := mongodbatlas.GetRolesOrgId(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewProject(ctx, \"test\", \u0026mongodbatlas.ProjectArgs{\n\t\t\tName: pulumi.String(\"project-name\"),\n\t\t\tOrgId: pulumi.String(test.OrgId),\n\t\t\tProjectOwnerId: pulumi.String(\"\u003cOWNER_ACCOUNT_ID\u003e\"),\n\t\t\tTeams: mongodbatlas.ProjectTeamArray{\n\t\t\t\t\u0026mongodbatlas.ProjectTeamArgs{\n\t\t\t\t\tTeamId: pulumi.String(\"5e0fa8c99ccf641c722fe645\"),\n\t\t\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GROUP_OWNER\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.ProjectTeamArgs{\n\t\t\t\t\tTeamId: pulumi.String(\"5e1dd7b4f2a30ba80a70cd4rw\"),\n\t\t\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GROUP_READ_ONLY\"),\n\t\t\t\t\t\tpulumi.String(\"GROUP_DATA_ACCESS_READ_WRITE\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLimits: mongodbatlas.ProjectLimitArray{\n\t\t\t\t\u0026mongodbatlas.ProjectLimitArgs{\n\t\t\t\t\tName: pulumi.String(\"atlas.project.deployment.clusters\"),\n\t\t\t\t\tValue: pulumi.Int(26),\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.ProjectLimitArgs{\n\t\t\t\t\tName: pulumi.String(\"atlas.project.deployment.nodesPerPrivateLinkRegion\"),\n\t\t\t\t\tValue: pulumi.Int(51),\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsCollectDatabaseSpecificsStatisticsEnabled: pulumi.Bool(true),\n\t\t\tIsDataExplorerEnabled: pulumi.Bool(true),\n\t\t\tIsExtendedStorageSizesEnabled: pulumi.Bool(true),\n\t\t\tIsPerformanceAdvisorEnabled: pulumi.Bool(true),\n\t\t\tIsRealtimePerformancePanelEnabled: pulumi.Bool(true),\n\t\t\tIsSchemaAdvisorEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.MongodbatlasFunctions;\nimport com.pulumi.mongodbatlas.Project;\nimport com.pulumi.mongodbatlas.ProjectArgs;\nimport com.pulumi.mongodbatlas.inputs.ProjectTeamArgs;\nimport com.pulumi.mongodbatlas.inputs.ProjectLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = MongodbatlasFunctions.getRolesOrgId();\n\n var testProject = new Project(\"testProject\", ProjectArgs.builder()\n .name(\"project-name\")\n .orgId(test.applyValue(getRolesOrgIdResult -\u003e getRolesOrgIdResult.orgId()))\n .projectOwnerId(\"\u003cOWNER_ACCOUNT_ID\u003e\")\n .teams( \n ProjectTeamArgs.builder()\n .teamId(\"5e0fa8c99ccf641c722fe645\")\n .roleNames(\"GROUP_OWNER\")\n .build(),\n ProjectTeamArgs.builder()\n .teamId(\"5e1dd7b4f2a30ba80a70cd4rw\")\n .roleNames( \n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\")\n .build())\n .limits( \n ProjectLimitArgs.builder()\n .name(\"atlas.project.deployment.clusters\")\n .value(26)\n .build(),\n ProjectLimitArgs.builder()\n .name(\"atlas.project.deployment.nodesPerPrivateLinkRegion\")\n .value(51)\n .build())\n .isCollectDatabaseSpecificsStatisticsEnabled(true)\n .isDataExplorerEnabled(true)\n .isExtendedStorageSizesEnabled(true)\n .isPerformanceAdvisorEnabled(true)\n .isRealtimePerformancePanelEnabled(true)\n .isSchemaAdvisorEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testProject:\n type: mongodbatlas:Project\n name: test\n properties:\n name: project-name\n orgId: ${test.orgId}\n projectOwnerId: \u003cOWNER_ACCOUNT_ID\u003e\n teams:\n - teamId: 5e0fa8c99ccf641c722fe645\n roleNames:\n - GROUP_OWNER\n - teamId: 5e1dd7b4f2a30ba80a70cd4rw\n roleNames:\n - GROUP_READ_ONLY\n - GROUP_DATA_ACCESS_READ_WRITE\n limits:\n - name: atlas.project.deployment.clusters\n value: 26\n - name: atlas.project.deployment.nodesPerPrivateLinkRegion\n value: 51\n isCollectDatabaseSpecificsStatisticsEnabled: true\n isDataExplorerEnabled: true\n isExtendedStorageSizesEnabled: true\n isPerformanceAdvisorEnabled: true\n isRealtimePerformancePanelEnabled: true\n isSchemaAdvisorEnabled: true\nvariables:\n test:\n fn::invoke:\n Function: mongodbatlas:getRolesOrgId\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nProject must be imported using project ID, e.g.\n\n```sh\n$ pulumi import mongodbatlas:index/project:Project my_project 5d09d6a59ccf6445652a444a\n```\nFor more information see: [MongoDB Atlas Admin API Projects](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/#tag/Projects) and [MongoDB Atlas Admin API Teams](https://docs.atlas.mongodb.com/reference/api/teams/) Documentation for more information.\n\n", + "description": "## # Resource: mongodbatlas.Project\n\n`mongodbatlas.Project` provides a Project resource. This allows project to be created.\n\n\u003e **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot delete the Atlas project if any snapshots exist. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as mongodbatlas from \"@pulumi/mongodbatlas\";\n\nconst test = mongodbatlas.getRolesOrgId({});\nconst testProject = new mongodbatlas.Project(\"test\", {\n name: \"project-name\",\n orgId: test.then(test =\u003e test.orgId),\n projectOwnerId: \"\u003cOWNER_ACCOUNT_ID\u003e\",\n teams: [\n {\n teamId: \"5e0fa8c99ccf641c722fe645\",\n roleNames: [\"GROUP_OWNER\"],\n },\n {\n teamId: \"5e1dd7b4f2a30ba80a70cd4rw\",\n roleNames: [\n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\",\n ],\n },\n ],\n limits: [\n {\n name: \"atlas.project.deployment.clusters\",\n value: 26,\n },\n {\n name: \"atlas.project.deployment.nodesPerPrivateLinkRegion\",\n value: 51,\n },\n ],\n isCollectDatabaseSpecificsStatisticsEnabled: true,\n isDataExplorerEnabled: true,\n isExtendedStorageSizesEnabled: true,\n isPerformanceAdvisorEnabled: true,\n isRealtimePerformancePanelEnabled: true,\n isSchemaAdvisorEnabled: true,\n isSlowOperationThresholdingEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_mongodbatlas as mongodbatlas\n\ntest = mongodbatlas.get_roles_org_id()\ntest_project = mongodbatlas.Project(\"test\",\n name=\"project-name\",\n org_id=test.org_id,\n project_owner_id=\"\u003cOWNER_ACCOUNT_ID\u003e\",\n teams=[\n {\n \"team_id\": \"5e0fa8c99ccf641c722fe645\",\n \"role_names\": [\"GROUP_OWNER\"],\n },\n {\n \"team_id\": \"5e1dd7b4f2a30ba80a70cd4rw\",\n \"role_names\": [\n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\",\n ],\n },\n ],\n limits=[\n {\n \"name\": \"atlas.project.deployment.clusters\",\n \"value\": 26,\n },\n {\n \"name\": \"atlas.project.deployment.nodesPerPrivateLinkRegion\",\n \"value\": 51,\n },\n ],\n is_collect_database_specifics_statistics_enabled=True,\n is_data_explorer_enabled=True,\n is_extended_storage_sizes_enabled=True,\n is_performance_advisor_enabled=True,\n is_realtime_performance_panel_enabled=True,\n is_schema_advisor_enabled=True,\n is_slow_operation_thresholding_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Mongodbatlas = Pulumi.Mongodbatlas;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test = Mongodbatlas.GetRolesOrgId.Invoke();\n\n var testProject = new Mongodbatlas.Project(\"test\", new()\n {\n Name = \"project-name\",\n OrgId = test.Apply(getRolesOrgIdResult =\u003e getRolesOrgIdResult.OrgId),\n ProjectOwnerId = \"\u003cOWNER_ACCOUNT_ID\u003e\",\n Teams = new[]\n {\n new Mongodbatlas.Inputs.ProjectTeamArgs\n {\n TeamId = \"5e0fa8c99ccf641c722fe645\",\n RoleNames = new[]\n {\n \"GROUP_OWNER\",\n },\n },\n new Mongodbatlas.Inputs.ProjectTeamArgs\n {\n TeamId = \"5e1dd7b4f2a30ba80a70cd4rw\",\n RoleNames = new[]\n {\n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\",\n },\n },\n },\n Limits = new[]\n {\n new Mongodbatlas.Inputs.ProjectLimitArgs\n {\n Name = \"atlas.project.deployment.clusters\",\n Value = 26,\n },\n new Mongodbatlas.Inputs.ProjectLimitArgs\n {\n Name = \"atlas.project.deployment.nodesPerPrivateLinkRegion\",\n Value = 51,\n },\n },\n IsCollectDatabaseSpecificsStatisticsEnabled = true,\n IsDataExplorerEnabled = true,\n IsExtendedStorageSizesEnabled = true,\n IsPerformanceAdvisorEnabled = true,\n IsRealtimePerformancePanelEnabled = true,\n IsSchemaAdvisorEnabled = true,\n IsSlowOperationThresholdingEnabled = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := mongodbatlas.GetRolesOrgId(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = mongodbatlas.NewProject(ctx, \"test\", \u0026mongodbatlas.ProjectArgs{\n\t\t\tName: pulumi.String(\"project-name\"),\n\t\t\tOrgId: pulumi.String(test.OrgId),\n\t\t\tProjectOwnerId: pulumi.String(\"\u003cOWNER_ACCOUNT_ID\u003e\"),\n\t\t\tTeams: mongodbatlas.ProjectTeamArray{\n\t\t\t\t\u0026mongodbatlas.ProjectTeamArgs{\n\t\t\t\t\tTeamId: pulumi.String(\"5e0fa8c99ccf641c722fe645\"),\n\t\t\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GROUP_OWNER\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.ProjectTeamArgs{\n\t\t\t\t\tTeamId: pulumi.String(\"5e1dd7b4f2a30ba80a70cd4rw\"),\n\t\t\t\t\tRoleNames: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"GROUP_READ_ONLY\"),\n\t\t\t\t\t\tpulumi.String(\"GROUP_DATA_ACCESS_READ_WRITE\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLimits: mongodbatlas.ProjectLimitArray{\n\t\t\t\t\u0026mongodbatlas.ProjectLimitArgs{\n\t\t\t\t\tName: pulumi.String(\"atlas.project.deployment.clusters\"),\n\t\t\t\t\tValue: pulumi.Int(26),\n\t\t\t\t},\n\t\t\t\t\u0026mongodbatlas.ProjectLimitArgs{\n\t\t\t\t\tName: pulumi.String(\"atlas.project.deployment.nodesPerPrivateLinkRegion\"),\n\t\t\t\t\tValue: pulumi.Int(51),\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsCollectDatabaseSpecificsStatisticsEnabled: pulumi.Bool(true),\n\t\t\tIsDataExplorerEnabled: pulumi.Bool(true),\n\t\t\tIsExtendedStorageSizesEnabled: pulumi.Bool(true),\n\t\t\tIsPerformanceAdvisorEnabled: pulumi.Bool(true),\n\t\t\tIsRealtimePerformancePanelEnabled: pulumi.Bool(true),\n\t\t\tIsSchemaAdvisorEnabled: pulumi.Bool(true),\n\t\t\tIsSlowOperationThresholdingEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.mongodbatlas.MongodbatlasFunctions;\nimport com.pulumi.mongodbatlas.Project;\nimport com.pulumi.mongodbatlas.ProjectArgs;\nimport com.pulumi.mongodbatlas.inputs.ProjectTeamArgs;\nimport com.pulumi.mongodbatlas.inputs.ProjectLimitArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var test = MongodbatlasFunctions.getRolesOrgId();\n\n var testProject = new Project(\"testProject\", ProjectArgs.builder()\n .name(\"project-name\")\n .orgId(test.applyValue(getRolesOrgIdResult -\u003e getRolesOrgIdResult.orgId()))\n .projectOwnerId(\"\u003cOWNER_ACCOUNT_ID\u003e\")\n .teams( \n ProjectTeamArgs.builder()\n .teamId(\"5e0fa8c99ccf641c722fe645\")\n .roleNames(\"GROUP_OWNER\")\n .build(),\n ProjectTeamArgs.builder()\n .teamId(\"5e1dd7b4f2a30ba80a70cd4rw\")\n .roleNames( \n \"GROUP_READ_ONLY\",\n \"GROUP_DATA_ACCESS_READ_WRITE\")\n .build())\n .limits( \n ProjectLimitArgs.builder()\n .name(\"atlas.project.deployment.clusters\")\n .value(26)\n .build(),\n ProjectLimitArgs.builder()\n .name(\"atlas.project.deployment.nodesPerPrivateLinkRegion\")\n .value(51)\n .build())\n .isCollectDatabaseSpecificsStatisticsEnabled(true)\n .isDataExplorerEnabled(true)\n .isExtendedStorageSizesEnabled(true)\n .isPerformanceAdvisorEnabled(true)\n .isRealtimePerformancePanelEnabled(true)\n .isSchemaAdvisorEnabled(true)\n .isSlowOperationThresholdingEnabled(true)\n .build());\n\n }\n}\n```\n```yaml\nresources:\n testProject:\n type: mongodbatlas:Project\n name: test\n properties:\n name: project-name\n orgId: ${test.orgId}\n projectOwnerId: \u003cOWNER_ACCOUNT_ID\u003e\n teams:\n - teamId: 5e0fa8c99ccf641c722fe645\n roleNames:\n - GROUP_OWNER\n - teamId: 5e1dd7b4f2a30ba80a70cd4rw\n roleNames:\n - GROUP_READ_ONLY\n - GROUP_DATA_ACCESS_READ_WRITE\n limits:\n - name: atlas.project.deployment.clusters\n value: 26\n - name: atlas.project.deployment.nodesPerPrivateLinkRegion\n value: 51\n isCollectDatabaseSpecificsStatisticsEnabled: true\n isDataExplorerEnabled: true\n isExtendedStorageSizesEnabled: true\n isPerformanceAdvisorEnabled: true\n isRealtimePerformancePanelEnabled: true\n isSchemaAdvisorEnabled: true\n isSlowOperationThresholdingEnabled: true\nvariables:\n test:\n fn::invoke:\n Function: mongodbatlas:getRolesOrgId\n Arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nProject must be imported using project ID, e.g.\n\n```sh\n$ pulumi import mongodbatlas:index/project:Project my_project 5d09d6a59ccf6445652a444a\n```\nFor more information see: [MongoDB Atlas Admin API Projects](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/#tag/Projects) and [MongoDB Atlas Admin API Teams](https://docs.atlas.mongodb.com/reference/api/teams/) Documentation for more information.\n\n", "properties": { "clusterCount": { "type": "integer", @@ -20306,6 +20340,11 @@ "type": "boolean", "description": "Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true.\n" }, + "isSlowOperationThresholdingEnabled": { + "type": "boolean", + "description": "(Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action.\n", + "deprecationMessage": "This parameter is deprecated and will be removed in version 1.24.0." + }, "limits": { "type": "array", "items": { @@ -20356,6 +20395,7 @@ "isPerformanceAdvisorEnabled", "isRealtimePerformancePanelEnabled", "isSchemaAdvisorEnabled", + "isSlowOperationThresholdingEnabled", "name", "orgId", "regionUsageRestrictions", @@ -20386,6 +20426,11 @@ "type": "boolean", "description": "Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true.\n" }, + "isSlowOperationThresholdingEnabled": { + "type": "boolean", + "description": "(Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action.\n", + "deprecationMessage": "This parameter is deprecated and will be removed in version 1.24.0." + }, "limits": { "type": "array", "items": { @@ -20469,6 +20514,11 @@ "type": "boolean", "description": "Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true.\n" }, + "isSlowOperationThresholdingEnabled": { + "type": "boolean", + "description": "(Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action.\n", + "deprecationMessage": "This parameter is deprecated and will be removed in version 1.24.0." + }, "limits": { "type": "array", "items": { @@ -20521,7 +20571,7 @@ }, "description": { "type": "string", - "description": "Description of this Project API key.\n" + "description": "Description of this Project API key.\n\n\u003e **NOTE:** Project created by API Keys must belong to an existing organization.\n" }, "privateKey": { "type": "string", @@ -20547,7 +20597,7 @@ "inputProperties": { "description": { "type": "string", - "description": "Description of this Project API key.\n" + "description": "Description of this Project API key.\n\n\u003e **NOTE:** Project created by API Keys must belong to an existing organization.\n" }, "projectAssignments": { "type": "array", @@ -20569,7 +20619,7 @@ }, "description": { "type": "string", - "description": "Description of this Project API key.\n" + "description": "Description of this Project API key.\n\n\u003e **NOTE:** Project created by API Keys must belong to an existing organization.\n" }, "privateKey": { "type": "string", @@ -22450,6 +22500,14 @@ "description": "Type of the cluster that you want to create.\n", "type": "string" }, + "configServerManagementMode": { + "description": "Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n", + "type": "string" + }, + "configServerType": { + "description": "Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/).\n", + "type": "string" + }, "connectionStrings": { "description": "Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.\n", "items": { @@ -22478,7 +22536,6 @@ "type": "string" }, "labels": { - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags", "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead.\n", "items": { "$ref": "#/types/mongodbatlas:index/getAdvancedClusterLabel:getAdvancedClusterLabel" @@ -22508,7 +22565,7 @@ "type": "string" }, "redactClientLogData": { - "description": "(Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n", + "description": "(Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info.\n", "type": "boolean" }, "replicaSetScalingStrategy": { @@ -22554,6 +22611,8 @@ "backupEnabled", "biConnectorConfigs", "clusterType", + "configServerManagementMode", + "configServerType", "connectionStrings", "createDate", "diskSizeGb", @@ -24250,7 +24309,6 @@ "type": "string" }, "labels": { - "deprecationMessage": "This parameter is deprecated and will be removed in the future. Please transition to tags", "description": "Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead.\n", "items": { "$ref": "#/types/mongodbatlas:index/getClusterLabel:getClusterLabel" @@ -24339,7 +24397,7 @@ "type": "string" }, "redactClientLogData": { - "description": "(Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info.\n", + "description": "(Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info.\n", "type": "boolean" }, "replicationFactor": { @@ -27935,6 +27993,11 @@ "description": "Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui).\n", "type": "boolean" }, + "isSlowOperationThresholdingEnabled": { + "deprecationMessage": "This parameter is deprecated and will be removed in version 1.24.0.", + "description": "(Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action.\n", + "type": "boolean" + }, "limits": { "description": "The limits for the specified project. See Limits.\n", "items": { @@ -27983,6 +28046,7 @@ "isPerformanceAdvisorEnabled", "isRealtimePerformancePanelEnabled", "isSchemaAdvisorEnabled", + "isSlowOperationThresholdingEnabled", "limits", "orgId", "regionUsageRestrictions", diff --git a/provider/go.mod b/provider/go.mod index 4b749e59..f2ec95c6 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -119,7 +119,7 @@ require ( github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-plugin-framework v1.12.0 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect - github.com/hashicorp/terraform-plugin-framework-validators v0.13.0 // indirect + github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 // indirect github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/hashicorp/terraform-plugin-mux v0.16.0 // indirect @@ -156,7 +156,7 @@ require ( github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/mongodb-forks/digest v1.1.0 // indirect - github.com/mongodb/terraform-provider-mongodbatlas v1.21.1 // indirect + github.com/mongodb/terraform-provider-mongodbatlas v1.21.3 // indirect github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect github.com/muesli/cancelreader v0.2.2 // indirect github.com/muesli/reflow v0.3.0 // indirect @@ -214,7 +214,7 @@ require ( github.com/zclconf/go-cty-yaml v1.0.2 // indirect go.mongodb.org/atlas v0.37.0 // indirect go.mongodb.org/atlas-sdk/v20240530005 v20240530005.0.0 // indirect - go.mongodb.org/atlas-sdk/v20240805004 v20240805004.6.0 // indirect + go.mongodb.org/atlas-sdk/v20240805005 v20240805005.0.0 // indirect go.mongodb.org/realm v0.1.0 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect diff --git a/provider/go.sum b/provider/go.sum index 24f97c01..87861d27 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1686,8 +1686,8 @@ github.com/hashicorp/terraform-plugin-framework v1.12.0 h1:7HKaueHPaikX5/7cbC1r9 github.com/hashicorp/terraform-plugin-framework v1.12.0/go.mod h1:N/IOQ2uYjW60Jp39Cp3mw7I/OpC/GfZ0385R0YibmkE= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1/go.mod h1:MsjL1sQ9L7wGwzJ5RjcI6FzEMdyoBnw+XK8ZnOvQOLY= -github.com/hashicorp/terraform-plugin-framework-validators v0.13.0 h1:bxZfGo9DIUoLLtHMElsu+zwqI4IsMZQBRRy4iLzZJ8E= -github.com/hashicorp/terraform-plugin-framework-validators v0.13.0/go.mod h1:wGeI02gEhj9nPANU62F2jCaHjXulejm/X+af4PdZaNo= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 h1:3PCn9iyzdVOgHYOBmncpSSOxjQhCTYmc+PGvbdlqSaI= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0/go.mod h1:LwDKNdzxrDY/mHBrlC6aYfE2fQ3Dk3gaJD64vNiXvo4= github.com/hashicorp/terraform-plugin-go v0.22.0/go.mod h1:mPULV91VKss7sik6KFEcEu7HuTogMLLO/EvWCuFkRVE= github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= @@ -1863,8 +1863,8 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/mongodb-forks/digest v1.1.0 h1:7eUdsR1BtqLv0mdNm4OXs6ddWvR4X2/OsLwdKksrOoc= github.com/mongodb-forks/digest v1.1.0/go.mod h1:rb+EX8zotClD5Dj4NdgxnJXG9nwrlx3NWKJ8xttz1Dg= -github.com/mongodb/terraform-provider-mongodbatlas v1.21.1 h1:OVAvFTns7qPvZCTtB41sBSxo6uOorsTZUCHU/SVg32k= -github.com/mongodb/terraform-provider-mongodbatlas v1.21.1/go.mod h1:fwLzmJbypjNU5q120CRsXMlnM3ThNEylzTNy+l53A3A= +github.com/mongodb/terraform-provider-mongodbatlas v1.21.3 h1:wzZa1TmDlfcYcqHNnpkPGR6/h/UUknPT5ng0tJm5XdI= +github.com/mongodb/terraform-provider-mongodbatlas v1.21.3/go.mod h1:zLNlIjAjKS7PLGfpcOe0KQhWDGOGn9CiWKu4cHWjdYk= github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI= github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= @@ -2130,8 +2130,8 @@ go.mongodb.org/atlas v0.37.0 h1:zQnO1o5+bVP9IotpAYpres4UjMD2F4nwNEFTZhNL4ck= go.mongodb.org/atlas v0.37.0/go.mod h1:DJYtM+vsEpPEMSkQzJnFHrT0sP7ev6cseZc/GGjJYG8= go.mongodb.org/atlas-sdk/v20240530005 v20240530005.0.0 h1:d/gbYJ+obR0EM/3DZf7+ZMi2QWISegm3mid7Or708cc= go.mongodb.org/atlas-sdk/v20240530005 v20240530005.0.0/go.mod h1:O47ZrMMfcWb31wznNIq2PQkkdoFoK0ea2GlmRqGJC2s= -go.mongodb.org/atlas-sdk/v20240805004 v20240805004.6.0 h1:Ee5Med1KFGZ63KOvcDyn6xlKRP7+Yddt0kGI8M/CbWk= -go.mongodb.org/atlas-sdk/v20240805004 v20240805004.6.0/go.mod h1:7KSDRNJm1Dxc+ggk2MOggp2/4zUpM4aRcP12evvsrQ4= +go.mongodb.org/atlas-sdk/v20240805005 v20240805005.0.0 h1:EGTT54tKbDbkhhK+jH5AqINFQbHdvaOSpI0oeI5Tl1s= +go.mongodb.org/atlas-sdk/v20240805005 v20240805005.0.0/go.mod h1:UTNpAyiKm/7utu+Nl0FafgjgvS+ONNGEoxBT5g/40WM= go.mongodb.org/realm v0.1.0 h1:zJiXyLaZrznQ+Pz947ziSrDKUep39DO4SfA0Fzx8M4M= go.mongodb.org/realm v0.1.0/go.mod h1:4Vj6iy+Puo1TDERcoh4XZ+pjtwbOzPpzqy3Cwe8ZmDM= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= diff --git a/provider/index-md-replaces/overview-input.md b/provider/index-md-replaces/overview-input.md new file mode 100644 index 00000000..b576e8df --- /dev/null +++ b/provider/index-md-replaces/overview-input.md @@ -0,0 +1,3 @@ +Speaking of changes, see [CHANGELOG](https://github.com/mongodb/terraform-provider-mongodbatlas/blob/master/CHANGELOG.md) for current version information. + +For the best experience, we recommend using the latest [HashiCorp Terraform Core Version](https://github.com/hashicorp/terraform). For more details see [HashiCorp Terraform Version Compatibility Matrix](https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs#hashicorp-terraform-versionhttpswwwterraformiodownloadshtml-compatibility-matrix). diff --git a/provider/resources.go b/provider/resources.go index 34b81214..b913777a 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -15,8 +15,10 @@ package mongodbatlas import ( + "bytes" "context" "fmt" + "os" "path/filepath" "regexp" "unicode" @@ -169,8 +171,15 @@ func Provider() tfbridge.ProviderInfo { } func docEditRules(defaults []tfbridge.DocsEdit) []tfbridge.DocsEdit { + edits := []tfbridge.DocsEdit{ + // These sections would trigger other edit rules so they must run first for discovery. + cleanUpOverviewSection, + } + edits = append(edits, + defaults..., + ) return append( - defaults, + edits, skipSections(), ) } @@ -199,4 +208,27 @@ func skipSections() tfbridge.DocsEdit { } } +var cleanUpOverviewSection = tfbridge.DocsEdit{ + Path: "index.md", + Edit: func(_ string, content []byte) ([]byte, error) { + replacesDir := "provider/index-md-replaces/" + + input, err := os.ReadFile(replacesDir + "overview-input.md") + if err != nil { + return nil, err + } + if bytes.Contains(content, input) { + content = bytes.ReplaceAll( + content, + input, + nil) + } else { + // Hard error to ensure we keep this content up to date + return nil, fmt.Errorf("could not find text in upstream index.md, "+ + "please verify file content at %s\n*****\n%s\n*****\n", replacesDir+"overview-input.md", string(input)) + } + return content, nil + }, +} + var noUpstreamDocs = &tfbridge.DocInfo{AllowMissing: true} diff --git a/provider/shim/go.mod b/provider/shim/go.mod index cf1231ea..88999494 100644 --- a/provider/shim/go.mod +++ b/provider/shim/go.mod @@ -5,7 +5,7 @@ go 1.23.2 require ( github.com/hashicorp/terraform-plugin-framework v1.12.0 github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 - github.com/mongodb/terraform-provider-mongodbatlas v1.21.1 + github.com/mongodb/terraform-provider-mongodbatlas v1.21.3 ) require ( @@ -48,7 +48,7 @@ require ( github.com/hashicorp/hcl/v2 v2.22.0 // indirect github.com/hashicorp/logutils v1.0.0 // indirect github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 // indirect - github.com/hashicorp/terraform-plugin-framework-validators v0.13.0 // indirect + github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 // indirect github.com/hashicorp/terraform-plugin-go v0.24.0 // indirect github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect github.com/hashicorp/terraform-plugin-mux v0.16.0 // indirect @@ -83,7 +83,7 @@ require ( github.com/zclconf/go-cty-yaml v1.0.2 // indirect go.mongodb.org/atlas v0.37.0 // indirect go.mongodb.org/atlas-sdk/v20240530005 v20240530005.0.0 // indirect - go.mongodb.org/atlas-sdk/v20240805004 v20240805004.6.0 // indirect + go.mongodb.org/atlas-sdk/v20240805005 v20240805005.0.0 // indirect go.mongodb.org/realm v0.1.0 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.47.0 // indirect diff --git a/provider/shim/go.sum b/provider/shim/go.sum index c9f44096..fc1f621e 100644 --- a/provider/shim/go.sum +++ b/provider/shim/go.sum @@ -471,8 +471,8 @@ github.com/hashicorp/terraform-plugin-framework v1.12.0 h1:7HKaueHPaikX5/7cbC1r9 github.com/hashicorp/terraform-plugin-framework v1.12.0/go.mod h1:N/IOQ2uYjW60Jp39Cp3mw7I/OpC/GfZ0385R0YibmkE= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1 h1:gm5b1kHgFFhaKFhm4h2TgvMUlNzFAtUqlcOWnWPm+9E= github.com/hashicorp/terraform-plugin-framework-timeouts v0.4.1/go.mod h1:MsjL1sQ9L7wGwzJ5RjcI6FzEMdyoBnw+XK8ZnOvQOLY= -github.com/hashicorp/terraform-plugin-framework-validators v0.13.0 h1:bxZfGo9DIUoLLtHMElsu+zwqI4IsMZQBRRy4iLzZJ8E= -github.com/hashicorp/terraform-plugin-framework-validators v0.13.0/go.mod h1:wGeI02gEhj9nPANU62F2jCaHjXulejm/X+af4PdZaNo= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0 h1:3PCn9iyzdVOgHYOBmncpSSOxjQhCTYmc+PGvbdlqSaI= +github.com/hashicorp/terraform-plugin-framework-validators v0.14.0/go.mod h1:LwDKNdzxrDY/mHBrlC6aYfE2fQ3Dk3gaJD64vNiXvo4= github.com/hashicorp/terraform-plugin-go v0.24.0 h1:2WpHhginCdVhFIrWHxDEg6RBn3YaWzR2o6qUeIEat2U= github.com/hashicorp/terraform-plugin-go v0.24.0/go.mod h1:tUQ53lAsOyYSckFGEefGC5C8BAaO0ENqzFd3bQeuYQg= github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0= @@ -578,8 +578,8 @@ github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zx github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mongodb-forks/digest v1.1.0 h1:7eUdsR1BtqLv0mdNm4OXs6ddWvR4X2/OsLwdKksrOoc= github.com/mongodb-forks/digest v1.1.0/go.mod h1:rb+EX8zotClD5Dj4NdgxnJXG9nwrlx3NWKJ8xttz1Dg= -github.com/mongodb/terraform-provider-mongodbatlas v1.21.1 h1:OVAvFTns7qPvZCTtB41sBSxo6uOorsTZUCHU/SVg32k= -github.com/mongodb/terraform-provider-mongodbatlas v1.21.1/go.mod h1:fwLzmJbypjNU5q120CRsXMlnM3ThNEylzTNy+l53A3A= +github.com/mongodb/terraform-provider-mongodbatlas v1.21.3 h1:wzZa1TmDlfcYcqHNnpkPGR6/h/UUknPT5ng0tJm5XdI= +github.com/mongodb/terraform-provider-mongodbatlas v1.21.3/go.mod h1:zLNlIjAjKS7PLGfpcOe0KQhWDGOGn9CiWKu4cHWjdYk= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/oklog/run v1.0.0 h1:Ru7dDtJNOyC66gQ5dQmaCa0qIsAUFY3sFpK1Xk8igrw= github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= @@ -598,8 +598,8 @@ github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSg github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= -github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= @@ -669,8 +669,8 @@ go.mongodb.org/atlas v0.37.0 h1:zQnO1o5+bVP9IotpAYpres4UjMD2F4nwNEFTZhNL4ck= go.mongodb.org/atlas v0.37.0/go.mod h1:DJYtM+vsEpPEMSkQzJnFHrT0sP7ev6cseZc/GGjJYG8= go.mongodb.org/atlas-sdk/v20240530005 v20240530005.0.0 h1:d/gbYJ+obR0EM/3DZf7+ZMi2QWISegm3mid7Or708cc= go.mongodb.org/atlas-sdk/v20240530005 v20240530005.0.0/go.mod h1:O47ZrMMfcWb31wznNIq2PQkkdoFoK0ea2GlmRqGJC2s= -go.mongodb.org/atlas-sdk/v20240805004 v20240805004.6.0 h1:Ee5Med1KFGZ63KOvcDyn6xlKRP7+Yddt0kGI8M/CbWk= -go.mongodb.org/atlas-sdk/v20240805004 v20240805004.6.0/go.mod h1:7KSDRNJm1Dxc+ggk2MOggp2/4zUpM4aRcP12evvsrQ4= +go.mongodb.org/atlas-sdk/v20240805005 v20240805005.0.0 h1:EGTT54tKbDbkhhK+jH5AqINFQbHdvaOSpI0oeI5Tl1s= +go.mongodb.org/atlas-sdk/v20240805005 v20240805005.0.0/go.mod h1:UTNpAyiKm/7utu+Nl0FafgjgvS+ONNGEoxBT5g/40WM= go.mongodb.org/realm v0.1.0 h1:zJiXyLaZrznQ+Pz947ziSrDKUep39DO4SfA0Fzx8M4M= go.mongodb.org/realm v0.1.0/go.mod h1:4Vj6iy+Puo1TDERcoh4XZ+pjtwbOzPpzqy3Cwe8ZmDM= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= diff --git a/sdk/dotnet/AdvancedCluster.cs b/sdk/dotnet/AdvancedCluster.cs index 6697c878..210e72f3 100644 --- a/sdk/dotnet/AdvancedCluster.cs +++ b/sdk/dotnet/AdvancedCluster.cs @@ -10,24 +10,6 @@ namespace Pulumi.Mongodbatlas { /// - /// ## # Resource: mongodbatlas.AdvancedCluster - /// - /// `mongodbatlas.AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID. - /// - /// More information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations) - /// - /// > **IMPORTANT:** The primary difference between `mongodbatlas.Cluster` and `mongodbatlas.AdvancedCluster` is that `mongodbatlas.AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `mongodbatlas.AdvancedCluster` resource. - /// - /// > **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy). - /// - /// > **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information. - /// - /// > **NOTE:** To enable Cluster Extended Storage Sizes use the `is_extended_storage_sizes_enabled` parameter in the mongodbatlas.Project resource. - /// - /// > **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/). - /// - /// > **NOTE:** Groups and projects are synonymous terms. You might find group_id in the official documentation. - /// /// ## Example Usage /// /// ### Example single provider and single region @@ -534,6 +516,18 @@ public partial class AdvancedCluster : global::Pulumi.CustomResource [Output("clusterType")] public Output ClusterType { get; private set; } = null!; + /// + /// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + [Output("configServerManagementMode")] + public Output ConfigServerManagementMode { get; private set; } = null!; + + /// + /// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + [Output("configServerType")] + public Output ConfigServerType { get; private set; } = null!; + /// /// Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. /// @@ -601,7 +595,7 @@ public partial class AdvancedCluster : global::Pulumi.CustomResource public Output ProjectId { get; private set; } = null!; /// - /// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. /// [Output("redactClientLogData")] public Output RedactClientLogData { get; private set; } = null!; @@ -748,6 +742,12 @@ public sealed class AdvancedClusterArgs : global::Pulumi.ResourceArgs [Input("clusterType", required: true)] public Input ClusterType { get; set; } = null!; + /// + /// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + [Input("configServerManagementMode")] + public Input? ConfigServerManagementMode { get; set; } + /// /// Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. /// @@ -772,7 +772,6 @@ public sealed class AdvancedClusterArgs : global::Pulumi.ResourceArgs /// /// Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. /// - [Obsolete(@"This parameter is deprecated and will be removed in the future. Please transition to tags")] public InputList Labels { get => _labels ?? (_labels = new InputList()); @@ -807,7 +806,7 @@ public InputList Labels public Input ProjectId { get; set; } = null!; /// - /// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. /// [Input("redactClientLogData")] public Input? RedactClientLogData { get; set; } @@ -921,6 +920,18 @@ public sealed class AdvancedClusterState : global::Pulumi.ResourceArgs [Input("clusterType")] public Input? ClusterType { get; set; } + /// + /// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + [Input("configServerManagementMode")] + public Input? ConfigServerManagementMode { get; set; } + + /// + /// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + [Input("configServerType")] + public Input? ConfigServerType { get; set; } + [Input("connectionStrings")] private InputList? _connectionStrings; @@ -960,7 +971,6 @@ public InputList ConnectionString /// /// Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. /// - [Obsolete(@"This parameter is deprecated and will be removed in the future. Please transition to tags")] public InputList Labels { get => _labels ?? (_labels = new InputList()); @@ -1001,7 +1011,7 @@ public InputList Labels public Input? ProjectId { get; set; } /// - /// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. /// [Input("redactClientLogData")] public Input? RedactClientLogData { get; set; } diff --git a/sdk/dotnet/Cluster.cs b/sdk/dotnet/Cluster.cs index 775cb17d..cf8e8da8 100644 --- a/sdk/dotnet/Cluster.cs +++ b/sdk/dotnet/Cluster.cs @@ -572,7 +572,7 @@ public partial class Cluster : global::Pulumi.CustomResource public Output ProviderVolumeType { get; private set; } = null!; /// - /// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + /// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. /// [Output("redactClientLogData")] public Output RedactClientLogData { get; private set; } = null!; @@ -780,7 +780,6 @@ public sealed class ClusterArgs : global::Pulumi.ResourceArgs /// /// Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. /// - [Obsolete(@"This parameter is deprecated and will be removed in the future. Please transition to tags")] public InputList Labels { get => _labels ?? (_labels = new InputList()); @@ -885,7 +884,7 @@ public InputList Labels public Input? ProviderVolumeType { get; set; } /// - /// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + /// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. /// [Input("redactClientLogData")] public Input? RedactClientLogData { get; set; } @@ -1067,7 +1066,6 @@ public InputList ConnectionStrings /// /// Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. /// - [Obsolete(@"This parameter is deprecated and will be removed in the future. Please transition to tags")] public InputList Labels { get => _labels ?? (_labels = new InputList()); @@ -1199,7 +1197,7 @@ public InputList Labels public Input? ProviderVolumeType { get; set; } /// - /// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + /// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. /// [Input("redactClientLogData")] public Input? RedactClientLogData { get; set; } diff --git a/sdk/dotnet/GetAdvancedCluster.cs b/sdk/dotnet/GetAdvancedCluster.cs index 3bf39701..6852909a 100644 --- a/sdk/dotnet/GetAdvancedCluster.cs +++ b/sdk/dotnet/GetAdvancedCluster.cs @@ -349,6 +349,14 @@ public sealed class GetAdvancedClusterResult /// public readonly string ClusterType; /// + /// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + public readonly string ConfigServerManagementMode; + /// + /// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + public readonly string ConfigServerType; + /// /// Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. /// public readonly ImmutableArray ConnectionStrings; @@ -392,7 +400,7 @@ public sealed class GetAdvancedClusterResult public readonly bool PitEnabled; public readonly string ProjectId; /// - /// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. /// public readonly bool RedactClientLogData; /// @@ -435,6 +443,10 @@ private GetAdvancedClusterResult( string clusterType, + string configServerManagementMode, + + string configServerType, + ImmutableArray connectionStrings, string createDate, @@ -483,6 +495,8 @@ private GetAdvancedClusterResult( BackupEnabled = backupEnabled; BiConnectorConfigs = biConnectorConfigs; ClusterType = clusterType; + ConfigServerManagementMode = configServerManagementMode; + ConfigServerType = configServerType; ConnectionStrings = connectionStrings; CreateDate = createDate; DiskSizeGb = diskSizeGb; diff --git a/sdk/dotnet/GetCluster.cs b/sdk/dotnet/GetCluster.cs index 3b9939de..ec053662 100644 --- a/sdk/dotnet/GetCluster.cs +++ b/sdk/dotnet/GetCluster.cs @@ -314,7 +314,7 @@ public sealed class GetClusterResult /// public readonly string ProviderVolumeType; /// - /// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. /// public readonly bool RedactClientLogData; /// diff --git a/sdk/dotnet/GetProject.cs b/sdk/dotnet/GetProject.cs index 1a80ecb3..04143908 100644 --- a/sdk/dotnet/GetProject.cs +++ b/sdk/dotnet/GetProject.cs @@ -331,6 +331,10 @@ public sealed class GetProjectResult /// public readonly bool IsSchemaAdvisorEnabled; /// + /// (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + /// + public readonly bool IsSlowOperationThresholdingEnabled; + /// /// The limits for the specified project. See Limits. /// public readonly ImmutableArray Limits; @@ -378,6 +382,8 @@ private GetProjectResult( bool isSchemaAdvisorEnabled, + bool isSlowOperationThresholdingEnabled, + ImmutableArray limits, string? name, @@ -402,6 +408,7 @@ private GetProjectResult( IsPerformanceAdvisorEnabled = isPerformanceAdvisorEnabled; IsRealtimePerformancePanelEnabled = isRealtimePerformancePanelEnabled; IsSchemaAdvisorEnabled = isSchemaAdvisorEnabled; + IsSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; Limits = limits; Name = name; OrgId = orgId; diff --git a/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.cs index 38e58397..67a3a66e 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.cs @@ -22,7 +22,7 @@ public sealed class AdvancedClusterConnectionStringPrivateEndpointEndpointArgs : /// - `AWS` - Amazon AWS /// - `GCP` - Google Cloud Platform /// - `AZURE` - Microsoft Azure - /// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + /// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. /// [Input("providerName")] public Input? ProviderName { get; set; } diff --git a/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointGetArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointGetArgs.cs index 169aa562..4118e7ae 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointGetArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointGetArgs.cs @@ -22,7 +22,7 @@ public sealed class AdvancedClusterConnectionStringPrivateEndpointEndpointGetArg /// - `AWS` - Amazon AWS /// - `GCP` - Google Cloud Platform /// - `AZURE` - Microsoft Azure - /// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + /// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. /// [Input("providerName")] public Input? ProviderName { get; set; } diff --git a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecArgs.cs index 56fded31..334543a4 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecArgs.cs @@ -20,9 +20,15 @@ public InputMap ContainerId set => _containerId = value; } + /// + /// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + /// [Input("externalId")] public Input? ExternalId { get; set; } + /// + /// **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecGetArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecGetArgs.cs index a6cef2c1..4c7aee7f 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecGetArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecGetArgs.cs @@ -20,9 +20,15 @@ public InputMap ContainerId set => _containerId = value; } + /// + /// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + /// [Input("externalId")] public Input? ExternalId { get; set; } + /// + /// **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.cs index 2e69be1b..fc28fac2 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.cs @@ -34,7 +34,7 @@ public sealed class AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScali public Input? ComputeScaleDownEnabled { get; set; } /// - /// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + /// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. /// [Input("diskGbEnabled")] public Input? DiskGbEnabled { get; set; } diff --git a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingGetArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingGetArgs.cs index 5f129f55..c47ae56d 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingGetArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingGetArgs.cs @@ -34,7 +34,7 @@ public sealed class AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScali public Input? ComputeScaleDownEnabled { get; set; } /// - /// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + /// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. /// [Input("diskGbEnabled")] public Input? DiskGbEnabled { get; set; } diff --git a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigArgs.cs index 68a774c8..884fbde1 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigArgs.cs @@ -57,7 +57,7 @@ public sealed class AdvancedClusterReplicationSpecRegionConfigArgs : global::Pul /// - `AWS` - Amazon AWS /// - `GCP` - Google Cloud Platform /// - `AZURE` - Microsoft Azure - /// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + /// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. /// [Input("providerName", required: true)] public Input ProviderName { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigGetArgs.cs b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigGetArgs.cs index f5512cd2..7ba32260 100644 --- a/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AdvancedClusterReplicationSpecRegionConfigGetArgs.cs @@ -57,7 +57,7 @@ public sealed class AdvancedClusterReplicationSpecRegionConfigGetArgs : global:: /// - `AWS` - Amazon AWS /// - `GCP` - Google Cloud Platform /// - `AZURE` - Microsoft Azure - /// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + /// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. /// [Input("providerName", required: true)] public Input ProviderName { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/ClusterReplicationSpecArgs.cs b/sdk/dotnet/Inputs/ClusterReplicationSpecArgs.cs index 9b86f218..ad3c22e1 100644 --- a/sdk/dotnet/Inputs/ClusterReplicationSpecArgs.cs +++ b/sdk/dotnet/Inputs/ClusterReplicationSpecArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Mongodbatlas.Inputs public sealed class ClusterReplicationSpecArgs : global::Pulumi.ResourceArgs { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/ClusterReplicationSpecGetArgs.cs b/sdk/dotnet/Inputs/ClusterReplicationSpecGetArgs.cs index 0979bc25..bcaeafe0 100644 --- a/sdk/dotnet/Inputs/ClusterReplicationSpecGetArgs.cs +++ b/sdk/dotnet/Inputs/ClusterReplicationSpecGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Mongodbatlas.Inputs public sealed class ClusterReplicationSpecGetArgs : global::Pulumi.ResourceArgs { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyArgs.cs b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyArgs.cs index efacdf45..6c3fb64e 100644 --- a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyArgs.cs +++ b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Mongodbatlas.Inputs public sealed class ClusterSnapshotBackupPolicyPolicyArgs : global::Pulumi.ResourceArgs { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyGetArgs.cs b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyGetArgs.cs index 66ea3c4b..82eba8c6 100644 --- a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyGetArgs.cs +++ b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyGetArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.Mongodbatlas.Inputs public sealed class ClusterSnapshotBackupPolicyPolicyGetArgs : global::Pulumi.ResourceArgs { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.cs b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.cs index 0a507a82..c0b22a03 100644 --- a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.cs +++ b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.cs @@ -19,7 +19,7 @@ public sealed class ClusterSnapshotBackupPolicyPolicyPolicyItemArgs : global::Pu public Input? FrequencyType { get; set; } /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemGetArgs.cs b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemGetArgs.cs index 5f03d2f1..067edc35 100644 --- a/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemGetArgs.cs +++ b/sdk/dotnet/Inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemGetArgs.cs @@ -19,7 +19,7 @@ public sealed class ClusterSnapshotBackupPolicyPolicyPolicyItemGetArgs : global: public Input? FrequencyType { get; set; } /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// [Input("id")] public Input? Id { get; set; } diff --git a/sdk/dotnet/Outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.cs b/sdk/dotnet/Outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.cs index 888f8162..ddce2ce7 100644 --- a/sdk/dotnet/Outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.cs +++ b/sdk/dotnet/Outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.cs @@ -21,7 +21,7 @@ public sealed class AdvancedClusterConnectionStringPrivateEndpointEndpoint /// - `AWS` - Amazon AWS /// - `GCP` - Google Cloud Platform /// - `AZURE` - Microsoft Azure - /// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + /// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. /// public readonly string? ProviderName; public readonly string? Region; diff --git a/sdk/dotnet/Outputs/AdvancedClusterReplicationSpec.cs b/sdk/dotnet/Outputs/AdvancedClusterReplicationSpec.cs index 8275dfde..69087467 100644 --- a/sdk/dotnet/Outputs/AdvancedClusterReplicationSpec.cs +++ b/sdk/dotnet/Outputs/AdvancedClusterReplicationSpec.cs @@ -14,7 +14,13 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class AdvancedClusterReplicationSpec { public readonly ImmutableDictionary? ContainerId; + /// + /// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + /// public readonly string? ExternalId; + /// + /// **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + /// public readonly string? Id; /// /// Provide this value if you set a `cluster_type` of SHARDED or GEOSHARDED. Omit this value if you selected a `cluster_type` of REPLICASET. This API resource accepts 1 through 50, inclusive. This parameter defaults to 1. If you specify a `num_shards` value of 1 and a `cluster_type` of SHARDED, Atlas deploys a single-shard [sharded cluster](https://docs.atlas.mongodb.com/reference/glossary/#std-term-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. diff --git a/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfig.cs b/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfig.cs index d56d3e13..236d111f 100644 --- a/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfig.cs +++ b/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfig.cs @@ -46,7 +46,7 @@ public sealed class AdvancedClusterReplicationSpecRegionConfig /// - `AWS` - Amazon AWS /// - `GCP` - Google Cloud Platform /// - `AZURE` - Microsoft Azure - /// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + /// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. /// public readonly string ProviderName; /// diff --git a/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.cs b/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.cs index 26158c60..921c693e 100644 --- a/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.cs +++ b/sdk/dotnet/Outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.cs @@ -27,7 +27,7 @@ public sealed class AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScali /// public readonly bool? ComputeScaleDownEnabled; /// - /// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + /// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. /// public readonly bool? DiskGbEnabled; diff --git a/sdk/dotnet/Outputs/ClusterReplicationSpec.cs b/sdk/dotnet/Outputs/ClusterReplicationSpec.cs index a1c33b39..5fedb742 100644 --- a/sdk/dotnet/Outputs/ClusterReplicationSpec.cs +++ b/sdk/dotnet/Outputs/ClusterReplicationSpec.cs @@ -14,7 +14,7 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class ClusterReplicationSpec { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string? Id; /// diff --git a/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicy.cs b/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicy.cs index b9ec31b5..439ebe92 100644 --- a/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicy.cs +++ b/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicy.cs @@ -14,7 +14,7 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class ClusterSnapshotBackupPolicyPolicy { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string? Id; public readonly ImmutableArray PolicyItems; diff --git a/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.cs b/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.cs index 5ae72934..36d31a9e 100644 --- a/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.cs +++ b/sdk/dotnet/Outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.cs @@ -16,7 +16,7 @@ public sealed class ClusterSnapshotBackupPolicyPolicyPolicyItem public readonly int? FrequencyInterval; public readonly string? FrequencyType; /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string? Id; public readonly string? RetentionUnit; diff --git a/sdk/dotnet/Outputs/GetAdvancedClusterReplicationSpecResult.cs b/sdk/dotnet/Outputs/GetAdvancedClusterReplicationSpecResult.cs index 6f027f7a..efa181ff 100644 --- a/sdk/dotnet/Outputs/GetAdvancedClusterReplicationSpecResult.cs +++ b/sdk/dotnet/Outputs/GetAdvancedClusterReplicationSpecResult.cs @@ -17,6 +17,9 @@ public sealed class GetAdvancedClusterReplicationSpecResult /// A key-value map of the Network Peering Container ID(s) for the configuration specified in `region_configs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. /// public readonly ImmutableDictionary ContainerId; + /// + /// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + /// public readonly string ExternalId; public readonly string Id; /// diff --git a/sdk/dotnet/Outputs/GetAdvancedClustersResultReplicationSpecResult.cs b/sdk/dotnet/Outputs/GetAdvancedClustersResultReplicationSpecResult.cs index f0f8c337..7b26fae5 100644 --- a/sdk/dotnet/Outputs/GetAdvancedClustersResultReplicationSpecResult.cs +++ b/sdk/dotnet/Outputs/GetAdvancedClustersResultReplicationSpecResult.cs @@ -17,6 +17,9 @@ public sealed class GetAdvancedClustersResultReplicationSpecResult /// A key-value map of the Network Peering Container ID(s) for the configuration specified in `region_configs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. /// public readonly ImmutableDictionary ContainerId; + /// + /// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + /// public readonly string ExternalId; public readonly string Id; /// diff --git a/sdk/dotnet/Outputs/GetAdvancedClustersResultResult.cs b/sdk/dotnet/Outputs/GetAdvancedClustersResultResult.cs index 4da3d699..0645873f 100644 --- a/sdk/dotnet/Outputs/GetAdvancedClustersResultResult.cs +++ b/sdk/dotnet/Outputs/GetAdvancedClustersResultResult.cs @@ -27,6 +27,14 @@ public sealed class GetAdvancedClustersResultResult /// public readonly string ClusterType; /// + /// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + public readonly string ConfigServerManagementMode; + /// + /// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + /// + public readonly string ConfigServerType; + /// /// Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. /// public readonly ImmutableArray ConnectionStrings; @@ -65,7 +73,7 @@ public sealed class GetAdvancedClustersResultResult /// public readonly bool PitEnabled; /// - /// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. /// public readonly bool RedactClientLogData; /// @@ -107,6 +115,10 @@ private GetAdvancedClustersResultResult( string clusterType, + string configServerManagementMode, + + string configServerType, + ImmutableArray connectionStrings, string createDate, @@ -149,6 +161,8 @@ private GetAdvancedClustersResultResult( BackupEnabled = backupEnabled; BiConnectorConfigs = biConnectorConfigs; ClusterType = clusterType; + ConfigServerManagementMode = configServerManagementMode; + ConfigServerType = configServerType; ConnectionStrings = connectionStrings; CreateDate = createDate; DiskSizeGb = diskSizeGb; diff --git a/sdk/dotnet/Outputs/GetClusterReplicationSpecResult.cs b/sdk/dotnet/Outputs/GetClusterReplicationSpecResult.cs index 1156e6f2..a7ab8796 100644 --- a/sdk/dotnet/Outputs/GetClusterReplicationSpecResult.cs +++ b/sdk/dotnet/Outputs/GetClusterReplicationSpecResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class GetClusterReplicationSpecResult { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string Id; /// diff --git a/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItemResult.cs b/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItemResult.cs index 03e41da2..2ac85ca5 100644 --- a/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItemResult.cs +++ b/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItemResult.cs @@ -16,7 +16,7 @@ public sealed class GetClusterSnapshotBackupPolicyPolicyPolicyItemResult public readonly int FrequencyInterval; public readonly string FrequencyType; /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string Id; public readonly string RetentionUnit; diff --git a/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyResult.cs b/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyResult.cs index fc24dcec..b1dbef71 100644 --- a/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyResult.cs +++ b/sdk/dotnet/Outputs/GetClusterSnapshotBackupPolicyPolicyResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class GetClusterSnapshotBackupPolicyPolicyResult { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string Id; public readonly ImmutableArray PolicyItems; diff --git a/sdk/dotnet/Outputs/GetClustersResultReplicationSpecResult.cs b/sdk/dotnet/Outputs/GetClustersResultReplicationSpecResult.cs index 58e69e5b..2d0fc42f 100644 --- a/sdk/dotnet/Outputs/GetClustersResultReplicationSpecResult.cs +++ b/sdk/dotnet/Outputs/GetClustersResultReplicationSpecResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class GetClustersResultReplicationSpecResult { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string Id; /// diff --git a/sdk/dotnet/Outputs/GetClustersResultResult.cs b/sdk/dotnet/Outputs/GetClustersResultResult.cs index 470cb8b5..8417bf5a 100644 --- a/sdk/dotnet/Outputs/GetClustersResultResult.cs +++ b/sdk/dotnet/Outputs/GetClustersResultResult.cs @@ -143,7 +143,7 @@ public sealed class GetClustersResultResult /// public readonly string ProviderVolumeType; /// - /// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + /// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. /// public readonly bool RedactClientLogData; /// diff --git a/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItemResult.cs b/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItemResult.cs index 481c7f69..41abd2fa 100644 --- a/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItemResult.cs +++ b/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItemResult.cs @@ -16,7 +16,7 @@ public sealed class GetClustersResultSnapshotBackupPolicyPolicyPolicyItemResult public readonly int FrequencyInterval; public readonly string FrequencyType; /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string Id; public readonly string RetentionUnit; diff --git a/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyResult.cs b/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyResult.cs index 2e0040c0..ef3a04fb 100644 --- a/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyResult.cs +++ b/sdk/dotnet/Outputs/GetClustersResultSnapshotBackupPolicyPolicyResult.cs @@ -14,7 +14,7 @@ namespace Pulumi.Mongodbatlas.Outputs public sealed class GetClustersResultSnapshotBackupPolicyPolicyResult { /// - /// Unique identifer of the replication document for a zone in a Global Cluster. + /// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. /// public readonly string Id; public readonly ImmutableArray PolicyItems; diff --git a/sdk/dotnet/Outputs/GetProjectsResultResult.cs b/sdk/dotnet/Outputs/GetProjectsResultResult.cs index f3869848..046bd30b 100644 --- a/sdk/dotnet/Outputs/GetProjectsResultResult.cs +++ b/sdk/dotnet/Outputs/GetProjectsResultResult.cs @@ -54,6 +54,10 @@ public sealed class GetProjectsResultResult /// public readonly bool IsSchemaAdvisorEnabled; /// + /// Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + /// + public readonly bool IsSlowOperationThresholdingEnabled; + /// /// The limits for the specified project. See Limits. /// public readonly ImmutableArray Limits; @@ -98,6 +102,8 @@ private GetProjectsResultResult( bool isSchemaAdvisorEnabled, + bool isSlowOperationThresholdingEnabled, + ImmutableArray limits, string name, @@ -122,6 +128,7 @@ private GetProjectsResultResult( IsPerformanceAdvisorEnabled = isPerformanceAdvisorEnabled; IsRealtimePerformancePanelEnabled = isRealtimePerformancePanelEnabled; IsSchemaAdvisorEnabled = isSchemaAdvisorEnabled; + IsSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; Limits = limits; Name = name; OrgId = orgId; diff --git a/sdk/dotnet/Project.cs b/sdk/dotnet/Project.cs index 11cf9396..14d6b6b7 100644 --- a/sdk/dotnet/Project.cs +++ b/sdk/dotnet/Project.cs @@ -72,6 +72,7 @@ namespace Pulumi.Mongodbatlas /// IsPerformanceAdvisorEnabled = true, /// IsRealtimePerformancePanelEnabled = true, /// IsSchemaAdvisorEnabled = true, + /// IsSlowOperationThresholdingEnabled = true, /// }); /// /// }); @@ -143,6 +144,12 @@ public partial class Project : global::Pulumi.CustomResource [Output("isSchemaAdvisorEnabled")] public Output IsSchemaAdvisorEnabled { get; private set; } = null!; + /// + /// (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + /// + [Output("isSlowOperationThresholdingEnabled")] + public Output IsSlowOperationThresholdingEnabled { get; private set; } = null!; + [Output("limits")] public Output> Limits { get; private set; } = null!; @@ -267,6 +274,12 @@ public sealed class ProjectArgs : global::Pulumi.ResourceArgs [Input("isSchemaAdvisorEnabled")] public Input? IsSchemaAdvisorEnabled { get; set; } + /// + /// (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + /// + [Input("isSlowOperationThresholdingEnabled")] + public Input? IsSlowOperationThresholdingEnabled { get; set; } + [Input("limits")] private InputList? _limits; public InputList Limits @@ -387,6 +400,12 @@ public sealed class ProjectState : global::Pulumi.ResourceArgs [Input("isSchemaAdvisorEnabled")] public Input? IsSchemaAdvisorEnabled { get; set; } + /// + /// (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + /// + [Input("isSlowOperationThresholdingEnabled")] + public Input? IsSlowOperationThresholdingEnabled { get; set; } + [Input("limits")] private InputList? _limits; public InputList Limits diff --git a/sdk/dotnet/ProjectApiKey.cs b/sdk/dotnet/ProjectApiKey.cs index c26de5ab..c888ae00 100644 --- a/sdk/dotnet/ProjectApiKey.cs +++ b/sdk/dotnet/ProjectApiKey.cs @@ -99,6 +99,8 @@ public partial class ProjectApiKey : global::Pulumi.CustomResource /// /// Description of this Project API key. + /// + /// > **NOTE:** Project created by API Keys must belong to an existing organization. /// [Output("description")] public Output Description { get; private set; } = null!; @@ -164,6 +166,8 @@ public sealed class ProjectApiKeyArgs : global::Pulumi.ResourceArgs { /// /// Description of this Project API key. + /// + /// > **NOTE:** Project created by API Keys must belong to an existing organization. /// [Input("description", required: true)] public Input Description { get; set; } = null!; @@ -192,6 +196,8 @@ public sealed class ProjectApiKeyState : global::Pulumi.ResourceArgs /// /// Description of this Project API key. + /// + /// > **NOTE:** Project created by API Keys must belong to an existing organization. /// [Input("description")] public Input? Description { get; set; } diff --git a/sdk/go/mongodbatlas/advancedCluster.go b/sdk/go/mongodbatlas/advancedCluster.go index 6cc7d78e..339a5f52 100644 --- a/sdk/go/mongodbatlas/advancedCluster.go +++ b/sdk/go/mongodbatlas/advancedCluster.go @@ -12,24 +12,6 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// ## # Resource: AdvancedCluster -// -// `AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID. -// -// More information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations) -// -// > **IMPORTANT:** The primary difference between `Cluster` and `AdvancedCluster` is that `AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `AdvancedCluster` resource. -// -// > **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy). -// -// > **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information. -// -// > **NOTE:** To enable Cluster Extended Storage Sizes use the `isExtendedStorageSizesEnabled` parameter in the Project resource. -// -// > **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/). -// -// > **NOTE:** Groups and projects are synonymous terms. You might find groupId in the official documentation. -// // ## Example Usage // // ### Example single provider and single region @@ -505,6 +487,10 @@ type AdvancedCluster struct { // - `SHARDED` Sharded cluster // - `GEOSHARDED` Global Cluster ClusterType pulumi.StringOutput `pulumi:"clusterType"` + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode pulumi.StringOutput `pulumi:"configServerManagementMode"` + // Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerType pulumi.StringOutput `pulumi:"configServerType"` // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. ConnectionStrings AdvancedClusterConnectionStringArrayOutput `pulumi:"connectionStrings"` CreateDate pulumi.StringOutput `pulumi:"createDate"` @@ -517,8 +503,6 @@ type AdvancedCluster struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). GlobalClusterSelfManagedSharding pulumi.BoolOutput `pulumi:"globalClusterSelfManagedSharding"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels AdvancedClusterLabelArrayOutput `pulumi:"labels"` // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. If you set a value to this parameter and set `versionReleaseSystem` `CONTINUOUS`, the resource returns an error. Either clear this parameter or set `versionReleaseSystem`: `LTS`. MongoDbMajorVersion pulumi.StringOutput `pulumi:"mongoDbMajorVersion"` @@ -531,7 +515,7 @@ type AdvancedCluster struct { PitEnabled pulumi.BoolOutput `pulumi:"pitEnabled"` // Unique ID for the project to create the database user. ProjectId pulumi.StringOutput `pulumi:"projectId"` - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. RedactClientLogData pulumi.BoolOutput `pulumi:"redactClientLogData"` // Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) ReplicaSetScalingStrategy pulumi.StringOutput `pulumi:"replicaSetScalingStrategy"` @@ -622,6 +606,10 @@ type advancedClusterState struct { // - `SHARDED` Sharded cluster // - `GEOSHARDED` Global Cluster ClusterType *string `pulumi:"clusterType"` + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode *string `pulumi:"configServerManagementMode"` + // Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerType *string `pulumi:"configServerType"` // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. ConnectionStrings []AdvancedClusterConnectionString `pulumi:"connectionStrings"` CreateDate *string `pulumi:"createDate"` @@ -634,8 +622,6 @@ type advancedClusterState struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). GlobalClusterSelfManagedSharding *bool `pulumi:"globalClusterSelfManagedSharding"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []AdvancedClusterLabel `pulumi:"labels"` // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. If you set a value to this parameter and set `versionReleaseSystem` `CONTINUOUS`, the resource returns an error. Either clear this parameter or set `versionReleaseSystem`: `LTS`. MongoDbMajorVersion *string `pulumi:"mongoDbMajorVersion"` @@ -648,7 +634,7 @@ type advancedClusterState struct { PitEnabled *bool `pulumi:"pitEnabled"` // Unique ID for the project to create the database user. ProjectId *string `pulumi:"projectId"` - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. RedactClientLogData *bool `pulumi:"redactClientLogData"` // Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) ReplicaSetScalingStrategy *string `pulumi:"replicaSetScalingStrategy"` @@ -701,6 +687,10 @@ type AdvancedClusterState struct { // - `SHARDED` Sharded cluster // - `GEOSHARDED` Global Cluster ClusterType pulumi.StringPtrInput + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode pulumi.StringPtrInput + // Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerType pulumi.StringPtrInput // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. ConnectionStrings AdvancedClusterConnectionStringArrayInput CreateDate pulumi.StringPtrInput @@ -713,8 +703,6 @@ type AdvancedClusterState struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). GlobalClusterSelfManagedSharding pulumi.BoolPtrInput // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels AdvancedClusterLabelArrayInput // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. If you set a value to this parameter and set `versionReleaseSystem` `CONTINUOUS`, the resource returns an error. Either clear this parameter or set `versionReleaseSystem`: `LTS`. MongoDbMajorVersion pulumi.StringPtrInput @@ -727,7 +715,7 @@ type AdvancedClusterState struct { PitEnabled pulumi.BoolPtrInput // Unique ID for the project to create the database user. ProjectId pulumi.StringPtrInput - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. RedactClientLogData pulumi.BoolPtrInput // Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) ReplicaSetScalingStrategy pulumi.StringPtrInput @@ -782,6 +770,8 @@ type advancedClusterArgs struct { // - `SHARDED` Sharded cluster // - `GEOSHARDED` Global Cluster ClusterType string `pulumi:"clusterType"` + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode *string `pulumi:"configServerManagementMode"` // Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. // // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown @@ -791,8 +781,6 @@ type advancedClusterArgs struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). GlobalClusterSelfManagedSharding *bool `pulumi:"globalClusterSelfManagedSharding"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []AdvancedClusterLabel `pulumi:"labels"` // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. If you set a value to this parameter and set `versionReleaseSystem` `CONTINUOUS`, the resource returns an error. Either clear this parameter or set `versionReleaseSystem`: `LTS`. MongoDbMajorVersion *string `pulumi:"mongoDbMajorVersion"` @@ -803,7 +791,7 @@ type advancedClusterArgs struct { PitEnabled *bool `pulumi:"pitEnabled"` // Unique ID for the project to create the database user. ProjectId string `pulumi:"projectId"` - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. RedactClientLogData *bool `pulumi:"redactClientLogData"` // Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) ReplicaSetScalingStrategy *string `pulumi:"replicaSetScalingStrategy"` @@ -846,6 +834,8 @@ type AdvancedClusterArgs struct { // - `SHARDED` Sharded cluster // - `GEOSHARDED` Global Cluster ClusterType pulumi.StringInput + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode pulumi.StringPtrInput // Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. // // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown @@ -855,8 +845,6 @@ type AdvancedClusterArgs struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). GlobalClusterSelfManagedSharding pulumi.BoolPtrInput // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels AdvancedClusterLabelArrayInput // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. If you set a value to this parameter and set `versionReleaseSystem` `CONTINUOUS`, the resource returns an error. Either clear this parameter or set `versionReleaseSystem`: `LTS`. MongoDbMajorVersion pulumi.StringPtrInput @@ -867,7 +855,7 @@ type AdvancedClusterArgs struct { PitEnabled pulumi.BoolPtrInput // Unique ID for the project to create the database user. ProjectId pulumi.StringInput - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. RedactClientLogData pulumi.BoolPtrInput // Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) ReplicaSetScalingStrategy pulumi.StringPtrInput @@ -1015,6 +1003,16 @@ func (o AdvancedClusterOutput) ClusterType() pulumi.StringOutput { return o.ApplyT(func(v *AdvancedCluster) pulumi.StringOutput { return v.ClusterType }).(pulumi.StringOutput) } +// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). +func (o AdvancedClusterOutput) ConfigServerManagementMode() pulumi.StringOutput { + return o.ApplyT(func(v *AdvancedCluster) pulumi.StringOutput { return v.ConfigServerManagementMode }).(pulumi.StringOutput) +} + +// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). +func (o AdvancedClusterOutput) ConfigServerType() pulumi.StringOutput { + return o.ApplyT(func(v *AdvancedCluster) pulumi.StringOutput { return v.ConfigServerType }).(pulumi.StringOutput) +} + // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. func (o AdvancedClusterOutput) ConnectionStrings() AdvancedClusterConnectionStringArrayOutput { return o.ApplyT(func(v *AdvancedCluster) AdvancedClusterConnectionStringArrayOutput { return v.ConnectionStrings }).(AdvancedClusterConnectionStringArrayOutput) @@ -1042,8 +1040,6 @@ func (o AdvancedClusterOutput) GlobalClusterSelfManagedSharding() pulumi.BoolOut } // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. -// -// Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags func (o AdvancedClusterOutput) Labels() AdvancedClusterLabelArrayOutput { return o.ApplyT(func(v *AdvancedCluster) AdvancedClusterLabelArrayOutput { return v.Labels }).(AdvancedClusterLabelArrayOutput) } @@ -1077,7 +1073,7 @@ func (o AdvancedClusterOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v *AdvancedCluster) pulumi.StringOutput { return v.ProjectId }).(pulumi.StringOutput) } -// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. +// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. func (o AdvancedClusterOutput) RedactClientLogData() pulumi.BoolOutput { return o.ApplyT(func(v *AdvancedCluster) pulumi.BoolOutput { return v.RedactClientLogData }).(pulumi.BoolOutput) } diff --git a/sdk/go/mongodbatlas/cluster.go b/sdk/go/mongodbatlas/cluster.go index f8f9fe0f..4e384c7d 100644 --- a/sdk/go/mongodbatlas/cluster.go +++ b/sdk/go/mongodbatlas/cluster.go @@ -426,8 +426,6 @@ type Cluster struct { // Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-aws-kms/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. **Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default**. EncryptionAtRestProvider pulumi.StringOutput `pulumi:"encryptionAtRestProvider"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels ClusterLabelArrayOutput `pulumi:"labels"` // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. See [Release Notes](https://www.mongodb.com/docs/upcoming/release-notes/) for latest Current Stable Release. MongoDbMajorVersion pulumi.StringOutput `pulumi:"mongoDbMajorVersion"` @@ -479,7 +477,7 @@ type Cluster struct { // The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType pulumi.StringOutput `pulumi:"providerVolumeType"` - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. RedactClientLogData pulumi.BoolOutput `pulumi:"redactClientLogData"` // 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 pulumi.IntOutput `pulumi:"replicationFactor"` @@ -600,8 +598,6 @@ type clusterState struct { // Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-aws-kms/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. **Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default**. EncryptionAtRestProvider *string `pulumi:"encryptionAtRestProvider"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []ClusterLabel `pulumi:"labels"` // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. See [Release Notes](https://www.mongodb.com/docs/upcoming/release-notes/) for latest Current Stable Release. MongoDbMajorVersion *string `pulumi:"mongoDbMajorVersion"` @@ -653,7 +649,7 @@ type clusterState struct { // The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType *string `pulumi:"providerVolumeType"` - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. RedactClientLogData *bool `pulumi:"redactClientLogData"` // 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 *int `pulumi:"replicationFactor"` @@ -736,8 +732,6 @@ type ClusterState struct { // Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-aws-kms/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. **Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default**. EncryptionAtRestProvider pulumi.StringPtrInput // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels ClusterLabelArrayInput // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. See [Release Notes](https://www.mongodb.com/docs/upcoming/release-notes/) for latest Current Stable Release. MongoDbMajorVersion pulumi.StringPtrInput @@ -789,7 +783,7 @@ type ClusterState struct { // The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType pulumi.StringPtrInput - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. RedactClientLogData pulumi.BoolPtrInput // 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 pulumi.IntPtrInput @@ -870,8 +864,6 @@ type clusterArgs struct { // Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-aws-kms/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. **Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default**. EncryptionAtRestProvider *string `pulumi:"encryptionAtRestProvider"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []ClusterLabel `pulumi:"labels"` // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. See [Release Notes](https://www.mongodb.com/docs/upcoming/release-notes/) for latest Current Stable Release. MongoDbMajorVersion *string `pulumi:"mongoDbMajorVersion"` @@ -914,7 +906,7 @@ type clusterArgs struct { // The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType *string `pulumi:"providerVolumeType"` - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. RedactClientLogData *bool `pulumi:"redactClientLogData"` // 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 *int `pulumi:"replicationFactor"` @@ -980,8 +972,6 @@ type ClusterArgs struct { // Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-aws-kms/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. **Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default**. EncryptionAtRestProvider pulumi.StringPtrInput // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels ClusterLabelArrayInput // Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. See [Release Notes](https://www.mongodb.com/docs/upcoming/release-notes/) for latest Current Stable Release. MongoDbMajorVersion pulumi.StringPtrInput @@ -1024,7 +1014,7 @@ type ClusterArgs struct { // The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType pulumi.StringPtrInput - // Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + // Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. RedactClientLogData pulumi.BoolPtrInput // 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 pulumi.IntPtrInput @@ -1226,8 +1216,6 @@ func (o ClusterOutput) EncryptionAtRestProvider() pulumi.StringOutput { } // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. -// -// Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags func (o ClusterOutput) Labels() ClusterLabelArrayOutput { return o.ApplyT(func(v *Cluster) ClusterLabelArrayOutput { return v.Labels }).(ClusterLabelArrayOutput) } @@ -1342,7 +1330,7 @@ func (o ClusterOutput) ProviderVolumeType() pulumi.StringOutput { return o.ApplyT(func(v *Cluster) pulumi.StringOutput { return v.ProviderVolumeType }).(pulumi.StringOutput) } -// Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. +// Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. func (o ClusterOutput) RedactClientLogData() pulumi.BoolOutput { return o.ApplyT(func(v *Cluster) pulumi.BoolOutput { return v.RedactClientLogData }).(pulumi.BoolOutput) } diff --git a/sdk/go/mongodbatlas/getAdvancedCluster.go b/sdk/go/mongodbatlas/getAdvancedCluster.go index 5eaa7f6b..5551e244 100644 --- a/sdk/go/mongodbatlas/getAdvancedCluster.go +++ b/sdk/go/mongodbatlas/getAdvancedCluster.go @@ -162,6 +162,10 @@ type LookupAdvancedClusterResult struct { BiConnectorConfigs []GetAdvancedClusterBiConnectorConfig `pulumi:"biConnectorConfigs"` // Type of the cluster that you want to create. ClusterType string `pulumi:"clusterType"` + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode string `pulumi:"configServerManagementMode"` + // Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerType string `pulumi:"configServerType"` // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. ConnectionStrings []GetAdvancedClusterConnectionString `pulumi:"connectionStrings"` CreateDate string `pulumi:"createDate"` @@ -176,8 +180,6 @@ type LookupAdvancedClusterResult struct { // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []GetAdvancedClusterLabel `pulumi:"labels"` // Version of the cluster to deploy. MongoDbMajorVersion string `pulumi:"mongoDbMajorVersion"` @@ -189,7 +191,7 @@ type LookupAdvancedClusterResult struct { // Flag that indicates if the cluster uses Continuous Cloud Backup. PitEnabled bool `pulumi:"pitEnabled"` ProjectId string `pulumi:"projectId"` - // (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. RedactClientLogData bool `pulumi:"redactClientLogData"` // (Optional) Replica set scaling mode for your cluster. ReplicaSetScalingStrategy string `pulumi:"replicaSetScalingStrategy"` @@ -279,6 +281,16 @@ func (o LookupAdvancedClusterResultOutput) ClusterType() pulumi.StringOutput { return o.ApplyT(func(v LookupAdvancedClusterResult) string { return v.ClusterType }).(pulumi.StringOutput) } +// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). +func (o LookupAdvancedClusterResultOutput) ConfigServerManagementMode() pulumi.StringOutput { + return o.ApplyT(func(v LookupAdvancedClusterResult) string { return v.ConfigServerManagementMode }).(pulumi.StringOutput) +} + +// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). +func (o LookupAdvancedClusterResultOutput) ConfigServerType() pulumi.StringOutput { + return o.ApplyT(func(v LookupAdvancedClusterResult) string { return v.ConfigServerType }).(pulumi.StringOutput) +} + // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. func (o LookupAdvancedClusterResultOutput) ConnectionStrings() GetAdvancedClusterConnectionStringArrayOutput { return o.ApplyT(func(v LookupAdvancedClusterResult) []GetAdvancedClusterConnectionString { return v.ConnectionStrings }).(GetAdvancedClusterConnectionStringArrayOutput) @@ -311,8 +323,6 @@ func (o LookupAdvancedClusterResultOutput) Id() pulumi.StringOutput { } // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead. -// -// Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags func (o LookupAdvancedClusterResultOutput) Labels() GetAdvancedClusterLabelArrayOutput { return o.ApplyT(func(v LookupAdvancedClusterResult) []GetAdvancedClusterLabel { return v.Labels }).(GetAdvancedClusterLabelArrayOutput) } @@ -345,7 +355,7 @@ func (o LookupAdvancedClusterResultOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v LookupAdvancedClusterResult) string { return v.ProjectId }).(pulumi.StringOutput) } -// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. +// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. func (o LookupAdvancedClusterResultOutput) RedactClientLogData() pulumi.BoolOutput { return o.ApplyT(func(v LookupAdvancedClusterResult) bool { return v.RedactClientLogData }).(pulumi.BoolOutput) } diff --git a/sdk/go/mongodbatlas/getCluster.go b/sdk/go/mongodbatlas/getCluster.go index 6c39ba9d..2119ccb4 100644 --- a/sdk/go/mongodbatlas/getCluster.go +++ b/sdk/go/mongodbatlas/getCluster.go @@ -117,8 +117,6 @@ type LookupClusterResult struct { // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []GetClusterLabel `pulumi:"labels"` // Indicates the version of the cluster to deploy. MongoDbMajorVersion string `pulumi:"mongoDbMajorVersion"` @@ -160,7 +158,7 @@ type LookupClusterResult struct { // Indicates the type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType string `pulumi:"providerVolumeType"` - // (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. RedactClientLogData bool `pulumi:"redactClientLogData"` // (Deprecated) 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 int `pulumi:"replicationFactor"` @@ -298,8 +296,6 @@ func (o LookupClusterResultOutput) Id() pulumi.StringOutput { } // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. -// -// Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags func (o LookupClusterResultOutput) Labels() GetClusterLabelArrayOutput { return o.ApplyT(func(v LookupClusterResult) []GetClusterLabel { return v.Labels }).(GetClusterLabelArrayOutput) } @@ -407,7 +403,7 @@ func (o LookupClusterResultOutput) ProviderVolumeType() pulumi.StringOutput { return o.ApplyT(func(v LookupClusterResult) string { return v.ProviderVolumeType }).(pulumi.StringOutput) } -// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. +// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. func (o LookupClusterResultOutput) RedactClientLogData() pulumi.BoolOutput { return o.ApplyT(func(v LookupClusterResult) bool { return v.RedactClientLogData }).(pulumi.BoolOutput) } diff --git a/sdk/go/mongodbatlas/getProject.go b/sdk/go/mongodbatlas/getProject.go index a77e1ec8..4550cadd 100644 --- a/sdk/go/mongodbatlas/getProject.go +++ b/sdk/go/mongodbatlas/getProject.go @@ -165,6 +165,10 @@ type LookupProjectResult struct { IsRealtimePerformancePanelEnabled bool `pulumi:"isRealtimePerformancePanelEnabled"` // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). IsSchemaAdvisorEnabled bool `pulumi:"isSchemaAdvisorEnabled"` + // (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled bool `pulumi:"isSlowOperationThresholdingEnabled"` // The limits for the specified project. See Limits. Limits []GetProjectLimit `pulumi:"limits"` // Human-readable label that identifies this project limit. @@ -279,6 +283,13 @@ func (o LookupProjectResultOutput) IsSchemaAdvisorEnabled() pulumi.BoolOutput { return o.ApplyT(func(v LookupProjectResult) bool { return v.IsSchemaAdvisorEnabled }).(pulumi.BoolOutput) } +// (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. +// +// Deprecated: This parameter is deprecated and will be removed in version 1.24.0. +func (o LookupProjectResultOutput) IsSlowOperationThresholdingEnabled() pulumi.BoolOutput { + return o.ApplyT(func(v LookupProjectResult) bool { return v.IsSlowOperationThresholdingEnabled }).(pulumi.BoolOutput) +} + // The limits for the specified project. See Limits. func (o LookupProjectResultOutput) Limits() GetProjectLimitArrayOutput { return o.ApplyT(func(v LookupProjectResult) []GetProjectLimit { return v.Limits }).(GetProjectLimitArrayOutput) diff --git a/sdk/go/mongodbatlas/project.go b/sdk/go/mongodbatlas/project.go index 5a5ed33e..584c4f94 100644 --- a/sdk/go/mongodbatlas/project.go +++ b/sdk/go/mongodbatlas/project.go @@ -71,6 +71,7 @@ import ( // IsPerformanceAdvisorEnabled: pulumi.Bool(true), // IsRealtimePerformancePanelEnabled: pulumi.Bool(true), // IsSchemaAdvisorEnabled: pulumi.Bool(true), +// IsSlowOperationThresholdingEnabled: pulumi.Bool(true), // }) // if err != nil { // return err @@ -111,8 +112,12 @@ type Project struct { // Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. IsRealtimePerformancePanelEnabled pulumi.BoolOutput `pulumi:"isRealtimePerformancePanelEnabled"` // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. - IsSchemaAdvisorEnabled pulumi.BoolOutput `pulumi:"isSchemaAdvisorEnabled"` - Limits ProjectLimitArrayOutput `pulumi:"limits"` + IsSchemaAdvisorEnabled pulumi.BoolOutput `pulumi:"isSchemaAdvisorEnabled"` + // (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled pulumi.BoolOutput `pulumi:"isSlowOperationThresholdingEnabled"` + Limits ProjectLimitArrayOutput `pulumi:"limits"` // The name of the project you want to create. Name pulumi.StringOutput `pulumi:"name"` // The ID of the organization you want to create the project within. @@ -180,8 +185,12 @@ type projectState struct { // Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. IsRealtimePerformancePanelEnabled *bool `pulumi:"isRealtimePerformancePanelEnabled"` // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. - IsSchemaAdvisorEnabled *bool `pulumi:"isSchemaAdvisorEnabled"` - Limits []ProjectLimit `pulumi:"limits"` + IsSchemaAdvisorEnabled *bool `pulumi:"isSchemaAdvisorEnabled"` + // (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled *bool `pulumi:"isSlowOperationThresholdingEnabled"` + Limits []ProjectLimit `pulumi:"limits"` // The name of the project you want to create. Name *string `pulumi:"name"` // The ID of the organization you want to create the project within. @@ -218,7 +227,11 @@ type ProjectState struct { IsRealtimePerformancePanelEnabled pulumi.BoolPtrInput // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. IsSchemaAdvisorEnabled pulumi.BoolPtrInput - Limits ProjectLimitArrayInput + // (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled pulumi.BoolPtrInput + Limits ProjectLimitArrayInput // The name of the project you want to create. Name pulumi.StringPtrInput // The ID of the organization you want to create the project within. @@ -250,8 +263,12 @@ type projectArgs struct { // Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. IsRealtimePerformancePanelEnabled *bool `pulumi:"isRealtimePerformancePanelEnabled"` // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. - IsSchemaAdvisorEnabled *bool `pulumi:"isSchemaAdvisorEnabled"` - Limits []ProjectLimit `pulumi:"limits"` + IsSchemaAdvisorEnabled *bool `pulumi:"isSchemaAdvisorEnabled"` + // (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled *bool `pulumi:"isSlowOperationThresholdingEnabled"` + Limits []ProjectLimit `pulumi:"limits"` // The name of the project you want to create. Name *string `pulumi:"name"` // The ID of the organization you want to create the project within. @@ -281,7 +298,11 @@ type ProjectArgs struct { IsRealtimePerformancePanelEnabled pulumi.BoolPtrInput // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. IsSchemaAdvisorEnabled pulumi.BoolPtrInput - Limits ProjectLimitArrayInput + // (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled pulumi.BoolPtrInput + Limits ProjectLimitArrayInput // The name of the project you want to create. Name pulumi.StringPtrInput // The ID of the organization you want to create the project within. @@ -431,6 +452,13 @@ func (o ProjectOutput) IsSchemaAdvisorEnabled() pulumi.BoolOutput { return o.ApplyT(func(v *Project) pulumi.BoolOutput { return v.IsSchemaAdvisorEnabled }).(pulumi.BoolOutput) } +// (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. +// +// Deprecated: This parameter is deprecated and will be removed in version 1.24.0. +func (o ProjectOutput) IsSlowOperationThresholdingEnabled() pulumi.BoolOutput { + return o.ApplyT(func(v *Project) pulumi.BoolOutput { return v.IsSlowOperationThresholdingEnabled }).(pulumi.BoolOutput) +} + func (o ProjectOutput) Limits() ProjectLimitArrayOutput { return o.ApplyT(func(v *Project) ProjectLimitArrayOutput { return v.Limits }).(ProjectLimitArrayOutput) } diff --git a/sdk/go/mongodbatlas/projectApiKey.go b/sdk/go/mongodbatlas/projectApiKey.go index ed09481b..a076d40a 100644 --- a/sdk/go/mongodbatlas/projectApiKey.go +++ b/sdk/go/mongodbatlas/projectApiKey.go @@ -103,6 +103,8 @@ type ProjectApiKey struct { // Unique identifier for this Project API key. ApiKeyId pulumi.StringOutput `pulumi:"apiKeyId"` // Description of this Project API key. + // + // > **NOTE:** Project created by API Keys must belong to an existing organization. Description pulumi.StringOutput `pulumi:"description"` PrivateKey pulumi.StringOutput `pulumi:"privateKey"` ProjectAssignments ProjectApiKeyProjectAssignmentArrayOutput `pulumi:"projectAssignments"` @@ -152,6 +154,8 @@ type projectApiKeyState struct { // Unique identifier for this Project API key. ApiKeyId *string `pulumi:"apiKeyId"` // Description of this Project API key. + // + // > **NOTE:** Project created by API Keys must belong to an existing organization. Description *string `pulumi:"description"` PrivateKey *string `pulumi:"privateKey"` ProjectAssignments []ProjectApiKeyProjectAssignment `pulumi:"projectAssignments"` @@ -162,6 +166,8 @@ type ProjectApiKeyState struct { // Unique identifier for this Project API key. ApiKeyId pulumi.StringPtrInput // Description of this Project API key. + // + // > **NOTE:** Project created by API Keys must belong to an existing organization. Description pulumi.StringPtrInput PrivateKey pulumi.StringPtrInput ProjectAssignments ProjectApiKeyProjectAssignmentArrayInput @@ -174,6 +180,8 @@ func (ProjectApiKeyState) ElementType() reflect.Type { type projectApiKeyArgs struct { // Description of this Project API key. + // + // > **NOTE:** Project created by API Keys must belong to an existing organization. Description string `pulumi:"description"` ProjectAssignments []ProjectApiKeyProjectAssignment `pulumi:"projectAssignments"` } @@ -181,6 +189,8 @@ type projectApiKeyArgs struct { // The set of arguments for constructing a ProjectApiKey resource. type ProjectApiKeyArgs struct { // Description of this Project API key. + // + // > **NOTE:** Project created by API Keys must belong to an existing organization. Description pulumi.StringInput ProjectAssignments ProjectApiKeyProjectAssignmentArrayInput } @@ -278,6 +288,8 @@ func (o ProjectApiKeyOutput) ApiKeyId() pulumi.StringOutput { } // Description of this Project API key. +// +// > **NOTE:** Project created by API Keys must belong to an existing organization. func (o ProjectApiKeyOutput) Description() pulumi.StringOutput { return o.ApplyT(func(v *ProjectApiKey) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) } diff --git a/sdk/go/mongodbatlas/pulumiTypes.go b/sdk/go/mongodbatlas/pulumiTypes.go index 80a0d82e..f49891a0 100644 --- a/sdk/go/mongodbatlas/pulumiTypes.go +++ b/sdk/go/mongodbatlas/pulumiTypes.go @@ -878,7 +878,7 @@ type AdvancedClusterConnectionStringPrivateEndpointEndpoint struct { // - `AWS` - Amazon AWS // - `GCP` - Google Cloud Platform // - `AZURE` - Microsoft Azure - // - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + // - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. ProviderName *string `pulumi:"providerName"` Region *string `pulumi:"region"` } @@ -902,7 +902,7 @@ type AdvancedClusterConnectionStringPrivateEndpointEndpointArgs struct { // - `AWS` - Amazon AWS // - `GCP` - Google Cloud Platform // - `AZURE` - Microsoft Azure - // - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + // - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. ProviderName pulumi.StringPtrInput `pulumi:"providerName"` Region pulumi.StringPtrInput `pulumi:"region"` } @@ -968,7 +968,7 @@ func (o AdvancedClusterConnectionStringPrivateEndpointEndpointOutput) EndpointId // - `AWS` - Amazon AWS // - `GCP` - Google Cloud Platform // - `AZURE` - Microsoft Azure -// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. +// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. func (o AdvancedClusterConnectionStringPrivateEndpointEndpointOutput) ProviderName() pulumi.StringPtrOutput { return o.ApplyT(func(v AdvancedClusterConnectionStringPrivateEndpointEndpoint) *string { return v.ProviderName }).(pulumi.StringPtrOutput) } @@ -1111,7 +1111,10 @@ func (o AdvancedClusterLabelArrayOutput) Index(i pulumi.IntInput) AdvancedCluste type AdvancedClusterReplicationSpec struct { ContainerId map[string]string `pulumi:"containerId"` - ExternalId *string `pulumi:"externalId"` + // Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + ExternalId *string `pulumi:"externalId"` + // **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + // // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown Id *string `pulumi:"id"` // Provide this value if you set a `clusterType` of SHARDED or GEOSHARDED. Omit this value if you selected a `clusterType` of REPLICASET. This API resource accepts 1 through 50, inclusive. This parameter defaults to 1. If you specify a `numShards` value of 1 and a `clusterType` of SHARDED, Atlas deploys a single-shard [sharded cluster](https://docs.atlas.mongodb.com/reference/glossary/#std-term-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. @@ -1140,7 +1143,10 @@ type AdvancedClusterReplicationSpecInput interface { type AdvancedClusterReplicationSpecArgs struct { ContainerId pulumi.StringMapInput `pulumi:"containerId"` - ExternalId pulumi.StringPtrInput `pulumi:"externalId"` + // Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + ExternalId pulumi.StringPtrInput `pulumi:"externalId"` + // **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + // // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown Id pulumi.StringPtrInput `pulumi:"id"` // Provide this value if you set a `clusterType` of SHARDED or GEOSHARDED. Omit this value if you selected a `clusterType` of REPLICASET. This API resource accepts 1 through 50, inclusive. This parameter defaults to 1. If you specify a `numShards` value of 1 and a `clusterType` of SHARDED, Atlas deploys a single-shard [sharded cluster](https://docs.atlas.mongodb.com/reference/glossary/#std-term-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. @@ -1211,10 +1217,13 @@ func (o AdvancedClusterReplicationSpecOutput) ContainerId() pulumi.StringMapOutp return o.ApplyT(func(v AdvancedClusterReplicationSpec) map[string]string { return v.ContainerId }).(pulumi.StringMapOutput) } +// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. func (o AdvancedClusterReplicationSpecOutput) ExternalId() pulumi.StringPtrOutput { return o.ApplyT(func(v AdvancedClusterReplicationSpec) *string { return v.ExternalId }).(pulumi.StringPtrOutput) } +// **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. +// // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown func (o AdvancedClusterReplicationSpecOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v AdvancedClusterReplicationSpec) *string { return v.Id }).(pulumi.StringPtrOutput) @@ -1286,7 +1295,7 @@ type AdvancedClusterReplicationSpecRegionConfig struct { // - `AWS` - Amazon AWS // - `GCP` - Google Cloud Platform // - `AZURE` - Microsoft Azure - // - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + // - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. ProviderName string `pulumi:"providerName"` // Hardware specifications for read-only nodes in the region. Read-only nodes can become the [primary](https://docs.atlas.mongodb.com/reference/glossary/#std-term-primary) and can enable local reads. If you don't specify this parameter, no read-only nodes are deployed to the region. See below ReadOnlySpecs *AdvancedClusterReplicationSpecRegionConfigReadOnlySpecs `pulumi:"readOnlySpecs"` @@ -1326,7 +1335,7 @@ type AdvancedClusterReplicationSpecRegionConfigArgs struct { // - `AWS` - Amazon AWS // - `GCP` - Google Cloud Platform // - `AZURE` - Microsoft Azure - // - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + // - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. ProviderName pulumi.StringInput `pulumi:"providerName"` // Hardware specifications for read-only nodes in the region. Read-only nodes can become the [primary](https://docs.atlas.mongodb.com/reference/glossary/#std-term-primary) and can enable local reads. If you don't specify this parameter, no read-only nodes are deployed to the region. See below ReadOnlySpecs AdvancedClusterReplicationSpecRegionConfigReadOnlySpecsPtrInput `pulumi:"readOnlySpecs"` @@ -1431,7 +1440,7 @@ func (o AdvancedClusterReplicationSpecRegionConfigOutput) Priority() pulumi.IntO // - `AWS` - Amazon AWS // - `GCP` - Google Cloud Platform // - `AZURE` - Microsoft Azure -// - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. +// - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. func (o AdvancedClusterReplicationSpecRegionConfigOutput) ProviderName() pulumi.StringOutput { return o.ApplyT(func(v AdvancedClusterReplicationSpecRegionConfig) string { return v.ProviderName }).(pulumi.StringOutput) } @@ -1476,7 +1485,7 @@ type AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling struct { ComputeMinInstanceSize *string `pulumi:"computeMinInstanceSize"` // Flag that indicates whether the instance size may scale down. Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_enabled` : true. If you enable this option, specify a value for `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_min_instance_size`. ComputeScaleDownEnabled *bool `pulumi:"computeScaleDownEnabled"` - // Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + // Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. DiskGbEnabled *bool `pulumi:"diskGbEnabled"` } @@ -1499,7 +1508,7 @@ type AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs struct { ComputeMinInstanceSize pulumi.StringPtrInput `pulumi:"computeMinInstanceSize"` // Flag that indicates whether the instance size may scale down. Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_enabled` : true. If you enable this option, specify a value for `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_min_instance_size`. ComputeScaleDownEnabled pulumi.BoolPtrInput `pulumi:"computeScaleDownEnabled"` - // Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + // Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. DiskGbEnabled pulumi.BoolPtrInput `pulumi:"diskGbEnabled"` } @@ -1605,7 +1614,7 @@ func (o AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingOutput) Co }).(pulumi.BoolPtrOutput) } -// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. +// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. func (o AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingOutput) DiskGbEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling) *bool { return v.DiskGbEnabled }).(pulumi.BoolPtrOutput) } @@ -1673,7 +1682,7 @@ func (o AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingPtrOutput) }).(pulumi.BoolPtrOutput) } -// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. +// Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. func (o AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingPtrOutput) DiskGbEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling) *bool { if v == nil { @@ -8134,7 +8143,7 @@ func (o ClusterOutageSimulationOutageFilterArrayOutput) Index(i pulumi.IntInput) } type ClusterReplicationSpec struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id *string `pulumi:"id"` // Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards. NumShards int `pulumi:"numShards"` @@ -8158,7 +8167,7 @@ type ClusterReplicationSpecInput interface { } type ClusterReplicationSpecArgs struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringPtrInput `pulumi:"id"` // Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards. NumShards pulumi.IntInput `pulumi:"numShards"` @@ -8221,7 +8230,7 @@ func (o ClusterReplicationSpecOutput) ToClusterReplicationSpecOutputWithContext( return o } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o ClusterReplicationSpecOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v ClusterReplicationSpec) *string { return v.Id }).(pulumi.StringPtrOutput) } @@ -8554,7 +8563,7 @@ func (o ClusterSnapshotBackupPolicyArrayOutput) Index(i pulumi.IntInput) Cluster } type ClusterSnapshotBackupPolicyPolicy struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id *string `pulumi:"id"` PolicyItems []ClusterSnapshotBackupPolicyPolicyPolicyItem `pulumi:"policyItems"` } @@ -8571,7 +8580,7 @@ type ClusterSnapshotBackupPolicyPolicyInput interface { } type ClusterSnapshotBackupPolicyPolicyArgs struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringPtrInput `pulumi:"id"` PolicyItems ClusterSnapshotBackupPolicyPolicyPolicyItemArrayInput `pulumi:"policyItems"` } @@ -8627,7 +8636,7 @@ func (o ClusterSnapshotBackupPolicyPolicyOutput) ToClusterSnapshotBackupPolicyPo return o } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o ClusterSnapshotBackupPolicyPolicyOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v ClusterSnapshotBackupPolicyPolicy) *string { return v.Id }).(pulumi.StringPtrOutput) } @@ -8661,7 +8670,7 @@ func (o ClusterSnapshotBackupPolicyPolicyArrayOutput) Index(i pulumi.IntInput) C type ClusterSnapshotBackupPolicyPolicyPolicyItem struct { FrequencyInterval *int `pulumi:"frequencyInterval"` FrequencyType *string `pulumi:"frequencyType"` - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id *string `pulumi:"id"` RetentionUnit *string `pulumi:"retentionUnit"` RetentionValue *int `pulumi:"retentionValue"` @@ -8681,7 +8690,7 @@ type ClusterSnapshotBackupPolicyPolicyPolicyItemInput interface { type ClusterSnapshotBackupPolicyPolicyPolicyItemArgs struct { FrequencyInterval pulumi.IntPtrInput `pulumi:"frequencyInterval"` FrequencyType pulumi.StringPtrInput `pulumi:"frequencyType"` - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringPtrInput `pulumi:"id"` RetentionUnit pulumi.StringPtrInput `pulumi:"retentionUnit"` RetentionValue pulumi.IntPtrInput `pulumi:"retentionValue"` @@ -8746,7 +8755,7 @@ func (o ClusterSnapshotBackupPolicyPolicyPolicyItemOutput) FrequencyType() pulum return o.ApplyT(func(v ClusterSnapshotBackupPolicyPolicyPolicyItem) *string { return v.FrequencyType }).(pulumi.StringPtrOutput) } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o ClusterSnapshotBackupPolicyPolicyPolicyItemOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v ClusterSnapshotBackupPolicyPolicyPolicyItem) *string { return v.Id }).(pulumi.StringPtrOutput) } @@ -19148,7 +19157,8 @@ func (o GetAdvancedClusterLabelArrayOutput) Index(i pulumi.IntInput) GetAdvanced type GetAdvancedClusterReplicationSpec struct { // A key-value map of the Network Peering Container ID(s) for the configuration specified in `regionConfigs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. ContainerId map[string]string `pulumi:"containerId"` - ExternalId string `pulumi:"externalId"` + // Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + ExternalId string `pulumi:"externalId"` // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown Id string `pulumi:"id"` // Provide this value if you set a `clusterType` of `SHARDED` or `GEOSHARDED`. **(DEPRECATED.)** To learn more, see the Migration Guide. @@ -19177,7 +19187,8 @@ type GetAdvancedClusterReplicationSpecInput interface { type GetAdvancedClusterReplicationSpecArgs struct { // A key-value map of the Network Peering Container ID(s) for the configuration specified in `regionConfigs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. ContainerId pulumi.StringMapInput `pulumi:"containerId"` - ExternalId pulumi.StringInput `pulumi:"externalId"` + // Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + ExternalId pulumi.StringInput `pulumi:"externalId"` // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown Id pulumi.StringInput `pulumi:"id"` // Provide this value if you set a `clusterType` of `SHARDED` or `GEOSHARDED`. **(DEPRECATED.)** To learn more, see the Migration Guide. @@ -19248,6 +19259,7 @@ func (o GetAdvancedClusterReplicationSpecOutput) ContainerId() pulumi.StringMapO return o.ApplyT(func(v GetAdvancedClusterReplicationSpec) map[string]string { return v.ContainerId }).(pulumi.StringMapOutput) } +// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. func (o GetAdvancedClusterReplicationSpecOutput) ExternalId() pulumi.StringOutput { return o.ApplyT(func(v GetAdvancedClusterReplicationSpec) string { return v.ExternalId }).(pulumi.StringOutput) } @@ -20162,6 +20174,10 @@ type GetAdvancedClustersResult struct { BiConnectorConfigs []GetAdvancedClustersResultBiConnectorConfig `pulumi:"biConnectorConfigs"` // Type of the cluster that you want to create. ClusterType string `pulumi:"clusterType"` + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode string `pulumi:"configServerManagementMode"` + // Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerType string `pulumi:"configServerType"` // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. ConnectionStrings []GetAdvancedClustersResultConnectionString `pulumi:"connectionStrings"` CreateDate string `pulumi:"createDate"` @@ -20174,8 +20190,6 @@ type GetAdvancedClustersResult struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false) or Self-Managed Sharding (true). GlobalClusterSelfManagedSharding bool `pulumi:"globalClusterSelfManagedSharding"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []GetAdvancedClustersResultLabel `pulumi:"labels"` // Version of the cluster to deploy. MongoDbMajorVersion string `pulumi:"mongoDbMajorVersion"` @@ -20186,7 +20200,7 @@ type GetAdvancedClustersResult struct { Paused bool `pulumi:"paused"` // Flag that indicates if the cluster uses Continuous Cloud Backup. PitEnabled bool `pulumi:"pitEnabled"` - // (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. RedactClientLogData bool `pulumi:"redactClientLogData"` // (Optional) Replica set scaling mode for your cluster. ReplicaSetScalingStrategy string `pulumi:"replicaSetScalingStrategy"` @@ -20223,6 +20237,10 @@ type GetAdvancedClustersResultArgs struct { BiConnectorConfigs GetAdvancedClustersResultBiConnectorConfigArrayInput `pulumi:"biConnectorConfigs"` // Type of the cluster that you want to create. ClusterType pulumi.StringInput `pulumi:"clusterType"` + // Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerManagementMode pulumi.StringInput `pulumi:"configServerManagementMode"` + // Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + ConfigServerType pulumi.StringInput `pulumi:"configServerType"` // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. ConnectionStrings GetAdvancedClustersResultConnectionStringArrayInput `pulumi:"connectionStrings"` CreateDate pulumi.StringInput `pulumi:"createDate"` @@ -20235,8 +20253,6 @@ type GetAdvancedClustersResultArgs struct { // Flag that indicates if cluster uses Atlas-Managed Sharding (false) or Self-Managed Sharding (true). GlobalClusterSelfManagedSharding pulumi.BoolInput `pulumi:"globalClusterSelfManagedSharding"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels GetAdvancedClustersResultLabelArrayInput `pulumi:"labels"` // Version of the cluster to deploy. MongoDbMajorVersion pulumi.StringInput `pulumi:"mongoDbMajorVersion"` @@ -20247,7 +20263,7 @@ type GetAdvancedClustersResultArgs struct { Paused pulumi.BoolInput `pulumi:"paused"` // Flag that indicates if the cluster uses Continuous Cloud Backup. PitEnabled pulumi.BoolInput `pulumi:"pitEnabled"` - // (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. RedactClientLogData pulumi.BoolInput `pulumi:"redactClientLogData"` // (Optional) Replica set scaling mode for your cluster. ReplicaSetScalingStrategy pulumi.StringInput `pulumi:"replicaSetScalingStrategy"` @@ -20339,6 +20355,16 @@ func (o GetAdvancedClustersResultOutput) ClusterType() pulumi.StringOutput { return o.ApplyT(func(v GetAdvancedClustersResult) string { return v.ClusterType }).(pulumi.StringOutput) } +// Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). +func (o GetAdvancedClustersResultOutput) ConfigServerManagementMode() pulumi.StringOutput { + return o.ApplyT(func(v GetAdvancedClustersResult) string { return v.ConfigServerManagementMode }).(pulumi.StringOutput) +} + +// Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). +func (o GetAdvancedClustersResultOutput) ConfigServerType() pulumi.StringOutput { + return o.ApplyT(func(v GetAdvancedClustersResult) string { return v.ConfigServerType }).(pulumi.StringOutput) +} + // Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. func (o GetAdvancedClustersResultOutput) ConnectionStrings() GetAdvancedClustersResultConnectionStringArrayOutput { return o.ApplyT(func(v GetAdvancedClustersResult) []GetAdvancedClustersResultConnectionString { @@ -20368,8 +20394,6 @@ func (o GetAdvancedClustersResultOutput) GlobalClusterSelfManagedSharding() pulu } // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. -// -// Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags func (o GetAdvancedClustersResultOutput) Labels() GetAdvancedClustersResultLabelArrayOutput { return o.ApplyT(func(v GetAdvancedClustersResult) []GetAdvancedClustersResultLabel { return v.Labels }).(GetAdvancedClustersResultLabelArrayOutput) } @@ -20398,7 +20422,7 @@ func (o GetAdvancedClustersResultOutput) PitEnabled() pulumi.BoolOutput { return o.ApplyT(func(v GetAdvancedClustersResult) bool { return v.PitEnabled }).(pulumi.BoolOutput) } -// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. +// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. func (o GetAdvancedClustersResultOutput) RedactClientLogData() pulumi.BoolOutput { return o.ApplyT(func(v GetAdvancedClustersResult) bool { return v.RedactClientLogData }).(pulumi.BoolOutput) } @@ -21275,7 +21299,8 @@ func (o GetAdvancedClustersResultLabelArrayOutput) Index(i pulumi.IntInput) GetA type GetAdvancedClustersResultReplicationSpec struct { // A key-value map of the Network Peering Container ID(s) for the configuration specified in `regionConfigs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. ContainerId map[string]string `pulumi:"containerId"` - ExternalId string `pulumi:"externalId"` + // Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + ExternalId string `pulumi:"externalId"` // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown Id string `pulumi:"id"` // Provide this value if you set a `clusterType` of SHARDED or GEOSHARDED. **(DEPRECATED.)** To learn more, see the Migration Guide for more details. @@ -21304,7 +21329,8 @@ type GetAdvancedClustersResultReplicationSpecInput interface { type GetAdvancedClustersResultReplicationSpecArgs struct { // A key-value map of the Network Peering Container ID(s) for the configuration specified in `regionConfigs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. ContainerId pulumi.StringMapInput `pulumi:"containerId"` - ExternalId pulumi.StringInput `pulumi:"externalId"` + // Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + ExternalId pulumi.StringInput `pulumi:"externalId"` // Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown Id pulumi.StringInput `pulumi:"id"` // Provide this value if you set a `clusterType` of SHARDED or GEOSHARDED. **(DEPRECATED.)** To learn more, see the Migration Guide for more details. @@ -21375,6 +21401,7 @@ func (o GetAdvancedClustersResultReplicationSpecOutput) ContainerId() pulumi.Str return o.ApplyT(func(v GetAdvancedClustersResultReplicationSpec) map[string]string { return v.ContainerId }).(pulumi.StringMapOutput) } +// Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. func (o GetAdvancedClustersResultReplicationSpecOutput) ExternalId() pulumi.StringOutput { return o.ApplyT(func(v GetAdvancedClustersResultReplicationSpec) string { return v.ExternalId }).(pulumi.StringOutput) } @@ -29329,7 +29356,7 @@ func (o GetClusterOutageSimulationOutageFilterArrayOutput) Index(i pulumi.IntInp } type GetClusterReplicationSpec struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id string `pulumi:"id"` // Number of shards to deploy in the specified zone. NumShards int `pulumi:"numShards"` @@ -29351,7 +29378,7 @@ type GetClusterReplicationSpecInput interface { } type GetClusterReplicationSpecArgs struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringInput `pulumi:"id"` // Number of shards to deploy in the specified zone. NumShards pulumi.IntInput `pulumi:"numShards"` @@ -29412,7 +29439,7 @@ func (o GetClusterReplicationSpecOutput) ToGetClusterReplicationSpecOutputWithCo return o } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o GetClusterReplicationSpecOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetClusterReplicationSpec) string { return v.Id }).(pulumi.StringOutput) } @@ -29722,7 +29749,7 @@ func (o GetClusterSnapshotBackupPolicyArrayOutput) Index(i pulumi.IntInput) GetC } type GetClusterSnapshotBackupPolicyPolicy struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id string `pulumi:"id"` PolicyItems []GetClusterSnapshotBackupPolicyPolicyPolicyItem `pulumi:"policyItems"` } @@ -29739,7 +29766,7 @@ type GetClusterSnapshotBackupPolicyPolicyInput interface { } type GetClusterSnapshotBackupPolicyPolicyArgs struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringInput `pulumi:"id"` PolicyItems GetClusterSnapshotBackupPolicyPolicyPolicyItemArrayInput `pulumi:"policyItems"` } @@ -29795,7 +29822,7 @@ func (o GetClusterSnapshotBackupPolicyPolicyOutput) ToGetClusterSnapshotBackupPo return o } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o GetClusterSnapshotBackupPolicyPolicyOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetClusterSnapshotBackupPolicyPolicy) string { return v.Id }).(pulumi.StringOutput) } @@ -29829,7 +29856,7 @@ func (o GetClusterSnapshotBackupPolicyPolicyArrayOutput) Index(i pulumi.IntInput type GetClusterSnapshotBackupPolicyPolicyPolicyItem struct { FrequencyInterval int `pulumi:"frequencyInterval"` FrequencyType string `pulumi:"frequencyType"` - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id string `pulumi:"id"` RetentionUnit string `pulumi:"retentionUnit"` RetentionValue int `pulumi:"retentionValue"` @@ -29849,7 +29876,7 @@ type GetClusterSnapshotBackupPolicyPolicyPolicyItemInput interface { type GetClusterSnapshotBackupPolicyPolicyPolicyItemArgs struct { FrequencyInterval pulumi.IntInput `pulumi:"frequencyInterval"` FrequencyType pulumi.StringInput `pulumi:"frequencyType"` - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringInput `pulumi:"id"` RetentionUnit pulumi.StringInput `pulumi:"retentionUnit"` RetentionValue pulumi.IntInput `pulumi:"retentionValue"` @@ -29914,7 +29941,7 @@ func (o GetClusterSnapshotBackupPolicyPolicyPolicyItemOutput) FrequencyType() pu return o.ApplyT(func(v GetClusterSnapshotBackupPolicyPolicyPolicyItem) string { return v.FrequencyType }).(pulumi.StringOutput) } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o GetClusterSnapshotBackupPolicyPolicyPolicyItemOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetClusterSnapshotBackupPolicyPolicyPolicyItem) string { return v.Id }).(pulumi.StringOutput) } @@ -30079,8 +30106,6 @@ type GetClustersResult struct { // Indicates whether Encryption at Rest is enabled or disabled. EncryptionAtRestProvider string `pulumi:"encryptionAtRestProvider"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels []GetClustersResultLabel `pulumi:"labels"` // Indicates the version of the cluster to deploy. MongoDbMajorVersion string `pulumi:"mongoDbMajorVersion"` @@ -30121,7 +30146,7 @@ type GetClustersResult struct { // Indicates the type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType string `pulumi:"providerVolumeType"` - // (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. RedactClientLogData bool `pulumi:"redactClientLogData"` // (Deprecated) 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 int `pulumi:"replicationFactor"` @@ -30184,8 +30209,6 @@ type GetClustersResultArgs struct { // Indicates whether Encryption at Rest is enabled or disabled. EncryptionAtRestProvider pulumi.StringInput `pulumi:"encryptionAtRestProvider"` // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - // - // Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags Labels GetClustersResultLabelArrayInput `pulumi:"labels"` // Indicates the version of the cluster to deploy. MongoDbMajorVersion pulumi.StringInput `pulumi:"mongoDbMajorVersion"` @@ -30226,7 +30249,7 @@ type GetClustersResultArgs struct { // Indicates the type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. // > **NOTE:** `STANDARD` is not available for NVME clusters. ProviderVolumeType pulumi.StringInput `pulumi:"providerVolumeType"` - // (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + // (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. RedactClientLogData pulumi.BoolInput `pulumi:"redactClientLogData"` // (Deprecated) 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 pulumi.IntInput `pulumi:"replicationFactor"` @@ -30364,8 +30387,6 @@ func (o GetClustersResultOutput) EncryptionAtRestProvider() pulumi.StringOutput } // Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. -// -// Deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags func (o GetClustersResultOutput) Labels() GetClustersResultLabelArrayOutput { return o.ApplyT(func(v GetClustersResult) []GetClustersResultLabel { return v.Labels }).(GetClustersResultLabelArrayOutput) } @@ -30466,7 +30487,7 @@ func (o GetClustersResultOutput) ProviderVolumeType() pulumi.StringOutput { return o.ApplyT(func(v GetClustersResult) string { return v.ProviderVolumeType }).(pulumi.StringOutput) } -// (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. +// (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. func (o GetClustersResultOutput) RedactClientLogData() pulumi.BoolOutput { return o.ApplyT(func(v GetClustersResult) bool { return v.RedactClientLogData }).(pulumi.BoolOutput) } @@ -31356,7 +31377,7 @@ func (o GetClustersResultLabelArrayOutput) Index(i pulumi.IntInput) GetClustersR } type GetClustersResultReplicationSpec struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id string `pulumi:"id"` // Number of shards to deploy in the specified zone. NumShards int `pulumi:"numShards"` @@ -31378,7 +31399,7 @@ type GetClustersResultReplicationSpecInput interface { } type GetClustersResultReplicationSpecArgs struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringInput `pulumi:"id"` // Number of shards to deploy in the specified zone. NumShards pulumi.IntInput `pulumi:"numShards"` @@ -31439,7 +31460,7 @@ func (o GetClustersResultReplicationSpecOutput) ToGetClustersResultReplicationSp return o } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o GetClustersResultReplicationSpecOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetClustersResultReplicationSpec) string { return v.Id }).(pulumi.StringOutput) } @@ -31753,7 +31774,7 @@ func (o GetClustersResultSnapshotBackupPolicyArrayOutput) Index(i pulumi.IntInpu } type GetClustersResultSnapshotBackupPolicyPolicy struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id string `pulumi:"id"` PolicyItems []GetClustersResultSnapshotBackupPolicyPolicyPolicyItem `pulumi:"policyItems"` } @@ -31770,7 +31791,7 @@ type GetClustersResultSnapshotBackupPolicyPolicyInput interface { } type GetClustersResultSnapshotBackupPolicyPolicyArgs struct { - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringInput `pulumi:"id"` PolicyItems GetClustersResultSnapshotBackupPolicyPolicyPolicyItemArrayInput `pulumi:"policyItems"` } @@ -31826,7 +31847,7 @@ func (o GetClustersResultSnapshotBackupPolicyPolicyOutput) ToGetClustersResultSn return o } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o GetClustersResultSnapshotBackupPolicyPolicyOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetClustersResultSnapshotBackupPolicyPolicy) string { return v.Id }).(pulumi.StringOutput) } @@ -31860,7 +31881,7 @@ func (o GetClustersResultSnapshotBackupPolicyPolicyArrayOutput) Index(i pulumi.I type GetClustersResultSnapshotBackupPolicyPolicyPolicyItem struct { FrequencyInterval int `pulumi:"frequencyInterval"` FrequencyType string `pulumi:"frequencyType"` - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id string `pulumi:"id"` RetentionUnit string `pulumi:"retentionUnit"` RetentionValue int `pulumi:"retentionValue"` @@ -31880,7 +31901,7 @@ type GetClustersResultSnapshotBackupPolicyPolicyPolicyItemInput interface { type GetClustersResultSnapshotBackupPolicyPolicyPolicyItemArgs struct { FrequencyInterval pulumi.IntInput `pulumi:"frequencyInterval"` FrequencyType pulumi.StringInput `pulumi:"frequencyType"` - // Unique identifer of the replication document for a zone in a Global Cluster. + // Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. Id pulumi.StringInput `pulumi:"id"` RetentionUnit pulumi.StringInput `pulumi:"retentionUnit"` RetentionValue pulumi.IntInput `pulumi:"retentionValue"` @@ -31945,7 +31966,7 @@ func (o GetClustersResultSnapshotBackupPolicyPolicyPolicyItemOutput) FrequencyTy return o.ApplyT(func(v GetClustersResultSnapshotBackupPolicyPolicyPolicyItem) string { return v.FrequencyType }).(pulumi.StringOutput) } -// Unique identifer of the replication document for a zone in a Global Cluster. +// Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. func (o GetClustersResultSnapshotBackupPolicyPolicyPolicyItemOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v GetClustersResultSnapshotBackupPolicyPolicyPolicyItem) string { return v.Id }).(pulumi.StringOutput) } @@ -46694,6 +46715,10 @@ type GetProjectsResult struct { IsRealtimePerformancePanelEnabled bool `pulumi:"isRealtimePerformancePanelEnabled"` // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). IsSchemaAdvisorEnabled bool `pulumi:"isSchemaAdvisorEnabled"` + // Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled bool `pulumi:"isSlowOperationThresholdingEnabled"` // The limits for the specified project. See Limits. Limits []GetProjectsResultLimit `pulumi:"limits"` Name string `pulumi:"name"` @@ -46742,6 +46767,10 @@ type GetProjectsResultArgs struct { IsRealtimePerformancePanelEnabled pulumi.BoolInput `pulumi:"isRealtimePerformancePanelEnabled"` // Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). IsSchemaAdvisorEnabled pulumi.BoolInput `pulumi:"isSchemaAdvisorEnabled"` + // Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + // + // Deprecated: This parameter is deprecated and will be removed in version 1.24.0. + IsSlowOperationThresholdingEnabled pulumi.BoolInput `pulumi:"isSlowOperationThresholdingEnabled"` // The limits for the specified project. See Limits. Limits GetProjectsResultLimitArrayInput `pulumi:"limits"` Name pulumi.StringInput `pulumi:"name"` @@ -46859,6 +46888,13 @@ func (o GetProjectsResultOutput) IsSchemaAdvisorEnabled() pulumi.BoolOutput { return o.ApplyT(func(v GetProjectsResult) bool { return v.IsSchemaAdvisorEnabled }).(pulumi.BoolOutput) } +// Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. +// +// Deprecated: This parameter is deprecated and will be removed in version 1.24.0. +func (o GetProjectsResultOutput) IsSlowOperationThresholdingEnabled() pulumi.BoolOutput { + return o.ApplyT(func(v GetProjectsResult) bool { return v.IsSlowOperationThresholdingEnabled }).(pulumi.BoolOutput) +} + // The limits for the specified project. See Limits. func (o GetProjectsResultOutput) Limits() GetProjectsResultLimitArrayOutput { return o.ApplyT(func(v GetProjectsResult) []GetProjectsResultLimit { return v.Limits }).(GetProjectsResultLimitArrayOutput) diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedCluster.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedCluster.java index 056201dd..14223e51 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedCluster.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedCluster.java @@ -24,24 +24,6 @@ import javax.annotation.Nullable; /** - * ## # Resource: mongodbatlas.AdvancedCluster - * - * `mongodbatlas.AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID. - * - * More information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations) - * - * > **IMPORTANT:** The primary difference between `mongodbatlas.Cluster` and `mongodbatlas.AdvancedCluster` is that `mongodbatlas.AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `mongodbatlas.AdvancedCluster` resource. - * - * > **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy). - * - * > **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information. - * - * > **NOTE:** To enable Cluster Extended Storage Sizes use the `is_extended_storage_sizes_enabled` parameter in the mongodbatlas.Project resource. - * - * > **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/). - * - * > **NOTE:** Groups and projects are synonymous terms. You might find group_id in the official documentation. - * * ## Example Usage * * ### Example single provider and single region @@ -654,6 +636,34 @@ public Output clusterId() { public Output clusterType() { return this.clusterType; } + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + @Export(name="configServerManagementMode", refs={String.class}, tree="[0]") + private Output configServerManagementMode; + + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public Output configServerManagementMode() { + return this.configServerManagementMode; + } + /** + * Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + @Export(name="configServerType", refs={String.class}, tree="[0]") + private Output configServerType; + + /** + * @return Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public Output configServerType() { + return this.configServerType; + } /** * Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -723,11 +733,7 @@ public Output globalClusterSelfManagedSharding() { /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ @Export(name="labels", refs={List.class,AdvancedClusterLabel.class}, tree="[0,1]") private Output> labels; @@ -815,14 +821,14 @@ public Output projectId() { return this.projectId; } /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * */ @Export(name="redactClientLogData", refs={Boolean.class}, tree="[0]") private Output redactClientLogData; /** - * @return Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * */ public Output redactClientLogData() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedClusterArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedClusterArgs.java index 81c9878d..1e8e5723 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedClusterArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/AdvancedClusterArgs.java @@ -115,6 +115,21 @@ public Output clusterType() { return this.clusterType; } + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + @Import(name="configServerManagementMode") + private @Nullable Output configServerManagementMode; + + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public Optional> configServerManagementMode() { + return Optional.ofNullable(this.configServerManagementMode); + } + /** * Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. * @@ -171,22 +186,14 @@ public Optional> globalClusterSelfManagedSharding() { /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ @Import(name="labels") private @Nullable Output> labels; /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Optional>> labels() { return Optional.ofNullable(this.labels); } @@ -259,14 +266,14 @@ public Output projectId() { } /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * */ @Import(name="redactClientLogData") private @Nullable Output redactClientLogData; /** - * @return Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * */ public Optional> redactClientLogData() { @@ -390,6 +397,7 @@ private AdvancedClusterArgs(AdvancedClusterArgs $) { this.backupEnabled = $.backupEnabled; this.biConnectorConfig = $.biConnectorConfig; this.clusterType = $.clusterType; + this.configServerManagementMode = $.configServerManagementMode; this.diskSizeGb = $.diskSizeGb; this.encryptionAtRestProvider = $.encryptionAtRestProvider; this.globalClusterSelfManagedSharding = $.globalClusterSelfManagedSharding; @@ -544,6 +552,27 @@ public Builder clusterType(String clusterType) { return clusterType(Output.of(clusterType)); } + /** + * @param configServerManagementMode Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + * @return builder + * + */ + public Builder configServerManagementMode(@Nullable Output configServerManagementMode) { + $.configServerManagementMode = configServerManagementMode; + return this; + } + + /** + * @param configServerManagementMode Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + * @return builder + * + */ + public Builder configServerManagementMode(String configServerManagementMode) { + return configServerManagementMode(Output.of(configServerManagementMode)); + } + /** * @param diskSizeGb Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. * @@ -620,11 +649,7 @@ public Builder globalClusterSelfManagedSharding(Boolean globalClusterSelfManaged * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(@Nullable Output> labels) { $.labels = labels; return this; @@ -635,11 +660,7 @@ public Builder labels(@Nullable Output> labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(List labels) { return labels(Output.of(labels)); } @@ -649,11 +670,7 @@ public Builder labels(List labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(AdvancedClusterLabelArgs... labels) { return labels(List.of(labels)); } @@ -752,7 +769,7 @@ public Builder projectId(String projectId) { } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * * @return builder * @@ -763,7 +780,7 @@ public Builder redactClientLogData(@Nullable Output redactClientLogData } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/Cluster.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/Cluster.java index aec90df0..d234e7f5 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/Cluster.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/Cluster.java @@ -688,11 +688,7 @@ public Output encryptionAtRestProvider() { /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ @Export(name="labels", refs={List.class,ClusterLabel.class}, tree="[0,1]") private Output> labels; @@ -992,14 +988,14 @@ public Output providerVolumeType() { return this.providerVolumeType; } /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * */ @Export(name="redactClientLogData", refs={Boolean.class}, tree="[0]") private Output redactClientLogData; /** - * @return Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @return Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * */ public Output redactClientLogData() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ClusterArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ClusterArgs.java index 992eaa5a..6a73f0bc 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ClusterArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ClusterArgs.java @@ -226,22 +226,14 @@ public Optional> encryptionAtRestProvider() { /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ @Import(name="labels") private @Nullable Output> labels; /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Optional>> labels() { return Optional.ofNullable(this.labels); } @@ -492,14 +484,14 @@ public Optional> providerVolumeType() { } /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * */ @Import(name="redactClientLogData") private @Nullable Output redactClientLogData; /** - * @return Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @return Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * */ public Optional> redactClientLogData() { @@ -917,11 +909,7 @@ public Builder encryptionAtRestProvider(String encryptionAtRestProvider) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(@Nullable Output> labels) { $.labels = labels; return this; @@ -932,11 +920,7 @@ public Builder labels(@Nullable Output> labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(List labels) { return labels(Output.of(labels)); } @@ -946,11 +930,7 @@ public Builder labels(List labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(ClusterLabelArgs... labels) { return labels(List.of(labels)); } @@ -1287,7 +1267,7 @@ public Builder providerVolumeType(String providerVolumeType) { } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * * @return builder * @@ -1298,7 +1278,7 @@ public Builder redactClientLogData(@Nullable Output redactClientLogData } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/Project.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/Project.java index fe995930..e5bca52f 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/Project.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/Project.java @@ -88,6 +88,7 @@ * .isPerformanceAdvisorEnabled(true) * .isRealtimePerformancePanelEnabled(true) * .isSchemaAdvisorEnabled(true) + * .isSlowOperationThresholdingEnabled(true) * .build()); * * } @@ -238,6 +239,24 @@ public Output isRealtimePerformancePanelEnabled() { public Output isSchemaAdvisorEnabled() { return this.isSchemaAdvisorEnabled; } + /** + * (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + @Export(name="isSlowOperationThresholdingEnabled", refs={Boolean.class}, tree="[0]") + private Output isSlowOperationThresholdingEnabled; + + /** + * @return (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + */ + public Output isSlowOperationThresholdingEnabled() { + return this.isSlowOperationThresholdingEnabled; + } @Export(name="limits", refs={List.class,ProjectLimit.class}, tree="[0,1]") private Output> limits; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKey.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKey.java index 272fc557..474b6c80 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKey.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKey.java @@ -134,6 +134,8 @@ public Output apiKeyId() { /** * Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * */ @Export(name="description", refs={String.class}, tree="[0]") private Output description; @@ -141,6 +143,8 @@ public Output apiKeyId() { /** * @return Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * */ public Output description() { return this.description; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKeyArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKeyArgs.java index b9977b35..01a36175 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKeyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectApiKeyArgs.java @@ -19,6 +19,8 @@ public final class ProjectApiKeyArgs extends com.pulumi.resources.ResourceArgs { /** * Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * */ @Import(name="description", required=true) private Output description; @@ -26,6 +28,8 @@ public final class ProjectApiKeyArgs extends com.pulumi.resources.ResourceArgs { /** * @return Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * */ public Output description() { return this.description; @@ -66,6 +70,8 @@ public Builder(ProjectApiKeyArgs defaults) { /** * @param description Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * * @return builder * */ @@ -77,6 +83,8 @@ public Builder description(Output description) { /** * @param description Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * * @return builder * */ diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectArgs.java index 6989403b..d0f4e07b 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/ProjectArgs.java @@ -111,6 +111,29 @@ public Optional> isSchemaAdvisorEnabled() { return Optional.ofNullable(this.isSchemaAdvisorEnabled); } + /** + * (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + @Import(name="isSlowOperationThresholdingEnabled") + private @Nullable Output isSlowOperationThresholdingEnabled; + + /** + * @return (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Optional> isSlowOperationThresholdingEnabled() { + return Optional.ofNullable(this.isSlowOperationThresholdingEnabled); + } + @Import(name="limits") private @Nullable Output> limits; @@ -224,6 +247,7 @@ private ProjectArgs(ProjectArgs $) { this.isPerformanceAdvisorEnabled = $.isPerformanceAdvisorEnabled; this.isRealtimePerformancePanelEnabled = $.isRealtimePerformancePanelEnabled; this.isSchemaAdvisorEnabled = $.isSchemaAdvisorEnabled; + this.isSlowOperationThresholdingEnabled = $.isSlowOperationThresholdingEnabled; this.limits = $.limits; this.name = $.name; this.orgId = $.orgId; @@ -378,6 +402,35 @@ public Builder isSchemaAdvisorEnabled(Boolean isSchemaAdvisorEnabled) { return isSchemaAdvisorEnabled(Output.of(isSchemaAdvisorEnabled)); } + /** + * @param isSlowOperationThresholdingEnabled (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @return builder + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Builder isSlowOperationThresholdingEnabled(@Nullable Output isSlowOperationThresholdingEnabled) { + $.isSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; + return this; + } + + /** + * @param isSlowOperationThresholdingEnabled (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @return builder + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Builder isSlowOperationThresholdingEnabled(Boolean isSlowOperationThresholdingEnabled) { + return isSlowOperationThresholdingEnabled(Output.of(isSlowOperationThresholdingEnabled)); + } + public Builder limits(@Nullable Output> limits) { $.limits = limits; return this; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.java index 0d703bab..44ef429f 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterConnectionStringPrivateEndpointEndpointArgs.java @@ -29,7 +29,7 @@ public Optional> endpointId() { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ @Import(name="providerName") @@ -42,7 +42,7 @@ public Optional> endpointId() { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ public Optional> providerName() { @@ -98,7 +98,7 @@ public Builder endpointId(String endpointId) { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * * @return builder * @@ -115,7 +115,7 @@ public Builder providerName(@Nullable Output providerName) { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecArgs.java index f73172c5..0ba17668 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecArgs.java @@ -27,14 +27,24 @@ public Optional>> containerId() { return Optional.ofNullable(this.containerId); } + /** + * Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ @Import(name="externalId") private @Nullable Output externalId; + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ public Optional> externalId() { return Optional.ofNullable(this.externalId); } /** + * **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @deprecated * This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown * @@ -44,6 +54,8 @@ public Optional> externalId() { private @Nullable Output id; /** + * @return **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @deprecated * This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown * @@ -162,16 +174,30 @@ public Builder containerId(Map containerId) { return containerId(Output.of(containerId)); } + /** + * @param externalId Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + * @return builder + * + */ public Builder externalId(@Nullable Output externalId) { $.externalId = externalId; return this; } + /** + * @param externalId Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + * @return builder + * + */ public Builder externalId(String externalId) { return externalId(Output.of(externalId)); } /** + * @param id **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @return builder * * @deprecated @@ -185,6 +211,8 @@ public Builder id(@Nullable Output id) { } /** + * @param id **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @return builder * * @deprecated diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.java index 5961036b..6af34b7f 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs.java @@ -69,14 +69,14 @@ public Optional> computeScaleDownEnabled() { } /** - * Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. * */ @Import(name="diskGbEnabled") private @Nullable Output diskGbEnabled; /** - * @return Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * @return Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. * */ public Optional> diskGbEnabled() { @@ -184,7 +184,7 @@ public Builder computeScaleDownEnabled(Boolean computeScaleDownEnabled) { } /** - * @param diskGbEnabled Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * @param diskGbEnabled Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. * * @return builder * @@ -195,7 +195,7 @@ public Builder diskGbEnabled(@Nullable Output diskGbEnabled) { } /** - * @param diskGbEnabled Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * @param diskGbEnabled Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigArgs.java index d7c0587e..f496b78c 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterReplicationSpecRegionConfigArgs.java @@ -123,7 +123,7 @@ public Output priority() { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ @Import(name="providerName", required=true) @@ -136,7 +136,7 @@ public Output priority() { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ public Output providerName() { @@ -342,7 +342,7 @@ public Builder priority(Integer priority) { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * * @return builder * @@ -359,7 +359,7 @@ public Builder providerName(Output providerName) { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterState.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterState.java index 23d1bf06..353ac4e0 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterState.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/AdvancedClusterState.java @@ -130,6 +130,36 @@ public Optional> clusterType() { return Optional.ofNullable(this.clusterType); } + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + @Import(name="configServerManagementMode") + private @Nullable Output configServerManagementMode; + + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public Optional> configServerManagementMode() { + return Optional.ofNullable(this.configServerManagementMode); + } + + /** + * Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + @Import(name="configServerType") + private @Nullable Output configServerType; + + /** + * @return Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public Optional> configServerType() { + return Optional.ofNullable(this.configServerType); + } + /** * Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -208,22 +238,14 @@ public Optional> globalClusterSelfManagedSharding() { /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ @Import(name="labels") private @Nullable Output> labels; /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Optional>> labels() { return Optional.ofNullable(this.labels); } @@ -311,14 +333,14 @@ public Optional> projectId() { } /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * */ @Import(name="redactClientLogData") private @Nullable Output redactClientLogData; /** - * @return Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * */ public Optional> redactClientLogData() { @@ -472,6 +494,8 @@ private AdvancedClusterState(AdvancedClusterState $) { this.biConnectorConfig = $.biConnectorConfig; this.clusterId = $.clusterId; this.clusterType = $.clusterType; + this.configServerManagementMode = $.configServerManagementMode; + this.configServerType = $.configServerType; this.connectionStrings = $.connectionStrings; this.createDate = $.createDate; this.diskSizeGb = $.diskSizeGb; @@ -651,6 +675,48 @@ public Builder clusterType(String clusterType) { return clusterType(Output.of(clusterType)); } + /** + * @param configServerManagementMode Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + * @return builder + * + */ + public Builder configServerManagementMode(@Nullable Output configServerManagementMode) { + $.configServerManagementMode = configServerManagementMode; + return this; + } + + /** + * @param configServerManagementMode Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + * @return builder + * + */ + public Builder configServerManagementMode(String configServerManagementMode) { + return configServerManagementMode(Output.of(configServerManagementMode)); + } + + /** + * @param configServerType Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + * @return builder + * + */ + public Builder configServerType(@Nullable Output configServerType) { + $.configServerType = configServerType; + return this; + } + + /** + * @param configServerType Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + * @return builder + * + */ + public Builder configServerType(String configServerType) { + return configServerType(Output.of(configServerType)); + } + /** * @param connectionStrings Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -767,11 +833,7 @@ public Builder globalClusterSelfManagedSharding(Boolean globalClusterSelfManaged * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(@Nullable Output> labels) { $.labels = labels; return this; @@ -782,11 +844,7 @@ public Builder labels(@Nullable Output> labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(List labels) { return labels(Output.of(labels)); } @@ -796,11 +854,7 @@ public Builder labels(List labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(AdvancedClusterLabelArgs... labels) { return labels(List.of(labels)); } @@ -920,7 +974,7 @@ public Builder projectId(String projectId) { } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * * @return builder * @@ -931,7 +985,7 @@ public Builder redactClientLogData(@Nullable Output redactClientLogData } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterReplicationSpecArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterReplicationSpecArgs.java index 54cd3450..6f3f4f9a 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterReplicationSpecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterReplicationSpecArgs.java @@ -20,14 +20,14 @@ public final class ClusterReplicationSpecArgs extends com.pulumi.resources.Resou public static final ClusterReplicationSpecArgs Empty = new ClusterReplicationSpecArgs(); /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ @Import(name="id") private @Nullable Output id; /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public Optional> id() { @@ -111,7 +111,7 @@ public Builder(ClusterReplicationSpecArgs defaults) { } /** - * @param id Unique identifer of the replication document for a zone in a Global Cluster. + * @param id Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * * @return builder * @@ -122,7 +122,7 @@ public Builder id(@Nullable Output id) { } /** - * @param id Unique identifer of the replication document for a zone in a Global Cluster. + * @param id Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyArgs.java index 170cdb66..f8448b7b 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyArgs.java @@ -18,14 +18,14 @@ public final class ClusterSnapshotBackupPolicyPolicyArgs extends com.pulumi.reso public static final ClusterSnapshotBackupPolicyPolicyArgs Empty = new ClusterSnapshotBackupPolicyPolicyArgs(); /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ @Import(name="id") private @Nullable Output id; /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public Optional> id() { @@ -65,7 +65,7 @@ public Builder(ClusterSnapshotBackupPolicyPolicyArgs defaults) { } /** - * @param id Unique identifer of the replication document for a zone in a Global Cluster. + * @param id Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * * @return builder * @@ -76,7 +76,7 @@ public Builder id(@Nullable Output id) { } /** - * @param id Unique identifer of the replication document for a zone in a Global Cluster. + * @param id Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.java index 927360f4..15bf4bd5 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterSnapshotBackupPolicyPolicyPolicyItemArgs.java @@ -31,14 +31,14 @@ public Optional> frequencyType() { } /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ @Import(name="id") private @Nullable Output id; /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public Optional> id() { @@ -106,7 +106,7 @@ public Builder frequencyType(String frequencyType) { } /** - * @param id Unique identifer of the replication document for a zone in a Global Cluster. + * @param id Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * * @return builder * @@ -117,7 +117,7 @@ public Builder id(@Nullable Output id) { } /** - * @param id Unique identifer of the replication document for a zone in a Global Cluster. + * @param id Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterState.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterState.java index fb170346..507ededa 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterState.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ClusterState.java @@ -272,22 +272,14 @@ public Optional> encryptionAtRestProvider() { /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ @Import(name="labels") private @Nullable Output> labels; /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Optional>> labels() { return Optional.ofNullable(this.labels); } @@ -605,14 +597,14 @@ public Optional> providerVolumeType() { } /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * */ @Import(name="redactClientLogData") private @Nullable Output redactClientLogData; /** - * @return Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @return Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * */ public Optional> redactClientLogData() { @@ -1171,11 +1163,7 @@ public Builder encryptionAtRestProvider(String encryptionAtRestProvider) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(@Nullable Output> labels) { $.labels = labels; return this; @@ -1186,11 +1174,7 @@ public Builder labels(@Nullable Output> labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(List labels) { return labels(Output.of(labels)); } @@ -1200,11 +1184,7 @@ public Builder labels(List labels) { * * @return builder * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public Builder labels(ClusterLabelArgs... labels) { return labels(List.of(labels)); } @@ -1634,7 +1614,7 @@ public Builder providerVolumeType(String providerVolumeType) { } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * * @return builder * @@ -1645,7 +1625,7 @@ public Builder redactClientLogData(@Nullable Output redactClientLogData } /** - * @param redactClientLogData Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * @param redactClientLogData Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectApiKeyState.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectApiKeyState.java index ed13e7ad..70b8430e 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectApiKeyState.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectApiKeyState.java @@ -35,6 +35,8 @@ public Optional> apiKeyId() { /** * Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * */ @Import(name="description") private @Nullable Output description; @@ -42,6 +44,8 @@ public Optional> apiKeyId() { /** * @return Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * */ public Optional> description() { return Optional.ofNullable(this.description); @@ -120,6 +124,8 @@ public Builder apiKeyId(String apiKeyId) { /** * @param description Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * * @return builder * */ @@ -131,6 +137,8 @@ public Builder description(@Nullable Output description) { /** * @param description Description of this Project API key. * + * > **NOTE:** Project created by API Keys must belong to an existing organization. + * * @return builder * */ diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectState.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectState.java index 7759bd26..cb10be4c 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectState.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/inputs/ProjectState.java @@ -165,6 +165,29 @@ public Optional> isSchemaAdvisorEnabled() { return Optional.ofNullable(this.isSchemaAdvisorEnabled); } + /** + * (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + @Import(name="isSlowOperationThresholdingEnabled") + private @Nullable Output isSlowOperationThresholdingEnabled; + + /** + * @return (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Optional> isSlowOperationThresholdingEnabled() { + return Optional.ofNullable(this.isSlowOperationThresholdingEnabled); + } + @Import(name="limits") private @Nullable Output> limits; @@ -281,6 +304,7 @@ private ProjectState(ProjectState $) { this.isPerformanceAdvisorEnabled = $.isPerformanceAdvisorEnabled; this.isRealtimePerformancePanelEnabled = $.isRealtimePerformancePanelEnabled; this.isSchemaAdvisorEnabled = $.isSchemaAdvisorEnabled; + this.isSlowOperationThresholdingEnabled = $.isSlowOperationThresholdingEnabled; this.limits = $.limits; this.name = $.name; this.orgId = $.orgId; @@ -506,6 +530,35 @@ public Builder isSchemaAdvisorEnabled(Boolean isSchemaAdvisorEnabled) { return isSchemaAdvisorEnabled(Output.of(isSchemaAdvisorEnabled)); } + /** + * @param isSlowOperationThresholdingEnabled (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @return builder + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Builder isSlowOperationThresholdingEnabled(@Nullable Output isSlowOperationThresholdingEnabled) { + $.isSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; + return this; + } + + /** + * @param isSlowOperationThresholdingEnabled (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @return builder + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Builder isSlowOperationThresholdingEnabled(Boolean isSlowOperationThresholdingEnabled) { + return isSlowOperationThresholdingEnabled(Output.of(isSlowOperationThresholdingEnabled)); + } + public Builder limits(@Nullable Output> limits) { $.limits = limits; return this; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.java index 4aecfcd6..904726ee 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterConnectionStringPrivateEndpointEndpoint.java @@ -19,7 +19,7 @@ public final class AdvancedClusterConnectionStringPrivateEndpointEndpoint { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ private @Nullable String providerName; @@ -36,7 +36,7 @@ public Optional endpointId() { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ public Optional providerName() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpec.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpec.java index a0b4067c..898896de 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpec.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpec.java @@ -17,8 +17,14 @@ @CustomType public final class AdvancedClusterReplicationSpec { private @Nullable Map containerId; + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ private @Nullable String externalId; /** + * @return **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @deprecated * This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown * @@ -55,10 +61,16 @@ private AdvancedClusterReplicationSpec() {} public Map containerId() { return this.containerId == null ? Map.of() : this.containerId; } + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ public Optional externalId() { return Optional.ofNullable(this.externalId); } /** + * @return **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @deprecated * This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown * diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfig.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfig.java index 2ad7b82e..f8ad3a43 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfig.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfig.java @@ -57,7 +57,7 @@ public final class AdvancedClusterReplicationSpecRegionConfig { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ private String providerName; @@ -124,7 +124,7 @@ public Integer priority() { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. * */ public String providerName() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.java index d599d2f1..c9797d42 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling.java @@ -29,7 +29,7 @@ public final class AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalin */ private @Nullable Boolean computeScaleDownEnabled; /** - * @return Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * @return Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. * */ private @Nullable Boolean diskGbEnabled; @@ -60,7 +60,7 @@ public Optional computeScaleDownEnabled() { return Optional.ofNullable(this.computeScaleDownEnabled); } /** - * @return Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * @return Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. * */ public Optional diskGbEnabled() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterReplicationSpec.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterReplicationSpec.java index f8c488d7..92031df1 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterReplicationSpec.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterReplicationSpec.java @@ -16,7 +16,7 @@ @CustomType public final class ClusterReplicationSpec { /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private @Nullable String id; @@ -40,7 +40,7 @@ public final class ClusterReplicationSpec { private ClusterReplicationSpec() {} /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public Optional id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicy.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicy.java index d21290e0..e9bfd9d6 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicy.java @@ -14,7 +14,7 @@ @CustomType public final class ClusterSnapshotBackupPolicyPolicy { /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private @Nullable String id; @@ -22,7 +22,7 @@ public final class ClusterSnapshotBackupPolicyPolicy { private ClusterSnapshotBackupPolicyPolicy() {} /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public Optional id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.java index 8656d5c9..49282977 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/ClusterSnapshotBackupPolicyPolicyPolicyItem.java @@ -15,7 +15,7 @@ public final class ClusterSnapshotBackupPolicyPolicyPolicyItem { private @Nullable Integer frequencyInterval; private @Nullable String frequencyType; /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private @Nullable String id; @@ -30,7 +30,7 @@ public Optional frequencyType() { return Optional.ofNullable(this.frequencyType); } /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public Optional id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterReplicationSpec.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterReplicationSpec.java index 54d76495..99e98030 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterReplicationSpec.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterReplicationSpec.java @@ -19,6 +19,10 @@ public final class GetAdvancedClusterReplicationSpec { * */ private Map containerId; + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ private String externalId; /** * @deprecated @@ -60,6 +64,10 @@ private GetAdvancedClusterReplicationSpec() {} public Map containerId() { return this.containerId; } + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ public String externalId() { return this.externalId; } diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterResult.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterResult.java index 6340946b..fcfaa33f 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterResult.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClusterResult.java @@ -37,6 +37,16 @@ public final class GetAdvancedClusterResult { * */ private String clusterType; + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + private String configServerManagementMode; + /** + * @return Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + private String configServerType; /** * @return Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -70,11 +80,7 @@ public final class GetAdvancedClusterResult { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ private List labels; /** * @return Version of the cluster to deploy. @@ -99,7 +105,7 @@ public final class GetAdvancedClusterResult { private Boolean pitEnabled; private String projectId; /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ private Boolean redactClientLogData; @@ -165,6 +171,20 @@ public List biConnectorConfigs() { public String clusterType() { return this.clusterType; } + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public String configServerManagementMode() { + return this.configServerManagementMode; + } + /** + * @return Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public String configServerType() { + return this.configServerType; + } /** * @return Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -210,11 +230,7 @@ public String id() { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public List labels() { return this.labels; } @@ -253,7 +269,7 @@ public String projectId() { return this.projectId; } /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ public Boolean redactClientLogData() { @@ -325,6 +341,8 @@ public static final class Builder { private Boolean backupEnabled; private List biConnectorConfigs; private String clusterType; + private String configServerManagementMode; + private String configServerType; private List connectionStrings; private String createDate; private Double diskSizeGb; @@ -354,6 +372,8 @@ public Builder(GetAdvancedClusterResult defaults) { this.backupEnabled = defaults.backupEnabled; this.biConnectorConfigs = defaults.biConnectorConfigs; this.clusterType = defaults.clusterType; + this.configServerManagementMode = defaults.configServerManagementMode; + this.configServerType = defaults.configServerType; this.connectionStrings = defaults.connectionStrings; this.createDate = defaults.createDate; this.diskSizeGb = defaults.diskSizeGb; @@ -417,6 +437,22 @@ public Builder clusterType(String clusterType) { return this; } @CustomType.Setter + public Builder configServerManagementMode(String configServerManagementMode) { + if (configServerManagementMode == null) { + throw new MissingRequiredPropertyException("GetAdvancedClusterResult", "configServerManagementMode"); + } + this.configServerManagementMode = configServerManagementMode; + return this; + } + @CustomType.Setter + public Builder configServerType(String configServerType) { + if (configServerType == null) { + throw new MissingRequiredPropertyException("GetAdvancedClusterResult", "configServerType"); + } + this.configServerType = configServerType; + return this; + } + @CustomType.Setter public Builder connectionStrings(List connectionStrings) { if (connectionStrings == null) { throw new MissingRequiredPropertyException("GetAdvancedClusterResult", "connectionStrings"); @@ -608,6 +644,8 @@ public GetAdvancedClusterResult build() { _resultValue.backupEnabled = backupEnabled; _resultValue.biConnectorConfigs = biConnectorConfigs; _resultValue.clusterType = clusterType; + _resultValue.configServerManagementMode = configServerManagementMode; + _resultValue.configServerType = configServerType; _resultValue.connectionStrings = connectionStrings; _resultValue.createDate = createDate; _resultValue.diskSizeGb = diskSizeGb; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResult.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResult.java index e50ffe0f..3763151e 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResult.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResult.java @@ -35,6 +35,16 @@ public final class GetAdvancedClustersResult { * */ private String clusterType; + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + private String configServerManagementMode; + /** + * @return Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + private String configServerType; /** * @return Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -63,11 +73,7 @@ public final class GetAdvancedClustersResult { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ private List labels; /** * @return Version of the cluster to deploy. @@ -91,7 +97,7 @@ public final class GetAdvancedClustersResult { */ private Boolean pitEnabled; /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ private Boolean redactClientLogData; @@ -156,6 +162,20 @@ public List biConnectorConfigs() { public String clusterType() { return this.clusterType; } + /** + * @return Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public String configServerManagementMode() { + return this.configServerManagementMode; + } + /** + * @return Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + * + */ + public String configServerType() { + return this.configServerType; + } /** * @return Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. * @@ -194,11 +214,7 @@ public Boolean globalClusterSelfManagedSharding() { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public List labels() { return this.labels; } @@ -234,7 +250,7 @@ public Boolean pitEnabled() { return this.pitEnabled; } /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ public Boolean redactClientLogData() { @@ -303,6 +319,8 @@ public static final class Builder { private Boolean backupEnabled; private List biConnectorConfigs; private String clusterType; + private String configServerManagementMode; + private String configServerType; private List connectionStrings; private String createDate; private Double diskSizeGb; @@ -329,6 +347,8 @@ public Builder(GetAdvancedClustersResult defaults) { this.backupEnabled = defaults.backupEnabled; this.biConnectorConfigs = defaults.biConnectorConfigs; this.clusterType = defaults.clusterType; + this.configServerManagementMode = defaults.configServerManagementMode; + this.configServerType = defaults.configServerType; this.connectionStrings = defaults.connectionStrings; this.createDate = defaults.createDate; this.diskSizeGb = defaults.diskSizeGb; @@ -389,6 +409,22 @@ public Builder clusterType(String clusterType) { return this; } @CustomType.Setter + public Builder configServerManagementMode(String configServerManagementMode) { + if (configServerManagementMode == null) { + throw new MissingRequiredPropertyException("GetAdvancedClustersResult", "configServerManagementMode"); + } + this.configServerManagementMode = configServerManagementMode; + return this; + } + @CustomType.Setter + public Builder configServerType(String configServerType) { + if (configServerType == null) { + throw new MissingRequiredPropertyException("GetAdvancedClustersResult", "configServerType"); + } + this.configServerType = configServerType; + return this; + } + @CustomType.Setter public Builder connectionStrings(List connectionStrings) { if (connectionStrings == null) { throw new MissingRequiredPropertyException("GetAdvancedClustersResult", "connectionStrings"); @@ -558,6 +594,8 @@ public GetAdvancedClustersResult build() { _resultValue.backupEnabled = backupEnabled; _resultValue.biConnectorConfigs = biConnectorConfigs; _resultValue.clusterType = clusterType; + _resultValue.configServerManagementMode = configServerManagementMode; + _resultValue.configServerType = configServerType; _resultValue.connectionStrings = connectionStrings; _resultValue.createDate = createDate; _resultValue.diskSizeGb = diskSizeGb; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResultReplicationSpec.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResultReplicationSpec.java index 61ceb775..b716db04 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResultReplicationSpec.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetAdvancedClustersResultReplicationSpec.java @@ -19,6 +19,10 @@ public final class GetAdvancedClustersResultReplicationSpec { * */ private Map containerId; + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ private String externalId; /** * @deprecated @@ -60,6 +64,10 @@ private GetAdvancedClustersResultReplicationSpec() {} public Map containerId() { return this.containerId; } + /** + * @return Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + * + */ public String externalId() { return this.externalId; } diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterReplicationSpec.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterReplicationSpec.java index 11a118b2..448db8b5 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterReplicationSpec.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterReplicationSpec.java @@ -14,7 +14,7 @@ @CustomType public final class GetClusterReplicationSpec { /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private String id; @@ -36,7 +36,7 @@ public final class GetClusterReplicationSpec { private GetClusterReplicationSpec() {} /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public String id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterResult.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterResult.java index 898ee2e7..a03879c5 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterResult.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterResult.java @@ -89,11 +89,7 @@ public final class GetClusterResult { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ private List labels; /** * @return Indicates the version of the cluster to deploy. @@ -190,7 +186,7 @@ public final class GetClusterResult { */ private String providerVolumeType; /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ private Boolean redactClientLogData; @@ -336,11 +332,7 @@ public String id() { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public List labels() { return this.labels; } @@ -481,7 +473,7 @@ public String providerVolumeType() { return this.providerVolumeType; } /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ public Boolean redactClientLogData() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicy.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicy.java index 91ed2e63..ceb35a0a 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicy.java @@ -13,7 +13,7 @@ @CustomType public final class GetClusterSnapshotBackupPolicyPolicy { /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private String id; @@ -21,7 +21,7 @@ public final class GetClusterSnapshotBackupPolicyPolicy { private GetClusterSnapshotBackupPolicyPolicy() {} /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public String id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItem.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItem.java index 0c6811ff..90ed09af 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItem.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClusterSnapshotBackupPolicyPolicyPolicyItem.java @@ -14,7 +14,7 @@ public final class GetClusterSnapshotBackupPolicyPolicyPolicyItem { private Integer frequencyInterval; private String frequencyType; /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private String id; @@ -29,7 +29,7 @@ public String frequencyType() { return this.frequencyType; } /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public String id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResult.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResult.java index edca84a6..6a7c9e42 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResult.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResult.java @@ -84,11 +84,7 @@ public final class GetClustersResult { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ private List labels; /** * @return Indicates the version of the cluster to deploy. @@ -187,7 +183,7 @@ public final class GetClustersResult { */ private String providerVolumeType; /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ private Boolean redactClientLogData; @@ -326,11 +322,7 @@ public String encryptionAtRestProvider() { /** * @return Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. * - * @deprecated - * This parameter is deprecated and will be removed in the future. Please transition to tags - * */ - @Deprecated /* This parameter is deprecated and will be removed in the future. Please transition to tags */ public List labels() { return this.labels; } @@ -469,7 +461,7 @@ public String providerVolumeType() { return this.providerVolumeType; } /** - * @return (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * @return (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. * */ public Boolean redactClientLogData() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultReplicationSpec.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultReplicationSpec.java index 5018047c..2cd19af2 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultReplicationSpec.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultReplicationSpec.java @@ -14,7 +14,7 @@ @CustomType public final class GetClustersResultReplicationSpec { /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private String id; @@ -36,7 +36,7 @@ public final class GetClustersResultReplicationSpec { private GetClustersResultReplicationSpec() {} /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public String id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicy.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicy.java index c442a92a..a7ba12ba 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicy.java @@ -13,7 +13,7 @@ @CustomType public final class GetClustersResultSnapshotBackupPolicyPolicy { /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private String id; @@ -21,7 +21,7 @@ public final class GetClustersResultSnapshotBackupPolicyPolicy { private GetClustersResultSnapshotBackupPolicyPolicy() {} /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public String id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItem.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItem.java index feab6eb1..313a13d6 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItem.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetClustersResultSnapshotBackupPolicyPolicyPolicyItem.java @@ -14,7 +14,7 @@ public final class GetClustersResultSnapshotBackupPolicyPolicyPolicyItem { private Integer frequencyInterval; private String frequencyType; /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ private String id; @@ -29,7 +29,7 @@ public String frequencyType() { return this.frequencyType; } /** - * @return Unique identifer of the replication document for a zone in a Global Cluster. + * @return Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. * */ public String id() { diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectResult.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectResult.java index 01cfee93..a9167ef8 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectResult.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectResult.java @@ -69,6 +69,15 @@ public final class GetProjectResult { * */ private Boolean isSchemaAdvisorEnabled; + /** + * @return (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + private Boolean isSlowOperationThresholdingEnabled; /** * @return The limits for the specified project. See Limits. * @@ -172,6 +181,17 @@ public Boolean isRealtimePerformancePanelEnabled() { public Boolean isSchemaAdvisorEnabled() { return this.isSchemaAdvisorEnabled; } + /** + * @return (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Boolean isSlowOperationThresholdingEnabled() { + return this.isSlowOperationThresholdingEnabled; + } /** * @return The limits for the specified project. See Limits. * @@ -237,6 +257,7 @@ public static final class Builder { private Boolean isPerformanceAdvisorEnabled; private Boolean isRealtimePerformancePanelEnabled; private Boolean isSchemaAdvisorEnabled; + private Boolean isSlowOperationThresholdingEnabled; private List limits; private @Nullable String name; private String orgId; @@ -257,6 +278,7 @@ public Builder(GetProjectResult defaults) { this.isPerformanceAdvisorEnabled = defaults.isPerformanceAdvisorEnabled; this.isRealtimePerformancePanelEnabled = defaults.isRealtimePerformancePanelEnabled; this.isSchemaAdvisorEnabled = defaults.isSchemaAdvisorEnabled; + this.isSlowOperationThresholdingEnabled = defaults.isSlowOperationThresholdingEnabled; this.limits = defaults.limits; this.name = defaults.name; this.orgId = defaults.orgId; @@ -347,6 +369,14 @@ public Builder isSchemaAdvisorEnabled(Boolean isSchemaAdvisorEnabled) { return this; } @CustomType.Setter + public Builder isSlowOperationThresholdingEnabled(Boolean isSlowOperationThresholdingEnabled) { + if (isSlowOperationThresholdingEnabled == null) { + throw new MissingRequiredPropertyException("GetProjectResult", "isSlowOperationThresholdingEnabled"); + } + this.isSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; + return this; + } + @CustomType.Setter public Builder limits(List limits) { if (limits == null) { throw new MissingRequiredPropertyException("GetProjectResult", "limits"); @@ -416,6 +446,7 @@ public GetProjectResult build() { _resultValue.isPerformanceAdvisorEnabled = isPerformanceAdvisorEnabled; _resultValue.isRealtimePerformancePanelEnabled = isRealtimePerformancePanelEnabled; _resultValue.isSchemaAdvisorEnabled = isSchemaAdvisorEnabled; + _resultValue.isSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; _resultValue.limits = limits; _resultValue.name = name; _resultValue.orgId = orgId; diff --git a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectsResult.java b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectsResult.java index 8a219c95..a4af5a53 100644 --- a/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectsResult.java +++ b/sdk/java/src/main/java/com/pulumi/mongodbatlas/outputs/GetProjectsResult.java @@ -71,6 +71,15 @@ public final class GetProjectsResult { * */ private Boolean isSchemaAdvisorEnabled; + /** + * @return Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + private Boolean isSlowOperationThresholdingEnabled; /** * @return The limits for the specified project. See Limits. * @@ -174,6 +183,17 @@ public Boolean isRealtimePerformancePanelEnabled() { public Boolean isSchemaAdvisorEnabled() { return this.isSchemaAdvisorEnabled; } + /** + * @return Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated + * This parameter is deprecated and will be removed in version 1.24.0. + * + */ + @Deprecated /* This parameter is deprecated and will be removed in version 1.24.0. */ + public Boolean isSlowOperationThresholdingEnabled() { + return this.isSlowOperationThresholdingEnabled; + } /** * @return The limits for the specified project. See Limits. * @@ -235,6 +255,7 @@ public static final class Builder { private Boolean isPerformanceAdvisorEnabled; private Boolean isRealtimePerformancePanelEnabled; private Boolean isSchemaAdvisorEnabled; + private Boolean isSlowOperationThresholdingEnabled; private List limits; private String name; private String orgId; @@ -255,6 +276,7 @@ public Builder(GetProjectsResult defaults) { this.isPerformanceAdvisorEnabled = defaults.isPerformanceAdvisorEnabled; this.isRealtimePerformancePanelEnabled = defaults.isRealtimePerformancePanelEnabled; this.isSchemaAdvisorEnabled = defaults.isSchemaAdvisorEnabled; + this.isSlowOperationThresholdingEnabled = defaults.isSlowOperationThresholdingEnabled; this.limits = defaults.limits; this.name = defaults.name; this.orgId = defaults.orgId; @@ -345,6 +367,14 @@ public Builder isSchemaAdvisorEnabled(Boolean isSchemaAdvisorEnabled) { return this; } @CustomType.Setter + public Builder isSlowOperationThresholdingEnabled(Boolean isSlowOperationThresholdingEnabled) { + if (isSlowOperationThresholdingEnabled == null) { + throw new MissingRequiredPropertyException("GetProjectsResult", "isSlowOperationThresholdingEnabled"); + } + this.isSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; + return this; + } + @CustomType.Setter public Builder limits(List limits) { if (limits == null) { throw new MissingRequiredPropertyException("GetProjectsResult", "limits"); @@ -418,6 +448,7 @@ public GetProjectsResult build() { _resultValue.isPerformanceAdvisorEnabled = isPerformanceAdvisorEnabled; _resultValue.isRealtimePerformancePanelEnabled = isRealtimePerformancePanelEnabled; _resultValue.isSchemaAdvisorEnabled = isSchemaAdvisorEnabled; + _resultValue.isSlowOperationThresholdingEnabled = isSlowOperationThresholdingEnabled; _resultValue.limits = limits; _resultValue.name = name; _resultValue.orgId = orgId; diff --git a/sdk/nodejs/advancedCluster.ts b/sdk/nodejs/advancedCluster.ts index 011f2b7d..c272efe2 100644 --- a/sdk/nodejs/advancedCluster.ts +++ b/sdk/nodejs/advancedCluster.ts @@ -7,24 +7,6 @@ import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * ## # Resource: mongodbatlas.AdvancedCluster - * - * `mongodbatlas.AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID. - * - * More information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations) - * - * > **IMPORTANT:** The primary difference between `mongodbatlas.Cluster` and `mongodbatlas.AdvancedCluster` is that `mongodbatlas.AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `mongodbatlas.AdvancedCluster` resource. - * - * > **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy). - * - * > **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information. - * - * > **NOTE:** To enable Cluster Extended Storage Sizes use the `isExtendedStorageSizesEnabled` parameter in the mongodbatlas.Project resource. - * - * > **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/). - * - * > **NOTE:** Groups and projects are synonymous terms. You might find groupId in the official documentation. - * * ## Example Usage * * ### Example single provider and single region @@ -408,6 +390,14 @@ export class AdvancedCluster extends pulumi.CustomResource { * - `GEOSHARDED` Global Cluster */ public readonly clusterType!: pulumi.Output; + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + public readonly configServerManagementMode!: pulumi.Output; + /** + * Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + public /*out*/ readonly configServerType!: pulumi.Output; /** * Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. */ @@ -429,8 +419,6 @@ export class AdvancedCluster extends pulumi.CustomResource { public readonly globalClusterSelfManagedSharding!: pulumi.Output; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ public readonly labels!: pulumi.Output; /** @@ -455,7 +443,7 @@ export class AdvancedCluster extends pulumi.CustomResource { */ public readonly projectId!: pulumi.Output; /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. */ public readonly redactClientLogData!: pulumi.Output; /** @@ -519,6 +507,8 @@ export class AdvancedCluster extends pulumi.CustomResource { resourceInputs["biConnectorConfig"] = state ? state.biConnectorConfig : undefined; resourceInputs["clusterId"] = state ? state.clusterId : undefined; resourceInputs["clusterType"] = state ? state.clusterType : undefined; + resourceInputs["configServerManagementMode"] = state ? state.configServerManagementMode : undefined; + resourceInputs["configServerType"] = state ? state.configServerType : undefined; resourceInputs["connectionStrings"] = state ? state.connectionStrings : undefined; resourceInputs["createDate"] = state ? state.createDate : undefined; resourceInputs["diskSizeGb"] = state ? state.diskSizeGb : undefined; @@ -556,6 +546,7 @@ export class AdvancedCluster extends pulumi.CustomResource { resourceInputs["backupEnabled"] = args ? args.backupEnabled : undefined; resourceInputs["biConnectorConfig"] = args ? args.biConnectorConfig : undefined; resourceInputs["clusterType"] = args ? args.clusterType : undefined; + resourceInputs["configServerManagementMode"] = args ? args.configServerManagementMode : undefined; resourceInputs["diskSizeGb"] = args ? args.diskSizeGb : undefined; resourceInputs["encryptionAtRestProvider"] = args ? args.encryptionAtRestProvider : undefined; resourceInputs["globalClusterSelfManagedSharding"] = args ? args.globalClusterSelfManagedSharding : undefined; @@ -574,6 +565,7 @@ export class AdvancedCluster extends pulumi.CustomResource { resourceInputs["terminationProtectionEnabled"] = args ? args.terminationProtectionEnabled : undefined; resourceInputs["versionReleaseSystem"] = args ? args.versionReleaseSystem : undefined; resourceInputs["clusterId"] = undefined /*out*/; + resourceInputs["configServerType"] = undefined /*out*/; resourceInputs["connectionStrings"] = undefined /*out*/; resourceInputs["createDate"] = undefined /*out*/; resourceInputs["mongoDbVersion"] = undefined /*out*/; @@ -621,6 +613,14 @@ export interface AdvancedClusterState { * - `GEOSHARDED` Global Cluster */ clusterType?: pulumi.Input; + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + configServerManagementMode?: pulumi.Input; + /** + * Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + configServerType?: pulumi.Input; /** * Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. */ @@ -642,8 +642,6 @@ export interface AdvancedClusterState { globalClusterSelfManagedSharding?: pulumi.Input; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ labels?: pulumi.Input[]>; /** @@ -668,7 +666,7 @@ export interface AdvancedClusterState { */ projectId?: pulumi.Input; /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. */ redactClientLogData?: pulumi.Input; /** @@ -747,6 +745,10 @@ export interface AdvancedClusterArgs { * - `GEOSHARDED` Global Cluster */ clusterType: pulumi.Input; + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + configServerManagementMode?: pulumi.Input; /** * Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. * @@ -763,8 +765,6 @@ export interface AdvancedClusterArgs { globalClusterSelfManagedSharding?: pulumi.Input; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ labels?: pulumi.Input[]>; /** @@ -785,7 +785,7 @@ export interface AdvancedClusterArgs { */ projectId: pulumi.Input; /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. */ redactClientLogData?: pulumi.Input; /** diff --git a/sdk/nodejs/cluster.ts b/sdk/nodejs/cluster.ts index 0688a24d..b58b82b6 100644 --- a/sdk/nodejs/cluster.ts +++ b/sdk/nodejs/cluster.ts @@ -327,8 +327,6 @@ export class Cluster extends pulumi.CustomResource { public readonly encryptionAtRestProvider!: pulumi.Output; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ public readonly labels!: pulumi.Output; /** @@ -418,7 +416,7 @@ export class Cluster extends pulumi.CustomResource { */ public readonly providerVolumeType!: pulumi.Output; /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. */ public readonly redactClientLogData!: pulumi.Output; /** @@ -671,8 +669,6 @@ export interface ClusterState { encryptionAtRestProvider?: pulumi.Input; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ labels?: pulumi.Input[]>; /** @@ -762,7 +758,7 @@ export interface ClusterState { */ providerVolumeType?: pulumi.Input; /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. */ redactClientLogData?: pulumi.Input; /** @@ -882,8 +878,6 @@ export interface ClusterArgs { encryptionAtRestProvider?: pulumi.Input; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ labels?: pulumi.Input[]>; /** @@ -956,7 +950,7 @@ export interface ClusterArgs { */ providerVolumeType?: pulumi.Input; /** - * Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. + * Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `mongodbatlas.AdvancedCluster`. */ redactClientLogData?: pulumi.Input; /** diff --git a/sdk/nodejs/getAdvancedCluster.ts b/sdk/nodejs/getAdvancedCluster.ts index 02e9292b..bb8523e0 100644 --- a/sdk/nodejs/getAdvancedCluster.ts +++ b/sdk/nodejs/getAdvancedCluster.ts @@ -139,6 +139,14 @@ export interface GetAdvancedClusterResult { * Type of the cluster that you want to create. */ readonly clusterType: string; + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + readonly configServerManagementMode: string; + /** + * Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + readonly configServerType: string; /** * Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. */ @@ -164,8 +172,6 @@ export interface GetAdvancedClusterResult { readonly id: string; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ readonly labels: outputs.GetAdvancedClusterLabel[]; /** @@ -187,7 +193,7 @@ export interface GetAdvancedClusterResult { readonly pitEnabled: boolean; readonly projectId: string; /** - * (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. */ readonly redactClientLogData: boolean; /** diff --git a/sdk/nodejs/getCluster.ts b/sdk/nodejs/getCluster.ts index ef94cc08..5a1dcbd4 100644 --- a/sdk/nodejs/getCluster.ts +++ b/sdk/nodejs/getCluster.ts @@ -128,8 +128,6 @@ export interface GetClusterResult { readonly id: string; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ readonly labels: outputs.GetClusterLabel[]; /** @@ -209,7 +207,7 @@ export interface GetClusterResult { */ readonly providerVolumeType: string; /** - * (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. */ readonly redactClientLogData: boolean; /** diff --git a/sdk/nodejs/getProject.ts b/sdk/nodejs/getProject.ts index 3289e15a..cc47f2aa 100644 --- a/sdk/nodejs/getProject.ts +++ b/sdk/nodejs/getProject.ts @@ -146,6 +146,12 @@ export interface GetProjectResult { * Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). */ readonly isSchemaAdvisorEnabled: boolean; + /** + * (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated This parameter is deprecated and will be removed in version 1.24.0. + */ + readonly isSlowOperationThresholdingEnabled: boolean; /** * The limits for the specified project. See Limits. */ diff --git a/sdk/nodejs/project.ts b/sdk/nodejs/project.ts index 36b10947..d999d65e 100644 --- a/sdk/nodejs/project.ts +++ b/sdk/nodejs/project.ts @@ -53,6 +53,7 @@ import * as utilities from "./utilities"; * isPerformanceAdvisorEnabled: true, * isRealtimePerformancePanelEnabled: true, * isSchemaAdvisorEnabled: true, + * isSlowOperationThresholdingEnabled: true, * }); * ``` * @@ -131,6 +132,12 @@ export class Project extends pulumi.CustomResource { * Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. */ public readonly isSchemaAdvisorEnabled!: pulumi.Output; + /** + * (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated This parameter is deprecated and will be removed in version 1.24.0. + */ + public readonly isSlowOperationThresholdingEnabled!: pulumi.Output; public readonly limits!: pulumi.Output; /** * The name of the project you want to create. @@ -180,6 +187,7 @@ export class Project extends pulumi.CustomResource { resourceInputs["isPerformanceAdvisorEnabled"] = state ? state.isPerformanceAdvisorEnabled : undefined; resourceInputs["isRealtimePerformancePanelEnabled"] = state ? state.isRealtimePerformancePanelEnabled : undefined; resourceInputs["isSchemaAdvisorEnabled"] = state ? state.isSchemaAdvisorEnabled : undefined; + resourceInputs["isSlowOperationThresholdingEnabled"] = state ? state.isSlowOperationThresholdingEnabled : undefined; resourceInputs["limits"] = state ? state.limits : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["orgId"] = state ? state.orgId : undefined; @@ -199,6 +207,7 @@ export class Project extends pulumi.CustomResource { resourceInputs["isPerformanceAdvisorEnabled"] = args ? args.isPerformanceAdvisorEnabled : undefined; resourceInputs["isRealtimePerformancePanelEnabled"] = args ? args.isRealtimePerformancePanelEnabled : undefined; resourceInputs["isSchemaAdvisorEnabled"] = args ? args.isSchemaAdvisorEnabled : undefined; + resourceInputs["isSlowOperationThresholdingEnabled"] = args ? args.isSlowOperationThresholdingEnabled : undefined; resourceInputs["limits"] = args ? args.limits : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["orgId"] = args ? args.orgId : undefined; @@ -258,6 +267,12 @@ export interface ProjectState { * Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. */ isSchemaAdvisorEnabled?: pulumi.Input; + /** + * (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated This parameter is deprecated and will be removed in version 1.24.0. + */ + isSlowOperationThresholdingEnabled?: pulumi.Input; limits?: pulumi.Input[]>; /** * The name of the project you want to create. @@ -314,6 +329,12 @@ export interface ProjectArgs { * Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. */ isSchemaAdvisorEnabled?: pulumi.Input; + /** + * (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated This parameter is deprecated and will be removed in version 1.24.0. + */ + isSlowOperationThresholdingEnabled?: pulumi.Input; limits?: pulumi.Input[]>; /** * The name of the project you want to create. diff --git a/sdk/nodejs/projectApiKey.ts b/sdk/nodejs/projectApiKey.ts index 2488150e..53acc4d5 100644 --- a/sdk/nodejs/projectApiKey.ts +++ b/sdk/nodejs/projectApiKey.ts @@ -91,6 +91,8 @@ export class ProjectApiKey extends pulumi.CustomResource { public /*out*/ readonly apiKeyId!: pulumi.Output; /** * Description of this Project API key. + * + * > **NOTE:** Project created by API Keys must belong to an existing organization. */ public readonly description!: pulumi.Output; public /*out*/ readonly privateKey!: pulumi.Output; @@ -146,6 +148,8 @@ export interface ProjectApiKeyState { apiKeyId?: pulumi.Input; /** * Description of this Project API key. + * + * > **NOTE:** Project created by API Keys must belong to an existing organization. */ description?: pulumi.Input; privateKey?: pulumi.Input; @@ -159,6 +163,8 @@ export interface ProjectApiKeyState { export interface ProjectApiKeyArgs { /** * Description of this Project API key. + * + * > **NOTE:** Project created by API Keys must belong to an existing organization. */ description: pulumi.Input; projectAssignments: pulumi.Input[]>; diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index e01035e7..b33f7885 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -133,7 +133,7 @@ export interface AdvancedClusterConnectionStringPrivateEndpointEndpoint { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. */ providerName?: pulumi.Input; region?: pulumi.Input; @@ -154,8 +154,13 @@ export interface AdvancedClusterLabel { export interface AdvancedClusterReplicationSpec { containerId?: pulumi.Input<{[key: string]: pulumi.Input}>; + /** + * Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + */ externalId?: pulumi.Input; /** + * **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @deprecated This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown */ id?: pulumi.Input; @@ -214,7 +219,7 @@ export interface AdvancedClusterReplicationSpecRegionConfig { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. */ providerName: pulumi.Input; /** @@ -242,7 +247,7 @@ export interface AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling */ computeScaleDownEnabled?: pulumi.Input; /** - * Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. */ diskGbEnabled?: pulumi.Input; } @@ -1070,7 +1075,7 @@ export interface ClusterOutageSimulationOutageFilter { export interface ClusterReplicationSpec { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id?: pulumi.Input; /** @@ -1135,7 +1140,7 @@ export interface ClusterSnapshotBackupPolicy { export interface ClusterSnapshotBackupPolicyPolicy { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id?: pulumi.Input; policyItems?: pulumi.Input[]>; @@ -1145,7 +1150,7 @@ export interface ClusterSnapshotBackupPolicyPolicyPolicyItem { frequencyInterval?: pulumi.Input; frequencyType?: pulumi.Input; /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id?: pulumi.Input; retentionUnit?: pulumi.Input; diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 4bb63e52..f756f230 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -133,7 +133,7 @@ export interface AdvancedClusterConnectionStringPrivateEndpointEndpoint { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. */ providerName: string; region: string; @@ -154,8 +154,13 @@ export interface AdvancedClusterLabel { export interface AdvancedClusterReplicationSpec { containerId: {[key: string]: string}; + /** + * Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + */ externalId: string; /** + * **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + * * @deprecated This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown */ id: string; @@ -214,7 +219,7 @@ export interface AdvancedClusterReplicationSpecRegionConfig { * - `AWS` - Amazon AWS * - `GCP` - Google Cloud Platform * - `AZURE` - Microsoft Azure - * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + * - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. */ providerName: string; /** @@ -242,7 +247,7 @@ export interface AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScaling */ computeScaleDownEnabled: boolean; /** - * Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + * Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. */ diskGbEnabled: boolean; } @@ -1070,7 +1075,7 @@ export interface ClusterOutageSimulationOutageFilter { export interface ClusterReplicationSpec { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; /** @@ -1135,7 +1140,7 @@ export interface ClusterSnapshotBackupPolicy { export interface ClusterSnapshotBackupPolicyPolicy { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; policyItems: outputs.ClusterSnapshotBackupPolicyPolicyPolicyItem[]; @@ -1145,7 +1150,7 @@ export interface ClusterSnapshotBackupPolicyPolicyPolicyItem { frequencyInterval: number; frequencyType: string; /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; retentionUnit: string; @@ -1758,6 +1763,9 @@ export interface GetAdvancedClusterReplicationSpec { * A key-value map of the Network Peering Container ID(s) for the configuration specified in `regionConfigs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. */ containerId: {[key: string]: string}; + /** + * Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + */ externalId: string; /** * @deprecated This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown @@ -1970,6 +1978,14 @@ export interface GetAdvancedClustersResult { * Type of the cluster that you want to create. */ clusterType: string; + /** + * Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + configServerManagementMode: string; + /** + * Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + */ + configServerType: string; /** * Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. */ @@ -1991,8 +2007,6 @@ export interface GetAdvancedClustersResult { globalClusterSelfManagedSharding: boolean; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ labels: outputs.GetAdvancedClustersResultLabel[]; /** @@ -2013,7 +2027,7 @@ export interface GetAdvancedClustersResult { */ pitEnabled: boolean; /** - * (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. */ redactClientLogData: boolean; /** @@ -2176,6 +2190,9 @@ export interface GetAdvancedClustersResultReplicationSpec { * A key-value map of the Network Peering Container ID(s) for the configuration specified in `regionConfigs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. */ containerId: {[key: string]: string}; + /** + * Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `numShards` greater than 1) this value is not populated. + */ externalId: string; /** * @deprecated This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown @@ -3648,7 +3665,7 @@ export interface GetClusterOutageSimulationOutageFilter { export interface GetClusterReplicationSpec { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; /** @@ -3701,7 +3718,7 @@ export interface GetClusterSnapshotBackupPolicy { export interface GetClusterSnapshotBackupPolicyPolicy { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; policyItems: outputs.GetClusterSnapshotBackupPolicyPolicyPolicyItem[]; @@ -3711,7 +3728,7 @@ export interface GetClusterSnapshotBackupPolicyPolicyPolicyItem { frequencyInterval: number; frequencyType: string; /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; retentionUnit: string; @@ -3780,8 +3797,6 @@ export interface GetClustersResult { encryptionAtRestProvider: string; /** * Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. - * - * @deprecated This parameter is deprecated and will be removed in the future. Please transition to tags */ labels: outputs.GetClustersResultLabel[]; /** @@ -3862,7 +3877,7 @@ export interface GetClustersResult { */ providerVolumeType: string; /** - * (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + * (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. */ redactClientLogData: boolean; /** @@ -4028,7 +4043,7 @@ export interface GetClustersResultLabel { export interface GetClustersResultReplicationSpec { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; /** @@ -4081,7 +4096,7 @@ export interface GetClustersResultSnapshotBackupPolicy { export interface GetClustersResultSnapshotBackupPolicyPolicy { /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; policyItems: outputs.GetClustersResultSnapshotBackupPolicyPolicyPolicyItem[]; @@ -4091,7 +4106,7 @@ export interface GetClustersResultSnapshotBackupPolicyPolicyPolicyItem { frequencyInterval: number; frequencyType: string; /** - * Unique identifer of the replication document for a zone in a Global Cluster. + * Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. */ id: string; retentionUnit: string; @@ -6133,6 +6148,12 @@ export interface GetProjectsResult { * Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). */ isSchemaAdvisorEnabled: boolean; + /** + * Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + * + * @deprecated This parameter is deprecated and will be removed in version 1.24.0. + */ + isSlowOperationThresholdingEnabled: boolean; /** * The limits for the specified project. See Limits. */ diff --git a/sdk/python/pulumi_mongodbatlas/_inputs.py b/sdk/python/pulumi_mongodbatlas/_inputs.py index c6cc28c5..e657fb1c 100644 --- a/sdk/python/pulumi_mongodbatlas/_inputs.py +++ b/sdk/python/pulumi_mongodbatlas/_inputs.py @@ -843,7 +843,7 @@ class AdvancedClusterConnectionStringPrivateEndpointEndpointArgsDict(TypedDict): - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ region: NotRequired[pulumi.Input[str]] elif False: @@ -862,7 +862,7 @@ def __init__(__self__, *, - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ if endpoint_id is not None: pulumi.set(__self__, "endpoint_id", endpoint_id) @@ -890,7 +890,7 @@ def provider_name(self) -> Optional[pulumi.Input[str]]: - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ return pulumi.get(self, "provider_name") @@ -974,7 +974,13 @@ class AdvancedClusterReplicationSpecArgsDict(TypedDict): """ container_id: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] external_id: NotRequired[pulumi.Input[str]] + """ + Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + """ id: NotRequired[pulumi.Input[str]] + """ + **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + """ num_shards: NotRequired[pulumi.Input[int]] """ Provide this value if you set a `cluster_type` of SHARDED or GEOSHARDED. Omit this value if you selected a `cluster_type` of REPLICASET. This API resource accepts 1 through 50, inclusive. This parameter defaults to 1. If you specify a `num_shards` value of 1 and a `cluster_type` of SHARDED, Atlas deploys a single-shard [sharded cluster](https://docs.atlas.mongodb.com/reference/glossary/#std-term-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. @@ -1003,6 +1009,8 @@ def __init__(__self__, *, zone_name: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[Sequence[pulumi.Input['AdvancedClusterReplicationSpecRegionConfigArgs']]] region_configs: Configuration for the hardware specifications for nodes set for a given regionEach `region_configs` object describes the region's priority in elections and the number and type of MongoDB nodes that Atlas deploys to the region. Each `region_configs` object must have either an `analytics_specs` object, `electable_specs` object, or `read_only_specs` object. See below + :param pulumi.Input[str] external_id: Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + :param pulumi.Input[str] id: **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. :param pulumi.Input[int] num_shards: Provide this value if you set a `cluster_type` of SHARDED or GEOSHARDED. Omit this value if you selected a `cluster_type` of REPLICASET. This API resource accepts 1 through 50, inclusive. This parameter defaults to 1. If you specify a `num_shards` value of 1 and a `cluster_type` of SHARDED, Atlas deploys a single-shard [sharded cluster](https://docs.atlas.mongodb.com/reference/glossary/#std-term-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. If you are upgrading a replica set to a sharded cluster, you cannot increase the number of shards in the same update request. You should wait until after the cluster has completed upgrading to sharded and you have reconnected all application clients to the MongoDB router before adding additional shards. Otherwise, your data might become inconsistent once MongoDB Cloud begins distributing data across shards. To learn more, see [Convert a replica set to a sharded cluster documentation](https://www.mongodb.com/docs/atlas/scale-cluster/#convert-a-replica-set-to-a-sharded-cluster) and [Convert a replica set to a sharded cluster tutorial](https://www.mongodb.com/docs/upcoming/tutorial/convert-replica-set-to-replicated-shard-cluster). **(DEPRECATED)** To learn more, see the 1.18.0 Upgrade Guide. :param pulumi.Input[str] zone_id: Unique 24-hexadecimal digit string that identifies the zone in a Global Cluster. If clusterType is GEOSHARDED, this value indicates the zone that the given shard belongs to and can be used to configure Global Cluster backup policies. @@ -1052,6 +1060,9 @@ def container_id(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[st @property @pulumi.getter(name="externalId") def external_id(self) -> Optional[pulumi.Input[str]]: + """ + Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + """ return pulumi.get(self, "external_id") @external_id.setter @@ -1062,6 +1073,9 @@ def external_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter @_utilities.deprecated("""This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown""") def id(self) -> Optional[pulumi.Input[str]]: + """ + **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + """ return pulumi.get(self, "id") @id.setter @@ -1123,7 +1137,7 @@ class AdvancedClusterReplicationSpecRegionConfigArgsDict(TypedDict): - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ region_name: pulumi.Input[str] """ @@ -1178,7 +1192,7 @@ def __init__(__self__, *, - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. :param pulumi.Input[str] region_name: 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/). :param pulumi.Input['AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs'] analytics_auto_scaling: Configuration for the Collection of settings that configures analytics-auto-scaling information for the cluster. The values for the `analytics_auto_scaling` parameter must be the same for all `region_configs` in all `replication_specs`. See below :param pulumi.Input['AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs'] analytics_specs: Hardware specifications for [analytics nodes](https://docs.atlas.mongodb.com/reference/faq/deployment/#std-label-analytics-nodes-overview) needed in the region. Analytics nodes handle analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only and can never become the [primary](https://docs.atlas.mongodb.com/reference/glossary/#std-term-primary). If you don't specify this parameter, no analytics nodes deploy to this region. See below @@ -1227,7 +1241,7 @@ def provider_name(self) -> pulumi.Input[str]: - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ return pulumi.get(self, "provider_name") @@ -1337,7 +1351,7 @@ class AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgsDict(Typ """ disk_gb_enabled: NotRequired[pulumi.Input[bool]] """ - Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. """ elif False: AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgsDict: TypeAlias = Mapping[str, Any] @@ -1354,7 +1368,7 @@ def __init__(__self__, *, :param pulumi.Input[str] compute_max_instance_size: Maximum instance size to which your cluster can automatically scale (such as M40). Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_enabled` is true. :param pulumi.Input[str] compute_min_instance_size: Minimum instance size to which your cluster can automatically scale (such as M10). Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_scale_down_enabled` is true. :param pulumi.Input[bool] compute_scale_down_enabled: Flag that indicates whether the instance size may scale down. Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_enabled` : true. If you enable this option, specify a value for `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_min_instance_size`. - :param pulumi.Input[bool] disk_gb_enabled: Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + :param pulumi.Input[bool] disk_gb_enabled: Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. """ if compute_enabled is not None: pulumi.set(__self__, "compute_enabled", compute_enabled) @@ -1416,7 +1430,7 @@ def compute_scale_down_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="diskGbEnabled") def disk_gb_enabled(self) -> Optional[pulumi.Input[bool]]: """ - Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. """ return pulumi.get(self, "disk_gb_enabled") @@ -5434,7 +5448,7 @@ class ClusterReplicationSpecArgsDict(TypedDict): """ id: NotRequired[pulumi.Input[str]] """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ regions_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['ClusterReplicationSpecRegionsConfigArgsDict']]]] """ @@ -5459,7 +5473,7 @@ def __init__(__self__, *, zone_name: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[int] num_shards: Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards. - :param pulumi.Input[str] id: Unique identifer of the replication document for a zone in a Global Cluster. + :param pulumi.Input[str] id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. :param pulumi.Input[Sequence[pulumi.Input['ClusterReplicationSpecRegionsConfigArgs']]] regions_configs: Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details. :param pulumi.Input[str] zone_name: Name for the zone in a Global Cluster. @@ -5490,7 +5504,7 @@ def num_shards(self, value: pulumi.Input[int]): @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -5782,7 +5796,7 @@ def update_snapshots(self, value: Optional[pulumi.Input[bool]]): class ClusterSnapshotBackupPolicyPolicyArgsDict(TypedDict): id: NotRequired[pulumi.Input[str]] """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ policy_items: NotRequired[pulumi.Input[Sequence[pulumi.Input['ClusterSnapshotBackupPolicyPolicyPolicyItemArgsDict']]]] elif False: @@ -5794,7 +5808,7 @@ def __init__(__self__, *, id: Optional[pulumi.Input[str]] = None, policy_items: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterSnapshotBackupPolicyPolicyPolicyItemArgs']]]] = None): """ - :param pulumi.Input[str] id: Unique identifer of the replication document for a zone in a Global Cluster. + :param pulumi.Input[str] id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ if id is not None: pulumi.set(__self__, "id", id) @@ -5805,7 +5819,7 @@ def __init__(__self__, *, @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -5829,7 +5843,7 @@ class ClusterSnapshotBackupPolicyPolicyPolicyItemArgsDict(TypedDict): frequency_type: NotRequired[pulumi.Input[str]] id: NotRequired[pulumi.Input[str]] """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ retention_unit: NotRequired[pulumi.Input[str]] retention_value: NotRequired[pulumi.Input[int]] @@ -5845,7 +5859,7 @@ def __init__(__self__, *, retention_unit: Optional[pulumi.Input[str]] = None, retention_value: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[str] id: Unique identifer of the replication document for a zone in a Global Cluster. + :param pulumi.Input[str] id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ if frequency_interval is not None: pulumi.set(__self__, "frequency_interval", frequency_interval) @@ -5880,7 +5894,7 @@ def frequency_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def id(self) -> Optional[pulumi.Input[str]]: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") diff --git a/sdk/python/pulumi_mongodbatlas/advanced_cluster.py b/sdk/python/pulumi_mongodbatlas/advanced_cluster.py index dda31d23..f184ae5f 100644 --- a/sdk/python/pulumi_mongodbatlas/advanced_cluster.py +++ b/sdk/python/pulumi_mongodbatlas/advanced_cluster.py @@ -28,6 +28,7 @@ def __init__(__self__, *, advanced_configuration: Optional[pulumi.Input['AdvancedClusterAdvancedConfigurationArgs']] = None, backup_enabled: Optional[pulumi.Input[bool]] = None, bi_connector_config: Optional[pulumi.Input['AdvancedClusterBiConnectorConfigArgs']] = None, + config_server_management_mode: Optional[pulumi.Input[str]] = None, disk_size_gb: Optional[pulumi.Input[float]] = None, encryption_at_rest_provider: Optional[pulumi.Input[str]] = None, global_cluster_self_managed_sharding: Optional[pulumi.Input[bool]] = None, @@ -63,6 +64,7 @@ def __init__(__self__, *, This parameter defaults to false. :param pulumi.Input['AdvancedClusterBiConnectorConfigArgs'] bi_connector_config: Configuration settings applied to BI Connector for Atlas on this cluster. The MongoDB Connector for Business Intelligence for Atlas (BI Connector) is only available for M10 and larger clusters. The BI Connector is a powerful tool which provides users SQL-based access to their MongoDB databases. As a result, the BI Connector performs operations which may be CPU and memory intensive. Given the limited hardware resources on M10 and M20 cluster tiers, you may experience performance degradation of the cluster when enabling the BI Connector. If this occurs, upgrade to an M30 or larger cluster or disable the BI Connector. See below. + :param pulumi.Input[str] config_server_management_mode: Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). :param pulumi.Input[float] disk_size_gb: Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. :param pulumi.Input[str] encryption_at_rest_provider: Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-kms-encryption/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For Documentation, see [AWS](https://docs.atlas.mongodb.com/security-aws-kms/), [GCP](https://docs.atlas.mongodb.com/security-kms-encryption/) and [Azure](https://docs.atlas.mongodb.com/security-azure-kms/#std-label-security-azure-kms). Requirements are if `replication_specs.#.region_configs.#.Specs.instance_size` is M10 or greater and `backup_enabled` is false or omitted. :param pulumi.Input[bool] global_cluster_self_managed_sharding: Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). @@ -70,7 +72,7 @@ def __init__(__self__, *, :param pulumi.Input[str] mongo_db_major_version: Version of the cluster to deploy. Atlas supports all the MongoDB versions that have **not** reached [End of Live](https://www.mongodb.com/legal/support-policy/lifecycles) for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see [documentation](https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-). Atlas always deploys the cluster with the latest stable release of the specified version. If you set a value to this parameter and set `version_release_system` `CONTINUOUS`, the resource returns an error. Either clear this parameter or set `version_release_system`: `LTS`. :param pulumi.Input[str] name: Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. **WARNING** Changing the name will result in destruction of the existing cluster and the creation of a new cluster. :param pulumi.Input[bool] pit_enabled: Flag that indicates if the cluster uses Continuous Cloud Backup. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. :param pulumi.Input[str] replica_set_scaling_strategy: Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) :param pulumi.Input[bool] retain_backups_enabled: Flag that indicates whether to retain backup snapshots for the deleted dedicated cluster :param pulumi.Input[str] root_cert_type: Certificate Authority that MongoDB Atlas clusters use. You can specify ISRGROOTX1 (for ISRG Root X1). @@ -91,6 +93,8 @@ def __init__(__self__, *, pulumi.set(__self__, "backup_enabled", backup_enabled) if bi_connector_config is not None: pulumi.set(__self__, "bi_connector_config", bi_connector_config) + if config_server_management_mode is not None: + pulumi.set(__self__, "config_server_management_mode", config_server_management_mode) if disk_size_gb is not None: warnings.warn("""This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown""", DeprecationWarning) pulumi.log.warn("""disk_size_gb is deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown""") @@ -100,9 +104,6 @@ def __init__(__self__, *, pulumi.set(__self__, "encryption_at_rest_provider", encryption_at_rest_provider) if global_cluster_self_managed_sharding is not None: pulumi.set(__self__, "global_cluster_self_managed_sharding", global_cluster_self_managed_sharding) - if labels is not None: - warnings.warn("""This parameter is deprecated and will be removed in the future. Please transition to tags""", DeprecationWarning) - pulumi.log.warn("""labels is deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags""") if labels is not None: pulumi.set(__self__, "labels", labels) if mongo_db_major_version is not None: @@ -221,6 +222,18 @@ def bi_connector_config(self) -> Optional[pulumi.Input['AdvancedClusterBiConnect def bi_connector_config(self, value: Optional[pulumi.Input['AdvancedClusterBiConnectorConfigArgs']]): pulumi.set(self, "bi_connector_config", value) + @property + @pulumi.getter(name="configServerManagementMode") + def config_server_management_mode(self) -> Optional[pulumi.Input[str]]: + """ + Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_management_mode") + + @config_server_management_mode.setter + def config_server_management_mode(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "config_server_management_mode", value) + @property @pulumi.getter(name="diskSizeGb") @_utilities.deprecated("""This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown""") @@ -260,7 +273,6 @@ def global_cluster_self_managed_sharding(self, value: Optional[pulumi.Input[bool @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AdvancedClusterLabelArgs']]]]: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -320,7 +332,7 @@ def pit_enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> Optional[pulumi.Input[bool]]: """ - Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. """ return pulumi.get(self, "redact_client_log_data") @@ -412,6 +424,8 @@ def __init__(__self__, *, bi_connector_config: Optional[pulumi.Input['AdvancedClusterBiConnectorConfigArgs']] = None, cluster_id: Optional[pulumi.Input[str]] = None, cluster_type: Optional[pulumi.Input[str]] = None, + config_server_management_mode: Optional[pulumi.Input[str]] = None, + config_server_type: Optional[pulumi.Input[str]] = None, connection_strings: Optional[pulumi.Input[Sequence[pulumi.Input['AdvancedClusterConnectionStringArgs']]]] = None, create_date: Optional[pulumi.Input[str]] = None, disk_size_gb: Optional[pulumi.Input[float]] = None, @@ -452,6 +466,8 @@ def __init__(__self__, *, - `REPLICASET` Replica set - `SHARDED` Sharded cluster - `GEOSHARDED` Global Cluster + :param pulumi.Input[str] config_server_management_mode: Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + :param pulumi.Input[str] config_server_type: Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). :param pulumi.Input[Sequence[pulumi.Input['AdvancedClusterConnectionStringArgs']]] connection_strings: Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. :param pulumi.Input[float] disk_size_gb: Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. :param pulumi.Input[str] encryption_at_rest_provider: Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-kms-encryption/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For Documentation, see [AWS](https://docs.atlas.mongodb.com/security-aws-kms/), [GCP](https://docs.atlas.mongodb.com/security-kms-encryption/) and [Azure](https://docs.atlas.mongodb.com/security-azure-kms/#std-label-security-azure-kms). Requirements are if `replication_specs.#.region_configs.#.Specs.instance_size` is M10 or greater and `backup_enabled` is false or omitted. @@ -462,7 +478,7 @@ def __init__(__self__, *, :param pulumi.Input[str] name: Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. **WARNING** Changing the name will result in destruction of the existing cluster and the creation of a new cluster. :param pulumi.Input[bool] pit_enabled: Flag that indicates if the cluster uses Continuous Cloud Backup. :param pulumi.Input[str] project_id: Unique ID for the project to create the database user. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. :param pulumi.Input[str] replica_set_scaling_strategy: Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) :param pulumi.Input[Sequence[pulumi.Input['AdvancedClusterReplicationSpecArgs']]] replication_specs: List of settings that configure your cluster regions. This attribute has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations. If for each replication_spec `num_shards` is configured with a value greater than 1 (using deprecated sharding configurations), then each object represents a zone with one or more shards. See below :param pulumi.Input[bool] retain_backups_enabled: Flag that indicates whether to retain backup snapshots for the deleted dedicated cluster @@ -493,6 +509,10 @@ def __init__(__self__, *, pulumi.set(__self__, "cluster_id", cluster_id) if cluster_type is not None: pulumi.set(__self__, "cluster_type", cluster_type) + if config_server_management_mode is not None: + pulumi.set(__self__, "config_server_management_mode", config_server_management_mode) + if config_server_type is not None: + pulumi.set(__self__, "config_server_type", config_server_type) if connection_strings is not None: pulumi.set(__self__, "connection_strings", connection_strings) if create_date is not None: @@ -506,9 +526,6 @@ def __init__(__self__, *, pulumi.set(__self__, "encryption_at_rest_provider", encryption_at_rest_provider) if global_cluster_self_managed_sharding is not None: pulumi.set(__self__, "global_cluster_self_managed_sharding", global_cluster_self_managed_sharding) - if labels is not None: - warnings.warn("""This parameter is deprecated and will be removed in the future. Please transition to tags""", DeprecationWarning) - pulumi.log.warn("""labels is deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags""") if labels is not None: pulumi.set(__self__, "labels", labels) if mongo_db_major_version is not None: @@ -623,6 +640,30 @@ def cluster_type(self) -> Optional[pulumi.Input[str]]: def cluster_type(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "cluster_type", value) + @property + @pulumi.getter(name="configServerManagementMode") + def config_server_management_mode(self) -> Optional[pulumi.Input[str]]: + """ + Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_management_mode") + + @config_server_management_mode.setter + def config_server_management_mode(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "config_server_management_mode", value) + + @property + @pulumi.getter(name="configServerType") + def config_server_type(self) -> Optional[pulumi.Input[str]]: + """ + Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_type") + + @config_server_type.setter + def config_server_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "config_server_type", value) + @property @pulumi.getter(name="connectionStrings") def connection_strings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AdvancedClusterConnectionStringArgs']]]]: @@ -683,7 +724,6 @@ def global_cluster_self_managed_sharding(self, value: Optional[pulumi.Input[bool @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AdvancedClusterLabelArgs']]]]: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -767,7 +807,7 @@ def project_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> Optional[pulumi.Input[bool]]: """ - Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. """ return pulumi.get(self, "redact_client_log_data") @@ -891,6 +931,7 @@ def __init__(__self__, backup_enabled: Optional[pulumi.Input[bool]] = None, bi_connector_config: Optional[pulumi.Input[Union['AdvancedClusterBiConnectorConfigArgs', 'AdvancedClusterBiConnectorConfigArgsDict']]] = None, cluster_type: Optional[pulumi.Input[str]] = None, + config_server_management_mode: Optional[pulumi.Input[str]] = None, disk_size_gb: Optional[pulumi.Input[float]] = None, encryption_at_rest_provider: Optional[pulumi.Input[str]] = None, global_cluster_self_managed_sharding: Optional[pulumi.Input[bool]] = None, @@ -910,24 +951,6 @@ def __init__(__self__, version_release_system: Optional[pulumi.Input[str]] = None, __props__=None): """ - ## # Resource: AdvancedCluster - - `AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID. - - More information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations) - - > **IMPORTANT:** The primary difference between `Cluster` and `AdvancedCluster` is that `AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `AdvancedCluster` resource. - - > **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy). - - > **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information. - - > **NOTE:** To enable Cluster Extended Storage Sizes use the `is_extended_storage_sizes_enabled` parameter in the Project resource. - - > **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/). - - > **NOTE:** Groups and projects are synonymous terms. You might find group_id in the official documentation. - ## Example Usage ### Example single provider and single region @@ -1262,6 +1285,7 @@ def __init__(__self__, - `REPLICASET` Replica set - `SHARDED` Sharded cluster - `GEOSHARDED` Global Cluster + :param pulumi.Input[str] config_server_management_mode: Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). :param pulumi.Input[float] disk_size_gb: Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. :param pulumi.Input[str] encryption_at_rest_provider: Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-kms-encryption/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For Documentation, see [AWS](https://docs.atlas.mongodb.com/security-aws-kms/), [GCP](https://docs.atlas.mongodb.com/security-kms-encryption/) and [Azure](https://docs.atlas.mongodb.com/security-azure-kms/#std-label-security-azure-kms). Requirements are if `replication_specs.#.region_configs.#.Specs.instance_size` is M10 or greater and `backup_enabled` is false or omitted. :param pulumi.Input[bool] global_cluster_self_managed_sharding: Flag that indicates if cluster uses Atlas-Managed Sharding (false, default) or Self-Managed Sharding (true). It can only be enabled for Global Clusters (`GEOSHARDED`). It cannot be changed once the cluster is created. Use this mode if you're an advanced user and the default configuration is too restrictive for your workload. If you select this option, you must manually configure the sharding strategy, more info [here](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster/#select-your-sharding-configuration). @@ -1270,7 +1294,7 @@ def __init__(__self__, :param pulumi.Input[str] name: Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. **WARNING** Changing the name will result in destruction of the existing cluster and the creation of a new cluster. :param pulumi.Input[bool] pit_enabled: Flag that indicates if the cluster uses Continuous Cloud Backup. :param pulumi.Input[str] project_id: Unique ID for the project to create the database user. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. :param pulumi.Input[str] replica_set_scaling_strategy: Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) :param pulumi.Input[Sequence[pulumi.Input[Union['AdvancedClusterReplicationSpecArgs', 'AdvancedClusterReplicationSpecArgsDict']]]] replication_specs: List of settings that configure your cluster regions. This attribute has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations. If for each replication_spec `num_shards` is configured with a value greater than 1 (using deprecated sharding configurations), then each object represents a zone with one or more shards. See below :param pulumi.Input[bool] retain_backups_enabled: Flag that indicates whether to retain backup snapshots for the deleted dedicated cluster @@ -1288,24 +1312,6 @@ def __init__(__self__, args: AdvancedClusterArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - ## # Resource: AdvancedCluster - - `AdvancedCluster` provides an Advanced Cluster resource. The resource lets you create, edit and delete advanced clusters. The resource requires your Project ID. - - More information on considerations for using advanced clusters please see [Considerations](https://docs.atlas.mongodb.com/reference/api/cluster-advanced/create-one-cluster-advanced/#considerations) - - > **IMPORTANT:** The primary difference between `Cluster` and `AdvancedCluster` is that `AdvancedCluster` supports multi-cloud clusters. We recommend new users start with the `AdvancedCluster` resource. - - > **NOTE:** If Backup Compliance Policy is enabled for the project for which this backup schedule is defined, you cannot modify the backup schedule for an individual cluster below the minimum requirements set in the Backup Compliance Policy. See [Backup Compliance Policy Prohibited Actions and Considerations](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/#configure-a-backup-compliance-policy). - - > **NOTE:** A network container is created for each provider/region combination on the advanced cluster. This can be referenced via a computed attribute for use with other resources. Refer to the `replication_specs.#.container_id` attribute in the Attributes Reference for more information. - - > **NOTE:** To enable Cluster Extended Storage Sizes use the `is_extended_storage_sizes_enabled` parameter in the Project resource. - - > **NOTE:** The Low-CPU instance clusters are prefixed with `R`, for example `R40`. For complete list of Low-CPU instance clusters see Cluster Configuration Options under each Cloud Provider (https://www.mongodb.com/docs/atlas/reference/cloud-providers/). - - > **NOTE:** Groups and projects are synonymous terms. You might find group_id in the official documentation. - ## Example Usage ### Example single provider and single region @@ -1642,6 +1648,7 @@ def _internal_init(__self__, backup_enabled: Optional[pulumi.Input[bool]] = None, bi_connector_config: Optional[pulumi.Input[Union['AdvancedClusterBiConnectorConfigArgs', 'AdvancedClusterBiConnectorConfigArgsDict']]] = None, cluster_type: Optional[pulumi.Input[str]] = None, + config_server_management_mode: Optional[pulumi.Input[str]] = None, disk_size_gb: Optional[pulumi.Input[float]] = None, encryption_at_rest_provider: Optional[pulumi.Input[str]] = None, global_cluster_self_managed_sharding: Optional[pulumi.Input[bool]] = None, @@ -1675,6 +1682,7 @@ def _internal_init(__self__, if cluster_type is None and not opts.urn: raise TypeError("Missing required property 'cluster_type'") __props__.__dict__["cluster_type"] = cluster_type + __props__.__dict__["config_server_management_mode"] = config_server_management_mode __props__.__dict__["disk_size_gb"] = disk_size_gb __props__.__dict__["encryption_at_rest_provider"] = encryption_at_rest_provider __props__.__dict__["global_cluster_self_managed_sharding"] = global_cluster_self_managed_sharding @@ -1697,6 +1705,7 @@ def _internal_init(__self__, __props__.__dict__["termination_protection_enabled"] = termination_protection_enabled __props__.__dict__["version_release_system"] = version_release_system __props__.__dict__["cluster_id"] = None + __props__.__dict__["config_server_type"] = None __props__.__dict__["connection_strings"] = None __props__.__dict__["create_date"] = None __props__.__dict__["mongo_db_version"] = None @@ -1717,6 +1726,8 @@ def get(resource_name: str, bi_connector_config: Optional[pulumi.Input[Union['AdvancedClusterBiConnectorConfigArgs', 'AdvancedClusterBiConnectorConfigArgsDict']]] = None, cluster_id: Optional[pulumi.Input[str]] = None, cluster_type: Optional[pulumi.Input[str]] = None, + config_server_management_mode: Optional[pulumi.Input[str]] = None, + config_server_type: Optional[pulumi.Input[str]] = None, connection_strings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['AdvancedClusterConnectionStringArgs', 'AdvancedClusterConnectionStringArgsDict']]]]] = None, create_date: Optional[pulumi.Input[str]] = None, disk_size_gb: Optional[pulumi.Input[float]] = None, @@ -1762,6 +1773,8 @@ def get(resource_name: str, - `REPLICASET` Replica set - `SHARDED` Sharded cluster - `GEOSHARDED` Global Cluster + :param pulumi.Input[str] config_server_management_mode: Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + :param pulumi.Input[str] config_server_type: Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). :param pulumi.Input[Sequence[pulumi.Input[Union['AdvancedClusterConnectionStringArgs', 'AdvancedClusterConnectionStringArgsDict']]]] connection_strings: Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. :param pulumi.Input[float] disk_size_gb: Capacity, in gigabytes, of the host's root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (4 TB). This value must be a positive number. You can't set this value with clusters with local [NVMe SSDs](https://docs.atlas.mongodb.com/cluster-tier/#std-label-nvme-storage). The minimum disk size for dedicated clusters is 10 GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value. If your cluster includes Azure nodes, this value must correspond to an existing Azure disk type (8, 16, 32, 64, 128, 256, 512, 1024, 2048, or 4095)Atlas calculates storage charges differently depending on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider [upgrading your cluster](https://docs.atlas.mongodb.com/scale-cluster/#std-label-scale-cluster-instance) to a higher tier. If your cluster spans cloud service providers, this value defaults to the minimum default of the providers involved. **(DEPRECATED)** Use `replication_specs.#.region_config.#.(analytics_specs|electable_specs|read_only_specs).disk_size_gb` instead. To learn more, see the 1.18.0 upgrade guide. :param pulumi.Input[str] encryption_at_rest_provider: Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see [Encryption at Rest using Customer Key Management](https://docs.atlas.mongodb.com/security-kms-encryption/) for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For Documentation, see [AWS](https://docs.atlas.mongodb.com/security-aws-kms/), [GCP](https://docs.atlas.mongodb.com/security-kms-encryption/) and [Azure](https://docs.atlas.mongodb.com/security-azure-kms/#std-label-security-azure-kms). Requirements are if `replication_specs.#.region_configs.#.Specs.instance_size` is M10 or greater and `backup_enabled` is false or omitted. @@ -1772,7 +1785,7 @@ def get(resource_name: str, :param pulumi.Input[str] name: Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. **WARNING** Changing the name will result in destruction of the existing cluster and the creation of a new cluster. :param pulumi.Input[bool] pit_enabled: Flag that indicates if the cluster uses Continuous Cloud Backup. :param pulumi.Input[str] project_id: Unique ID for the project to create the database user. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. :param pulumi.Input[str] replica_set_scaling_strategy: Replica set scaling mode for your cluster. Valid values are `WORKLOAD_TYPE`, `SEQUENTIAL` and `NODE_TYPE`. By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes. When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads. When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads. [Modify the Replica Set Scaling Mode](https://dochub.mongodb.org/core/scale-nodes) :param pulumi.Input[Sequence[pulumi.Input[Union['AdvancedClusterReplicationSpecArgs', 'AdvancedClusterReplicationSpecArgsDict']]]] replication_specs: List of settings that configure your cluster regions. This attribute has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations. If for each replication_spec `num_shards` is configured with a value greater than 1 (using deprecated sharding configurations), then each object represents a zone with one or more shards. See below :param pulumi.Input[bool] retain_backups_enabled: Flag that indicates whether to retain backup snapshots for the deleted dedicated cluster @@ -1801,6 +1814,8 @@ def get(resource_name: str, __props__.__dict__["bi_connector_config"] = bi_connector_config __props__.__dict__["cluster_id"] = cluster_id __props__.__dict__["cluster_type"] = cluster_type + __props__.__dict__["config_server_management_mode"] = config_server_management_mode + __props__.__dict__["config_server_type"] = config_server_type __props__.__dict__["connection_strings"] = connection_strings __props__.__dict__["create_date"] = create_date __props__.__dict__["disk_size_gb"] = disk_size_gb @@ -1881,6 +1896,22 @@ def cluster_type(self) -> pulumi.Output[str]: """ return pulumi.get(self, "cluster_type") + @property + @pulumi.getter(name="configServerManagementMode") + def config_server_management_mode(self) -> pulumi.Output[str]: + """ + Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_management_mode") + + @property + @pulumi.getter(name="configServerType") + def config_server_type(self) -> pulumi.Output[str]: + """ + Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_type") + @property @pulumi.getter(name="connectionStrings") def connection_strings(self) -> pulumi.Output[Sequence['outputs.AdvancedClusterConnectionString']]: @@ -1921,7 +1952,6 @@ def global_cluster_self_managed_sharding(self) -> pulumi.Output[bool]: @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> pulumi.Output[Optional[Sequence['outputs.AdvancedClusterLabel']]]: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -1977,7 +2007,7 @@ def project_id(self) -> pulumi.Output[str]: @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> pulumi.Output[bool]: """ - Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. """ return pulumi.get(self, "redact_client_log_data") diff --git a/sdk/python/pulumi_mongodbatlas/cluster.py b/sdk/python/pulumi_mongodbatlas/cluster.py index 10a045bd..e046fc63 100644 --- a/sdk/python/pulumi_mongodbatlas/cluster.py +++ b/sdk/python/pulumi_mongodbatlas/cluster.py @@ -120,7 +120,7 @@ def __init__(__self__, *, Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array. :param pulumi.Input[str] provider_volume_type: The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. > **NOTE:** `STANDARD` is not available for NVME clusters. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. :param pulumi.Input[int] replication_factor: 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. :param pulumi.Input[Sequence[pulumi.Input['ClusterReplicationSpecArgs']]] replication_specs: Configuration for cluster regions. See Replication Spec below for more details. :param pulumi.Input[bool] retain_backups_enabled: Set to true to retain backup snapshots for the deleted cluster. M10 and above only. @@ -157,9 +157,6 @@ def __init__(__self__, *, pulumi.set(__self__, "disk_size_gb", disk_size_gb) if encryption_at_rest_provider is not None: pulumi.set(__self__, "encryption_at_rest_provider", encryption_at_rest_provider) - if labels is not None: - warnings.warn("""This parameter is deprecated and will be removed in the future. Please transition to tags""", DeprecationWarning) - pulumi.log.warn("""labels is deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags""") if labels is not None: pulumi.set(__self__, "labels", labels) if mongo_db_major_version is not None: @@ -410,7 +407,6 @@ def encryption_at_rest_provider(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterLabelArgs']]]]: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -570,7 +566,7 @@ def provider_volume_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> Optional[pulumi.Input[bool]]: """ - Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. """ return pulumi.get(self, "redact_client_log_data") @@ -773,7 +769,7 @@ def __init__(__self__, *, Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array. :param pulumi.Input[str] provider_volume_type: The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. > **NOTE:** `STANDARD` is not available for NVME clusters. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. :param pulumi.Input[int] replication_factor: 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. :param pulumi.Input[Sequence[pulumi.Input['ClusterReplicationSpecArgs']]] replication_specs: Configuration for cluster regions. See Replication Spec below for more details. :param pulumi.Input[bool] retain_backups_enabled: Set to true to retain backup snapshots for the deleted cluster. M10 and above only. @@ -822,9 +818,6 @@ def __init__(__self__, *, pulumi.set(__self__, "disk_size_gb", disk_size_gb) if encryption_at_rest_provider is not None: pulumi.set(__self__, "encryption_at_rest_provider", encryption_at_rest_provider) - if labels is not None: - warnings.warn("""This parameter is deprecated and will be removed in the future. Please transition to tags""", DeprecationWarning) - pulumi.log.warn("""labels is deprecated: This parameter is deprecated and will be removed in the future. Please transition to tags""") if labels is not None: pulumi.set(__self__, "labels", labels) if mongo_db_major_version is not None: @@ -1090,7 +1083,6 @@ def encryption_at_rest_provider(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterLabelArgs']]]]: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -1350,7 +1342,7 @@ def provider_volume_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> Optional[pulumi.Input[bool]]: """ - Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. """ return pulumi.get(self, "redact_client_log_data") @@ -1787,7 +1779,7 @@ def __init__(__self__, Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array. :param pulumi.Input[str] provider_volume_type: The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. > **NOTE:** `STANDARD` is not available for NVME clusters. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. :param pulumi.Input[int] replication_factor: 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. :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterReplicationSpecArgs', 'ClusterReplicationSpecArgsDict']]]] replication_specs: Configuration for cluster regions. See Replication Spec below for more details. :param pulumi.Input[bool] retain_backups_enabled: Set to true to retain backup snapshots for the deleted cluster. M10 and above only. @@ -2253,7 +2245,7 @@ def get(resource_name: str, Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array. :param pulumi.Input[str] provider_volume_type: The type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. `PROVISIONED` is ONLY required if setting IOPS higher than the default instance IOPS. > **NOTE:** `STANDARD` is not available for NVME clusters. - :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + :param pulumi.Input[bool] redact_client_log_data: Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. :param pulumi.Input[int] replication_factor: 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. :param pulumi.Input[Sequence[pulumi.Input[Union['ClusterReplicationSpecArgs', 'ClusterReplicationSpecArgsDict']]]] replication_specs: Configuration for cluster regions. See Replication Spec below for more details. :param pulumi.Input[bool] retain_backups_enabled: Set to true to retain backup snapshots for the deleted cluster. M10 and above only. @@ -2463,7 +2455,6 @@ def encryption_at_rest_provider(self) -> pulumi.Output[str]: @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> pulumi.Output[Optional[Sequence['outputs.ClusterLabel']]]: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -2639,7 +2630,7 @@ def provider_volume_type(self) -> pulumi.Output[str]: @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> pulumi.Output[bool]: """ - Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. + Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. **Note**: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use `AdvancedCluster`. """ return pulumi.get(self, "redact_client_log_data") diff --git a/sdk/python/pulumi_mongodbatlas/get_advanced_cluster.py b/sdk/python/pulumi_mongodbatlas/get_advanced_cluster.py index 9ce58af9..efa93aee 100644 --- a/sdk/python/pulumi_mongodbatlas/get_advanced_cluster.py +++ b/sdk/python/pulumi_mongodbatlas/get_advanced_cluster.py @@ -27,7 +27,7 @@ class GetAdvancedClusterResult: """ A collection of values returned by getAdvancedCluster. """ - def __init__(__self__, advanced_configurations=None, backup_enabled=None, bi_connector_configs=None, cluster_type=None, connection_strings=None, create_date=None, disk_size_gb=None, encryption_at_rest_provider=None, global_cluster_self_managed_sharding=None, id=None, labels=None, mongo_db_major_version=None, mongo_db_version=None, name=None, paused=None, pit_enabled=None, project_id=None, redact_client_log_data=None, replica_set_scaling_strategy=None, replication_specs=None, root_cert_type=None, state_name=None, tags=None, termination_protection_enabled=None, use_replication_spec_per_shard=None, version_release_system=None): + def __init__(__self__, advanced_configurations=None, backup_enabled=None, bi_connector_configs=None, cluster_type=None, config_server_management_mode=None, config_server_type=None, connection_strings=None, create_date=None, disk_size_gb=None, encryption_at_rest_provider=None, global_cluster_self_managed_sharding=None, id=None, labels=None, mongo_db_major_version=None, mongo_db_version=None, name=None, paused=None, pit_enabled=None, project_id=None, redact_client_log_data=None, replica_set_scaling_strategy=None, replication_specs=None, root_cert_type=None, state_name=None, tags=None, termination_protection_enabled=None, use_replication_spec_per_shard=None, version_release_system=None): if advanced_configurations and not isinstance(advanced_configurations, list): raise TypeError("Expected argument 'advanced_configurations' to be a list") pulumi.set(__self__, "advanced_configurations", advanced_configurations) @@ -40,6 +40,12 @@ def __init__(__self__, advanced_configurations=None, backup_enabled=None, bi_con if cluster_type and not isinstance(cluster_type, str): raise TypeError("Expected argument 'cluster_type' to be a str") pulumi.set(__self__, "cluster_type", cluster_type) + if config_server_management_mode and not isinstance(config_server_management_mode, str): + raise TypeError("Expected argument 'config_server_management_mode' to be a str") + pulumi.set(__self__, "config_server_management_mode", config_server_management_mode) + if config_server_type and not isinstance(config_server_type, str): + raise TypeError("Expected argument 'config_server_type' to be a str") + pulumi.set(__self__, "config_server_type", config_server_type) if connection_strings and not isinstance(connection_strings, list): raise TypeError("Expected argument 'connection_strings' to be a list") pulumi.set(__self__, "connection_strings", connection_strings) @@ -136,6 +142,22 @@ def cluster_type(self) -> str: """ return pulumi.get(self, "cluster_type") + @property + @pulumi.getter(name="configServerManagementMode") + def config_server_management_mode(self) -> str: + """ + Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_management_mode") + + @property + @pulumi.getter(name="configServerType") + def config_server_type(self) -> str: + """ + Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_type") + @property @pulumi.getter(name="connectionStrings") def connection_strings(self) -> Sequence['outputs.GetAdvancedClusterConnectionStringResult']: @@ -184,7 +206,6 @@ def id(self) -> str: @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Sequence['outputs.GetAdvancedClusterLabelResult']: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **(DEPRECATED.)** Use `tags` instead. @@ -237,7 +258,7 @@ def project_id(self) -> str: @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> bool: """ - (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. """ return pulumi.get(self, "redact_client_log_data") @@ -313,6 +334,8 @@ def __await__(self): backup_enabled=self.backup_enabled, bi_connector_configs=self.bi_connector_configs, cluster_type=self.cluster_type, + config_server_management_mode=self.config_server_management_mode, + config_server_type=self.config_server_type, connection_strings=self.connection_strings, create_date=self.create_date, disk_size_gb=self.disk_size_gb, @@ -439,6 +462,8 @@ def get_advanced_cluster(name: Optional[str] = None, backup_enabled=pulumi.get(__ret__, 'backup_enabled'), bi_connector_configs=pulumi.get(__ret__, 'bi_connector_configs'), cluster_type=pulumi.get(__ret__, 'cluster_type'), + config_server_management_mode=pulumi.get(__ret__, 'config_server_management_mode'), + config_server_type=pulumi.get(__ret__, 'config_server_type'), connection_strings=pulumi.get(__ret__, 'connection_strings'), create_date=pulumi.get(__ret__, 'create_date'), disk_size_gb=pulumi.get(__ret__, 'disk_size_gb'), @@ -562,6 +587,8 @@ def get_advanced_cluster_output(name: Optional[pulumi.Input[str]] = None, backup_enabled=pulumi.get(__response__, 'backup_enabled'), bi_connector_configs=pulumi.get(__response__, 'bi_connector_configs'), cluster_type=pulumi.get(__response__, 'cluster_type'), + config_server_management_mode=pulumi.get(__response__, 'config_server_management_mode'), + config_server_type=pulumi.get(__response__, 'config_server_type'), connection_strings=pulumi.get(__response__, 'connection_strings'), create_date=pulumi.get(__response__, 'create_date'), disk_size_gb=pulumi.get(__response__, 'disk_size_gb'), diff --git a/sdk/python/pulumi_mongodbatlas/get_cluster.py b/sdk/python/pulumi_mongodbatlas/get_cluster.py index c53fdc45..d96a1af9 100644 --- a/sdk/python/pulumi_mongodbatlas/get_cluster.py +++ b/sdk/python/pulumi_mongodbatlas/get_cluster.py @@ -267,7 +267,6 @@ def id(self) -> str: @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Sequence['outputs.GetClusterLabelResult']: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -438,7 +437,7 @@ def provider_volume_type(self) -> str: @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> bool: """ - (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. """ return pulumi.get(self, "redact_client_log_data") diff --git a/sdk/python/pulumi_mongodbatlas/get_project.py b/sdk/python/pulumi_mongodbatlas/get_project.py index 3a852e6b..baaf9d60 100644 --- a/sdk/python/pulumi_mongodbatlas/get_project.py +++ b/sdk/python/pulumi_mongodbatlas/get_project.py @@ -27,7 +27,7 @@ class GetProjectResult: """ A collection of values returned by getProject. """ - def __init__(__self__, cluster_count=None, created=None, id=None, ip_addresses=None, is_collect_database_specifics_statistics_enabled=None, is_data_explorer_enabled=None, is_extended_storage_sizes_enabled=None, is_performance_advisor_enabled=None, is_realtime_performance_panel_enabled=None, is_schema_advisor_enabled=None, limits=None, name=None, org_id=None, project_id=None, region_usage_restrictions=None, tags=None, teams=None): + def __init__(__self__, cluster_count=None, created=None, id=None, ip_addresses=None, is_collect_database_specifics_statistics_enabled=None, is_data_explorer_enabled=None, is_extended_storage_sizes_enabled=None, is_performance_advisor_enabled=None, is_realtime_performance_panel_enabled=None, is_schema_advisor_enabled=None, is_slow_operation_thresholding_enabled=None, limits=None, name=None, org_id=None, project_id=None, region_usage_restrictions=None, tags=None, teams=None): if cluster_count and not isinstance(cluster_count, int): raise TypeError("Expected argument 'cluster_count' to be a int") pulumi.set(__self__, "cluster_count", cluster_count) @@ -58,6 +58,9 @@ def __init__(__self__, cluster_count=None, created=None, id=None, ip_addresses=N if is_schema_advisor_enabled and not isinstance(is_schema_advisor_enabled, bool): raise TypeError("Expected argument 'is_schema_advisor_enabled' to be a bool") pulumi.set(__self__, "is_schema_advisor_enabled", is_schema_advisor_enabled) + if is_slow_operation_thresholding_enabled and not isinstance(is_slow_operation_thresholding_enabled, bool): + raise TypeError("Expected argument 'is_slow_operation_thresholding_enabled' to be a bool") + pulumi.set(__self__, "is_slow_operation_thresholding_enabled", is_slow_operation_thresholding_enabled) if limits and not isinstance(limits, list): raise TypeError("Expected argument 'limits' to be a list") pulumi.set(__self__, "limits", limits) @@ -158,6 +161,15 @@ def is_schema_advisor_enabled(self) -> bool: """ return pulumi.get(self, "is_schema_advisor_enabled") + @property + @pulumi.getter(name="isSlowOperationThresholdingEnabled") + @_utilities.deprecated("""This parameter is deprecated and will be removed in version 1.24.0.""") + def is_slow_operation_thresholding_enabled(self) -> bool: + """ + (Deprecated) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + """ + return pulumi.get(self, "is_slow_operation_thresholding_enabled") + @property @pulumi.getter def limits(self) -> Sequence['outputs.GetProjectLimitResult']: @@ -228,6 +240,7 @@ def __await__(self): is_performance_advisor_enabled=self.is_performance_advisor_enabled, is_realtime_performance_panel_enabled=self.is_realtime_performance_panel_enabled, is_schema_advisor_enabled=self.is_schema_advisor_enabled, + is_slow_operation_thresholding_enabled=self.is_slow_operation_thresholding_enabled, limits=self.limits, name=self.name, org_id=self.org_id, @@ -329,6 +342,7 @@ def get_project(name: Optional[str] = None, is_performance_advisor_enabled=pulumi.get(__ret__, 'is_performance_advisor_enabled'), is_realtime_performance_panel_enabled=pulumi.get(__ret__, 'is_realtime_performance_panel_enabled'), is_schema_advisor_enabled=pulumi.get(__ret__, 'is_schema_advisor_enabled'), + is_slow_operation_thresholding_enabled=pulumi.get(__ret__, 'is_slow_operation_thresholding_enabled'), limits=pulumi.get(__ret__, 'limits'), name=pulumi.get(__ret__, 'name'), org_id=pulumi.get(__ret__, 'org_id'), @@ -427,6 +441,7 @@ def get_project_output(name: Optional[pulumi.Input[Optional[str]]] = None, is_performance_advisor_enabled=pulumi.get(__response__, 'is_performance_advisor_enabled'), is_realtime_performance_panel_enabled=pulumi.get(__response__, 'is_realtime_performance_panel_enabled'), is_schema_advisor_enabled=pulumi.get(__response__, 'is_schema_advisor_enabled'), + is_slow_operation_thresholding_enabled=pulumi.get(__response__, 'is_slow_operation_thresholding_enabled'), limits=pulumi.get(__response__, 'limits'), name=pulumi.get(__response__, 'name'), org_id=pulumi.get(__response__, 'org_id'), diff --git a/sdk/python/pulumi_mongodbatlas/outputs.py b/sdk/python/pulumi_mongodbatlas/outputs.py index 3c1d9b24..dae1a199 100644 --- a/sdk/python/pulumi_mongodbatlas/outputs.py +++ b/sdk/python/pulumi_mongodbatlas/outputs.py @@ -856,7 +856,7 @@ def __init__(__self__, *, - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ if endpoint_id is not None: pulumi.set(__self__, "endpoint_id", endpoint_id) @@ -880,7 +880,7 @@ def provider_name(self) -> Optional[str]: - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ return pulumi.get(self, "provider_name") @@ -964,6 +964,8 @@ def __init__(__self__, *, zone_name: Optional[str] = None): """ :param Sequence['AdvancedClusterReplicationSpecRegionConfigArgs'] region_configs: Configuration for the hardware specifications for nodes set for a given regionEach `region_configs` object describes the region's priority in elections and the number and type of MongoDB nodes that Atlas deploys to the region. Each `region_configs` object must have either an `analytics_specs` object, `electable_specs` object, or `read_only_specs` object. See below + :param str external_id: Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + :param str id: **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. :param int num_shards: Provide this value if you set a `cluster_type` of SHARDED or GEOSHARDED. Omit this value if you selected a `cluster_type` of REPLICASET. This API resource accepts 1 through 50, inclusive. This parameter defaults to 1. If you specify a `num_shards` value of 1 and a `cluster_type` of SHARDED, Atlas deploys a single-shard [sharded cluster](https://docs.atlas.mongodb.com/reference/glossary/#std-term-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. If you are upgrading a replica set to a sharded cluster, you cannot increase the number of shards in the same update request. You should wait until after the cluster has completed upgrading to sharded and you have reconnected all application clients to the MongoDB router before adding additional shards. Otherwise, your data might become inconsistent once MongoDB Cloud begins distributing data across shards. To learn more, see [Convert a replica set to a sharded cluster documentation](https://www.mongodb.com/docs/atlas/scale-cluster/#convert-a-replica-set-to-a-sharded-cluster) and [Convert a replica set to a sharded cluster tutorial](https://www.mongodb.com/docs/upcoming/tutorial/convert-replica-set-to-replicated-shard-cluster). **(DEPRECATED)** To learn more, see the 1.18.0 Upgrade Guide. :param str zone_id: Unique 24-hexadecimal digit string that identifies the zone in a Global Cluster. If clusterType is GEOSHARDED, this value indicates the zone that the given shard belongs to and can be used to configure Global Cluster backup policies. @@ -999,12 +1001,18 @@ def container_id(self) -> Optional[Mapping[str, str]]: @property @pulumi.getter(name="externalId") def external_id(self) -> Optional[str]: + """ + Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + """ return pulumi.get(self, "external_id") @property @pulumi.getter @_utilities.deprecated("""This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown""") def id(self) -> Optional[str]: + """ + **(DEPRECATED)** Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. + """ return pulumi.get(self, "id") @property @@ -1087,7 +1095,7 @@ def __init__(__self__, *, - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. :param str region_name: 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/). :param 'AdvancedClusterReplicationSpecRegionConfigAnalyticsAutoScalingArgs' analytics_auto_scaling: Configuration for the Collection of settings that configures analytics-auto-scaling information for the cluster. The values for the `analytics_auto_scaling` parameter must be the same for all `region_configs` in all `replication_specs`. See below :param 'AdvancedClusterReplicationSpecRegionConfigAnalyticsSpecsArgs' analytics_specs: Hardware specifications for [analytics nodes](https://docs.atlas.mongodb.com/reference/faq/deployment/#std-label-analytics-nodes-overview) needed in the region. Analytics nodes handle analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only and can never become the [primary](https://docs.atlas.mongodb.com/reference/glossary/#std-term-primary). If you don't specify this parameter, no analytics nodes deploy to this region. See below @@ -1132,7 +1140,7 @@ def provider_name(self) -> str: - `AWS` - Amazon AWS - `GCP` - Google Cloud Platform - `AZURE` - Microsoft Azure - - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. + - `TENANT` - M0, M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider. """ return pulumi.get(self, "provider_name") @@ -1230,7 +1238,7 @@ def __init__(__self__, *, :param str compute_max_instance_size: Maximum instance size to which your cluster can automatically scale (such as M40). Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_enabled` is true. :param str compute_min_instance_size: Minimum instance size to which your cluster can automatically scale (such as M10). Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_scale_down_enabled` is true. :param bool compute_scale_down_enabled: Flag that indicates whether the instance size may scale down. Atlas requires this parameter if `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_enabled` : true. If you enable this option, specify a value for `replication_specs.#.region_configs.#.analytics_auto_scaling.0.compute_min_instance_size`. - :param bool disk_gb_enabled: Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + :param bool disk_gb_enabled: Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. """ if compute_enabled is not None: pulumi.set(__self__, "compute_enabled", compute_enabled) @@ -1276,7 +1284,7 @@ def compute_scale_down_enabled(self) -> Optional[bool]: @pulumi.getter(name="diskGbEnabled") def disk_gb_enabled(self) -> Optional[bool]: """ - Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to true. + Flag that indicates whether this cluster enables disk auto-scaling. This parameter defaults to false. """ return pulumi.get(self, "disk_gb_enabled") @@ -4486,7 +4494,7 @@ def __init__(__self__, *, zone_name: Optional[str] = None): """ :param int num_shards: Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards. - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. :param Sequence['ClusterReplicationSpecRegionsConfigArgs'] regions_configs: Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details. :param str zone_name: Name for the zone in a Global Cluster. @@ -4513,7 +4521,7 @@ def num_shards(self) -> int: @pulumi.getter def id(self) -> Optional[str]: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -4765,7 +4773,7 @@ def __init__(__self__, *, id: Optional[str] = None, policy_items: Optional[Sequence['outputs.ClusterSnapshotBackupPolicyPolicyPolicyItem']] = None): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ if id is not None: pulumi.set(__self__, "id", id) @@ -4776,7 +4784,7 @@ def __init__(__self__, *, @pulumi.getter def id(self) -> Optional[str]: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -4818,7 +4826,7 @@ def __init__(__self__, *, retention_unit: Optional[str] = None, retention_value: Optional[int] = None): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ if frequency_interval is not None: pulumi.set(__self__, "frequency_interval", frequency_interval) @@ -4845,7 +4853,7 @@ def frequency_type(self) -> Optional[str]: @pulumi.getter def id(self) -> Optional[str]: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -8849,6 +8857,7 @@ def __init__(__self__, *, zone_name: str): """ :param Mapping[str, str] container_id: A key-value map of the Network Peering Container ID(s) for the configuration specified in `region_configs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. + :param str external_id: Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. :param int num_shards: Provide this value if you set a `cluster_type` of `SHARDED` or `GEOSHARDED`. **(DEPRECATED.)** To learn more, see the Migration Guide. :param Sequence['GetAdvancedClusterReplicationSpecRegionConfigArgs'] region_configs: Configuration for the hardware specifications for nodes set for a given regionEach `region_configs` object describes the region's priority in elections and the number and type of MongoDB nodes that Atlas deploys to the region. Each `region_configs` object must have either an `analytics_specs` object, `electable_specs` object, or `read_only_specs` object. See below :param str zone_id: Unique 24-hexadecimal digit string that identifies the zone in a Global Cluster. If clusterType is GEOSHARDED, this value indicates the zone that the given shard belongs to and can be used to configure Global Cluster backup policies. @@ -8873,6 +8882,9 @@ def container_id(self) -> Mapping[str, str]: @property @pulumi.getter(name="externalId") def external_id(self) -> str: + """ + Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + """ return pulumi.get(self, "external_id") @property @@ -9386,6 +9398,8 @@ def __init__(__self__, *, backup_enabled: bool, bi_connector_configs: Sequence['outputs.GetAdvancedClustersResultBiConnectorConfigResult'], cluster_type: str, + config_server_management_mode: str, + config_server_type: str, connection_strings: Sequence['outputs.GetAdvancedClustersResultConnectionStringResult'], create_date: str, disk_size_gb: float, @@ -9409,6 +9423,8 @@ def __init__(__self__, *, :param Sequence['GetAdvancedClustersResultAdvancedConfigurationArgs'] advanced_configurations: Get the advanced configuration options. See Advanced Configuration below for more details. :param Sequence['GetAdvancedClustersResultBiConnectorConfigArgs'] bi_connector_configs: Configuration settings applied to BI Connector for Atlas on this cluster. See below. **NOTE** Prior version of provider had parameter as `bi_connector` :param str cluster_type: Type of the cluster that you want to create. + :param str config_server_management_mode: Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + :param str config_server_type: Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). :param Sequence['GetAdvancedClustersResultConnectionStringArgs'] connection_strings: Set of connection strings that your applications use to connect to this cluster. More info in [Connection-strings](https://docs.mongodb.com/manual/reference/connection-string/). Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see [Connection String Options](https://docs.atlas.mongodb.com/reference/faq/connection-changes/). NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster. :param float disk_size_gb: Storage capacity that the host's root volume possesses expressed in gigabytes. If disk size specified is below the minimum (10 GB), this parameter defaults to the minimum disk size value. Storage charge calculations depend on whether you choose the default value or a custom value. The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier. :param str encryption_at_rest_provider: Possible values are AWS, GCP, AZURE or NONE. @@ -9418,7 +9434,7 @@ def __init__(__self__, *, :param str mongo_db_version: Version of MongoDB the cluster runs, in `major-version`.`minor-version` format. :param bool paused: Flag that indicates whether the cluster is paused or not. :param bool pit_enabled: Flag that indicates if the cluster uses Continuous Cloud Backup. - :param bool redact_client_log_data: (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + :param bool redact_client_log_data: (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. :param str replica_set_scaling_strategy: (Optional) Replica set scaling mode for your cluster. :param Sequence['GetAdvancedClustersResultReplicationSpecArgs'] replication_specs: List of settings that configure your cluster regions. If `use_replication_spec_per_shard = true`, this array has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations. See below :param str root_cert_type: Certificate Authority that MongoDB Atlas clusters use. @@ -9431,6 +9447,8 @@ def __init__(__self__, *, pulumi.set(__self__, "backup_enabled", backup_enabled) pulumi.set(__self__, "bi_connector_configs", bi_connector_configs) pulumi.set(__self__, "cluster_type", cluster_type) + pulumi.set(__self__, "config_server_management_mode", config_server_management_mode) + pulumi.set(__self__, "config_server_type", config_server_type) pulumi.set(__self__, "connection_strings", connection_strings) pulumi.set(__self__, "create_date", create_date) pulumi.set(__self__, "disk_size_gb", disk_size_gb) @@ -9480,6 +9498,22 @@ def cluster_type(self) -> str: """ return pulumi.get(self, "cluster_type") + @property + @pulumi.getter(name="configServerManagementMode") + def config_server_management_mode(self) -> str: + """ + Config Server Management Mode for creating or updating a sharded cluster. Valid values are `ATLAS_MANAGED` (default) and `FIXED_TO_DEDICATED`. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_management_mode") + + @property + @pulumi.getter(name="configServerType") + def config_server_type(self) -> str: + """ + Describes a sharded cluster's config server type. Valid values are `DEDICATED` and `EMBEDDED`. To learn more, see the [Sharded Cluster Config Servers documentation](https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers/). + """ + return pulumi.get(self, "config_server_type") + @property @pulumi.getter(name="connectionStrings") def connection_strings(self) -> Sequence['outputs.GetAdvancedClustersResultConnectionStringResult']: @@ -9520,7 +9554,6 @@ def global_cluster_self_managed_sharding(self) -> bool: @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Sequence['outputs.GetAdvancedClustersResultLabelResult']: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. @@ -9568,7 +9601,7 @@ def pit_enabled(self) -> bool: @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> bool: """ - (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. """ return pulumi.get(self, "redact_client_log_data") @@ -9990,6 +10023,7 @@ def __init__(__self__, *, zone_name: str): """ :param Mapping[str, str] container_id: A key-value map of the Network Peering Container ID(s) for the configuration specified in `region_configs`. The Container ID is the id of the container either created programmatically by the user before any clusters existed in a project or when the first cluster in the region (AWS/Azure) or project (GCP) was created. The syntax is `"providerName:regionName" = "containerId"`. Example `AWS:US_EAST_1" = "61e0797dde08fb498ca11a71`. + :param str external_id: Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. :param int num_shards: Provide this value if you set a `cluster_type` of SHARDED or GEOSHARDED. **(DEPRECATED.)** To learn more, see the Migration Guide for more details. :param Sequence['GetAdvancedClustersResultReplicationSpecRegionConfigArgs'] region_configs: Configuration for the hardware specifications for nodes set for a given regionEach `region_configs` object describes the region's priority in elections and the number and type of MongoDB nodes that Atlas deploys to the region. Each `region_configs` object must have either an `analytics_specs` object, `electable_specs` object, or `read_only_specs` object. See below :param str zone_id: Unique 24-hexadecimal digit string that identifies the zone in a Global Cluster. If clusterType is GEOSHARDED, this value indicates the zone that the given shard belongs to and can be used to configure Global Cluster backup policies. @@ -10014,6 +10048,9 @@ def container_id(self) -> Mapping[str, str]: @property @pulumi.getter(name="externalId") def external_id(self) -> str: + """ + Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. This value corresponds to Shard ID displayed in the UI. When using old sharding configuration (replication spec with `num_shards` greater than 1) this value is not populated. + """ return pulumi.get(self, "external_id") @property @@ -14029,7 +14066,7 @@ def __init__(__self__, *, regions_configs: Sequence['outputs.GetClusterReplicationSpecRegionsConfigResult'], zone_name: str): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. :param int num_shards: Number of shards to deploy in the specified zone. :param Sequence['GetClusterReplicationSpecRegionsConfigArgs'] regions_configs: Describes the physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details. :param str zone_name: Indicates the n ame for the zone in a Global Cluster. @@ -14043,7 +14080,7 @@ def __init__(__self__, *, @pulumi.getter def id(self) -> str: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -14201,7 +14238,7 @@ def __init__(__self__, *, id: str, policy_items: Sequence['outputs.GetClusterSnapshotBackupPolicyPolicyPolicyItemResult']): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ pulumi.set(__self__, "id", id) pulumi.set(__self__, "policy_items", policy_items) @@ -14210,7 +14247,7 @@ def __init__(__self__, *, @pulumi.getter def id(self) -> str: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -14229,7 +14266,7 @@ def __init__(__self__, *, retention_unit: str, retention_value: int): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ pulumi.set(__self__, "frequency_interval", frequency_interval) pulumi.set(__self__, "frequency_type", frequency_type) @@ -14251,7 +14288,7 @@ def frequency_type(self) -> str: @pulumi.getter def id(self) -> str: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -14373,7 +14410,7 @@ def __init__(__self__, *, :param str provider_region_name: 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/). :param str provider_volume_type: Indicates the type of the volume. The possible values are: `STANDARD` and `PROVISIONED`. > **NOTE:** `STANDARD` is not available for NVME clusters. - :param bool redact_client_log_data: (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + :param bool redact_client_log_data: (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. :param int replication_factor: (Deprecated) 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. :param Sequence['GetClustersResultReplicationSpecArgs'] replication_specs: Configuration for cluster regions. See Replication Spec below for more details. :param Sequence['GetClustersResultSnapshotBackupPolicyArgs'] snapshot_backup_policies: current snapshot schedule and retention settings for the cluster. @@ -14529,7 +14566,6 @@ def encryption_at_rest_provider(self) -> str: @property @pulumi.getter - @_utilities.deprecated("""This parameter is deprecated and will be removed in the future. Please transition to tags""") def labels(self) -> Sequence['outputs.GetClustersResultLabelResult']: """ Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. **DEPRECATED** Use `tags` instead. @@ -14693,7 +14729,7 @@ def provider_volume_type(self) -> str: @pulumi.getter(name="redactClientLogData") def redact_client_log_data(self) -> bool: """ - (Optional) Flag that enables or disables log redaction, see [param reference](https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.redactClientLogData) for more info. + (Optional) Flag that enables or disables log redaction, see the [manual](https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction) for more info. """ return pulumi.get(self, "redact_client_log_data") @@ -15131,7 +15167,7 @@ def __init__(__self__, *, regions_configs: Sequence['outputs.GetClustersResultReplicationSpecRegionsConfigResult'], zone_name: str): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. :param int num_shards: Number of shards to deploy in the specified zone. :param Sequence['GetClustersResultReplicationSpecRegionsConfigArgs'] regions_configs: Describes the physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details. :param str zone_name: Indicates the n ame for the zone in a Global Cluster. @@ -15145,7 +15181,7 @@ def __init__(__self__, *, @pulumi.getter def id(self) -> str: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -15303,7 +15339,7 @@ def __init__(__self__, *, id: str, policy_items: Sequence['outputs.GetClustersResultSnapshotBackupPolicyPolicyPolicyItemResult']): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ pulumi.set(__self__, "id", id) pulumi.set(__self__, "policy_items", policy_items) @@ -15312,7 +15348,7 @@ def __init__(__self__, *, @pulumi.getter def id(self) -> str: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -15331,7 +15367,7 @@ def __init__(__self__, *, retention_unit: str, retention_value: int): """ - :param str id: Unique identifer of the replication document for a zone in a Global Cluster. + :param str id: Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ pulumi.set(__self__, "frequency_interval", frequency_interval) pulumi.set(__self__, "frequency_type", frequency_type) @@ -15353,7 +15389,7 @@ def frequency_type(self) -> str: @pulumi.getter def id(self) -> str: """ - Unique identifer of the replication document for a zone in a Global Cluster. + Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI. """ return pulumi.get(self, "id") @@ -21417,6 +21453,7 @@ def __init__(__self__, *, is_performance_advisor_enabled: bool, is_realtime_performance_panel_enabled: bool, is_schema_advisor_enabled: bool, + is_slow_operation_thresholding_enabled: bool, limits: Sequence['outputs.GetProjectsResultLimitResult'], name: str, org_id: str, @@ -21435,6 +21472,7 @@ def __init__(__self__, *, :param bool is_performance_advisor_enabled: Flag that indicates whether to enable Performance Advisor and Profiler for the project. If enabled, you can analyze database logs to recommend performance improvements. :param bool is_realtime_performance_panel_enabled: Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. :param bool is_schema_advisor_enabled: Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). + :param bool is_slow_operation_thresholding_enabled: Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. :param Sequence['GetProjectsResultLimitArgs'] limits: The limits for the specified project. See Limits. :param str org_id: The ID of the organization you want to create the project within. :param str region_usage_restrictions: If GOV_REGIONS_ONLY the project can be used for government regions only, otherwise defaults to standard regions. For more information see [MongoDB Atlas for Government](https://www.mongodb.com/docs/atlas/government/api/#creating-a-project). @@ -21451,6 +21489,7 @@ def __init__(__self__, *, pulumi.set(__self__, "is_performance_advisor_enabled", is_performance_advisor_enabled) pulumi.set(__self__, "is_realtime_performance_panel_enabled", is_realtime_performance_panel_enabled) pulumi.set(__self__, "is_schema_advisor_enabled", is_schema_advisor_enabled) + pulumi.set(__self__, "is_slow_operation_thresholding_enabled", is_slow_operation_thresholding_enabled) pulumi.set(__self__, "limits", limits) pulumi.set(__self__, "name", name) pulumi.set(__self__, "org_id", org_id) @@ -21540,6 +21579,15 @@ def is_schema_advisor_enabled(self) -> bool: """ return pulumi.get(self, "is_schema_advisor_enabled") + @property + @pulumi.getter(name="isSlowOperationThresholdingEnabled") + @_utilities.deprecated("""This parameter is deprecated and will be removed in version 1.24.0.""") + def is_slow_operation_thresholding_enabled(self) -> bool: + """ + Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + """ + return pulumi.get(self, "is_slow_operation_thresholding_enabled") + @property @pulumi.getter def limits(self) -> Sequence['outputs.GetProjectsResultLimitResult']: diff --git a/sdk/python/pulumi_mongodbatlas/project.py b/sdk/python/pulumi_mongodbatlas/project.py index cadc8329..5b403fbb 100644 --- a/sdk/python/pulumi_mongodbatlas/project.py +++ b/sdk/python/pulumi_mongodbatlas/project.py @@ -28,6 +28,7 @@ def __init__(__self__, *, is_performance_advisor_enabled: Optional[pulumi.Input[bool]] = None, is_realtime_performance_panel_enabled: Optional[pulumi.Input[bool]] = None, is_schema_advisor_enabled: Optional[pulumi.Input[bool]] = None, + is_slow_operation_thresholding_enabled: Optional[pulumi.Input[bool]] = None, limits: Optional[pulumi.Input[Sequence[pulumi.Input['ProjectLimitArgs']]]] = None, name: Optional[pulumi.Input[str]] = None, project_owner_id: Optional[pulumi.Input[str]] = None, @@ -44,6 +45,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] is_performance_advisor_enabled: Flag that indicates whether to enable Performance Advisor and Profiler for the project. If enabled, you can analyze database logs to recommend performance improvements. By default, this flag is set to true. :param pulumi.Input[bool] is_realtime_performance_panel_enabled: Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. :param pulumi.Input[bool] is_schema_advisor_enabled: Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. + :param pulumi.Input[bool] is_slow_operation_thresholding_enabled: (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. :param pulumi.Input[str] name: The name of the project you want to create. :param pulumi.Input[str] project_owner_id: Unique 24-hexadecimal digit string that identifies the Atlas user account to be granted the [Project Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Project-Owner) role on the specified project. If you set this parameter, it overrides the default value of the oldest [Organization Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Organization-Owner). :param pulumi.Input[str] region_usage_restrictions: Designates that this project can be used for government regions only. If not set the project will default to standard regions. You cannot deploy clusters across government and standard regions in the same project. AWS is the only cloud provider for AtlasGov. For more information see [MongoDB Atlas for Government](https://www.mongodb.com/docs/atlas/government/api/#creating-a-project). @@ -63,6 +65,11 @@ def __init__(__self__, *, pulumi.set(__self__, "is_realtime_performance_panel_enabled", is_realtime_performance_panel_enabled) if is_schema_advisor_enabled is not None: pulumi.set(__self__, "is_schema_advisor_enabled", is_schema_advisor_enabled) + if is_slow_operation_thresholding_enabled is not None: + warnings.warn("""This parameter is deprecated and will be removed in version 1.24.0.""", DeprecationWarning) + pulumi.log.warn("""is_slow_operation_thresholding_enabled is deprecated: This parameter is deprecated and will be removed in version 1.24.0.""") + if is_slow_operation_thresholding_enabled is not None: + pulumi.set(__self__, "is_slow_operation_thresholding_enabled", is_slow_operation_thresholding_enabled) if limits is not None: pulumi.set(__self__, "limits", limits) if name is not None: @@ -162,6 +169,19 @@ def is_schema_advisor_enabled(self) -> Optional[pulumi.Input[bool]]: def is_schema_advisor_enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "is_schema_advisor_enabled", value) + @property + @pulumi.getter(name="isSlowOperationThresholdingEnabled") + @_utilities.deprecated("""This parameter is deprecated and will be removed in version 1.24.0.""") + def is_slow_operation_thresholding_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + """ + return pulumi.get(self, "is_slow_operation_thresholding_enabled") + + @is_slow_operation_thresholding_enabled.setter + def is_slow_operation_thresholding_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "is_slow_operation_thresholding_enabled", value) + @property @pulumi.getter def limits(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProjectLimitArgs']]]]: @@ -253,6 +273,7 @@ def __init__(__self__, *, is_performance_advisor_enabled: Optional[pulumi.Input[bool]] = None, is_realtime_performance_panel_enabled: Optional[pulumi.Input[bool]] = None, is_schema_advisor_enabled: Optional[pulumi.Input[bool]] = None, + is_slow_operation_thresholding_enabled: Optional[pulumi.Input[bool]] = None, limits: Optional[pulumi.Input[Sequence[pulumi.Input['ProjectLimitArgs']]]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, @@ -272,6 +293,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] is_performance_advisor_enabled: Flag that indicates whether to enable Performance Advisor and Profiler for the project. If enabled, you can analyze database logs to recommend performance improvements. By default, this flag is set to true. :param pulumi.Input[bool] is_realtime_performance_panel_enabled: Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. :param pulumi.Input[bool] is_schema_advisor_enabled: Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. + :param pulumi.Input[bool] is_slow_operation_thresholding_enabled: (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. :param pulumi.Input[str] name: The name of the project you want to create. :param pulumi.Input[str] org_id: The ID of the organization you want to create the project within. :param pulumi.Input[str] project_owner_id: Unique 24-hexadecimal digit string that identifies the Atlas user account to be granted the [Project Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Project-Owner) role on the specified project. If you set this parameter, it overrides the default value of the oldest [Organization Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Organization-Owner). @@ -300,6 +322,11 @@ def __init__(__self__, *, pulumi.set(__self__, "is_realtime_performance_panel_enabled", is_realtime_performance_panel_enabled) if is_schema_advisor_enabled is not None: pulumi.set(__self__, "is_schema_advisor_enabled", is_schema_advisor_enabled) + if is_slow_operation_thresholding_enabled is not None: + warnings.warn("""This parameter is deprecated and will be removed in version 1.24.0.""", DeprecationWarning) + pulumi.log.warn("""is_slow_operation_thresholding_enabled is deprecated: This parameter is deprecated and will be removed in version 1.24.0.""") + if is_slow_operation_thresholding_enabled is not None: + pulumi.set(__self__, "is_slow_operation_thresholding_enabled", is_slow_operation_thresholding_enabled) if limits is not None: pulumi.set(__self__, "limits", limits) if name is not None: @@ -426,6 +453,19 @@ def is_schema_advisor_enabled(self) -> Optional[pulumi.Input[bool]]: def is_schema_advisor_enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "is_schema_advisor_enabled", value) + @property + @pulumi.getter(name="isSlowOperationThresholdingEnabled") + @_utilities.deprecated("""This parameter is deprecated and will be removed in version 1.24.0.""") + def is_slow_operation_thresholding_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + """ + return pulumi.get(self, "is_slow_operation_thresholding_enabled") + + @is_slow_operation_thresholding_enabled.setter + def is_slow_operation_thresholding_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "is_slow_operation_thresholding_enabled", value) + @property @pulumi.getter def limits(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProjectLimitArgs']]]]: @@ -528,6 +568,7 @@ def __init__(__self__, is_performance_advisor_enabled: Optional[pulumi.Input[bool]] = None, is_realtime_performance_panel_enabled: Optional[pulumi.Input[bool]] = None, is_schema_advisor_enabled: Optional[pulumi.Input[bool]] = None, + is_slow_operation_thresholding_enabled: Optional[pulumi.Input[bool]] = None, limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProjectLimitArgs', 'ProjectLimitArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, @@ -583,7 +624,8 @@ def __init__(__self__, is_extended_storage_sizes_enabled=True, is_performance_advisor_enabled=True, is_realtime_performance_panel_enabled=True, - is_schema_advisor_enabled=True) + is_schema_advisor_enabled=True, + is_slow_operation_thresholding_enabled=True) ``` ## Import @@ -603,6 +645,7 @@ def __init__(__self__, :param pulumi.Input[bool] is_performance_advisor_enabled: Flag that indicates whether to enable Performance Advisor and Profiler for the project. If enabled, you can analyze database logs to recommend performance improvements. By default, this flag is set to true. :param pulumi.Input[bool] is_realtime_performance_panel_enabled: Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. :param pulumi.Input[bool] is_schema_advisor_enabled: Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. + :param pulumi.Input[bool] is_slow_operation_thresholding_enabled: (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. :param pulumi.Input[str] name: The name of the project you want to create. :param pulumi.Input[str] org_id: The ID of the organization you want to create the project within. :param pulumi.Input[str] project_owner_id: Unique 24-hexadecimal digit string that identifies the Atlas user account to be granted the [Project Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Project-Owner) role on the specified project. If you set this parameter, it overrides the default value of the oldest [Organization Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Organization-Owner). @@ -662,7 +705,8 @@ def __init__(__self__, is_extended_storage_sizes_enabled=True, is_performance_advisor_enabled=True, is_realtime_performance_panel_enabled=True, - is_schema_advisor_enabled=True) + is_schema_advisor_enabled=True, + is_slow_operation_thresholding_enabled=True) ``` ## Import @@ -695,6 +739,7 @@ def _internal_init(__self__, is_performance_advisor_enabled: Optional[pulumi.Input[bool]] = None, is_realtime_performance_panel_enabled: Optional[pulumi.Input[bool]] = None, is_schema_advisor_enabled: Optional[pulumi.Input[bool]] = None, + is_slow_operation_thresholding_enabled: Optional[pulumi.Input[bool]] = None, limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProjectLimitArgs', 'ProjectLimitArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, @@ -718,6 +763,7 @@ def _internal_init(__self__, __props__.__dict__["is_performance_advisor_enabled"] = is_performance_advisor_enabled __props__.__dict__["is_realtime_performance_panel_enabled"] = is_realtime_performance_panel_enabled __props__.__dict__["is_schema_advisor_enabled"] = is_schema_advisor_enabled + __props__.__dict__["is_slow_operation_thresholding_enabled"] = is_slow_operation_thresholding_enabled __props__.__dict__["limits"] = limits __props__.__dict__["name"] = name if org_id is None and not opts.urn: @@ -750,6 +796,7 @@ def get(resource_name: str, is_performance_advisor_enabled: Optional[pulumi.Input[bool]] = None, is_realtime_performance_panel_enabled: Optional[pulumi.Input[bool]] = None, is_schema_advisor_enabled: Optional[pulumi.Input[bool]] = None, + is_slow_operation_thresholding_enabled: Optional[pulumi.Input[bool]] = None, limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProjectLimitArgs', 'ProjectLimitArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, @@ -774,6 +821,7 @@ def get(resource_name: str, :param pulumi.Input[bool] is_performance_advisor_enabled: Flag that indicates whether to enable Performance Advisor and Profiler for the project. If enabled, you can analyze database logs to recommend performance improvements. By default, this flag is set to true. :param pulumi.Input[bool] is_realtime_performance_panel_enabled: Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database. By default, this flag is set to true. :param pulumi.Input[bool] is_schema_advisor_enabled: Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui). By default, this flag is set to true. + :param pulumi.Input[bool] is_slow_operation_thresholding_enabled: (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. :param pulumi.Input[str] name: The name of the project you want to create. :param pulumi.Input[str] org_id: The ID of the organization you want to create the project within. :param pulumi.Input[str] project_owner_id: Unique 24-hexadecimal digit string that identifies the Atlas user account to be granted the [Project Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Project-Owner) role on the specified project. If you set this parameter, it overrides the default value of the oldest [Organization Owner](https://docs.atlas.mongodb.com/reference/user-roles/#mongodb-authrole-Organization-Owner). @@ -794,6 +842,7 @@ def get(resource_name: str, __props__.__dict__["is_performance_advisor_enabled"] = is_performance_advisor_enabled __props__.__dict__["is_realtime_performance_panel_enabled"] = is_realtime_performance_panel_enabled __props__.__dict__["is_schema_advisor_enabled"] = is_schema_advisor_enabled + __props__.__dict__["is_slow_operation_thresholding_enabled"] = is_slow_operation_thresholding_enabled __props__.__dict__["limits"] = limits __props__.__dict__["name"] = name __props__.__dict__["org_id"] = org_id @@ -877,6 +926,15 @@ def is_schema_advisor_enabled(self) -> pulumi.Output[bool]: """ return pulumi.get(self, "is_schema_advisor_enabled") + @property + @pulumi.getter(name="isSlowOperationThresholdingEnabled") + @_utilities.deprecated("""This parameter is deprecated and will be removed in version 1.24.0.""") + def is_slow_operation_thresholding_enabled(self) -> pulumi.Output[bool]: + """ + (Optional) Flag that enables MongoDB Cloud to use its slow operation threshold for the specified project. The threshold determines which operations the Performance Advisor and Query Profiler considers slow. When enabled, MongoDB Cloud uses the average execution time for operations on your cluster to determine slow-running queries. As a result, the threshold is more pertinent to your cluster workload. The slow operation threshold is enabled by default for dedicated clusters (M10+). When disabled, MongoDB Cloud considers any operation that takes longer than 100 milliseconds to be slow. **Note**: To use this attribute, the requesting API Key must have the Project Owner role, if not it will show a warning and will return `false`. If you are not using this field, you don't need to take any action. + """ + return pulumi.get(self, "is_slow_operation_thresholding_enabled") + @property @pulumi.getter def limits(self) -> pulumi.Output[Optional[Sequence['outputs.ProjectLimit']]]: diff --git a/sdk/python/pulumi_mongodbatlas/project_api_key.py b/sdk/python/pulumi_mongodbatlas/project_api_key.py index 8fa515e0..e69eb940 100644 --- a/sdk/python/pulumi_mongodbatlas/project_api_key.py +++ b/sdk/python/pulumi_mongodbatlas/project_api_key.py @@ -26,6 +26,8 @@ def __init__(__self__, *, """ The set of arguments for constructing a ProjectApiKey resource. :param pulumi.Input[str] description: Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ pulumi.set(__self__, "description", description) pulumi.set(__self__, "project_assignments", project_assignments) @@ -35,6 +37,8 @@ def __init__(__self__, *, def description(self) -> pulumi.Input[str]: """ Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ return pulumi.get(self, "description") @@ -64,6 +68,8 @@ def __init__(__self__, *, Input properties used for looking up and filtering ProjectApiKey resources. :param pulumi.Input[str] api_key_id: Unique identifier for this Project API key. :param pulumi.Input[str] description: Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ if api_key_id is not None: pulumi.set(__self__, "api_key_id", api_key_id) @@ -93,6 +99,8 @@ def api_key_id(self, value: Optional[pulumi.Input[str]]): def description(self) -> Optional[pulumi.Input[str]]: """ Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ return pulumi.get(self, "description") @@ -188,6 +196,8 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ ... @overload @@ -305,6 +315,8 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] api_key_id: Unique identifier for this Project API key. :param pulumi.Input[str] description: Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -330,6 +342,8 @@ def api_key_id(self) -> pulumi.Output[str]: def description(self) -> pulumi.Output[str]: """ Description of this Project API key. + + > **NOTE:** Project created by API Keys must belong to an existing organization. """ return pulumi.get(self, "description")