diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/README.md b/examples/mongodbatlas_advanced_cluster (preview v2)/README.md new file mode 100644 index 0000000000..feae1a04c9 --- /dev/null +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/README.md @@ -0,0 +1,7 @@ +# Examples for mongodbatlas_advanced_cluster (Preview for MongoDB Atlas Provider v2) + +This directory contains examples of using the `mongodbatlas_advanced_cluster` resource for the **Preview for MongoDB Atlas Provider v2**. + +In order to enable the Preview, you must set the enviroment variable `MONGODB_ATLAS_ADVANCED_CLUSTER_V2_SCHEMA=true`, otherwise the current version will be used. + +You can find more info in the [resource doc page](https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/resources/advanced_cluster%2520%2528preview%2520v2%2529). diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/README.md b/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/README.md index 7565f15a5e..09f93fdf99 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/README.md +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/README.md @@ -4,12 +4,12 @@ This example creates a project and a Sharded Cluster with 4 independent shards w ## Dependencies -* Terraform MongoDB Atlas Provider v1.18.0 +* Terraform MongoDB Atlas Provider v1.27.0 * A MongoDB Atlas account ``` Terraform >= 0.13 -+ provider registry.terraform.io/terraform-providers/mongodbatlas v1.18.0 ++ provider registry.terraform.io/terraform-providers/mongodbatlas v1.27.0 ``` diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/main.tf b/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/main.tf index 36ecccbe96..26f6c4ca7a 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/main.tf +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/asymmetric-sharded-cluster/main.tf @@ -9,9 +9,9 @@ resource "mongodbatlas_advanced_cluster" "cluster" { cluster_type = "SHARDED" backup_enabled = true - replication_specs { # shard 1 - M30 instance size - region_configs { - electable_specs { + replication_specs = [{ # shard 1 - M30 instance size + region_configs = [{ + electable_specs = { instance_size = "M30" disk_iops = 3000 node_count = 3 @@ -19,12 +19,11 @@ resource "mongodbatlas_advanced_cluster" "cluster" { provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - } + }] + }, { # shard 2 - M30 instance size - replication_specs { # shard 2 - M30 instance size - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M30" disk_iops = 3000 node_count = 3 @@ -32,12 +31,11 @@ resource "mongodbatlas_advanced_cluster" "cluster" { provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - } + }] + }, { # shard 3 - M40 instance size - replication_specs { # shard 3 - M40 instance size - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M40" disk_iops = 3000 node_count = 3 @@ -45,12 +43,11 @@ resource "mongodbatlas_advanced_cluster" "cluster" { provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - } + }] + }, { # shard 4 - M40 instance size - replication_specs { # shard 4 - M40 instance size - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M40" disk_iops = 3000 node_count = 3 @@ -58,18 +55,17 @@ resource "mongodbatlas_advanced_cluster" "cluster" { provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - } + }] + }] - advanced_configuration { + advanced_configuration = { javascript_enabled = true oplog_size_mb = 999 sample_refresh_interval_bi_connector = 300 } - tags { - key = "environment" - value = "dev" + tags = { + environment = "dev" } } diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/README.md b/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/README.md index 8ea9c7bbe8..6dbfbb2b93 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/README.md +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/README.md @@ -5,12 +5,12 @@ This example creates a Sharded Cluster with 2 shards defining electable and anal ## Dependencies -* Terraform MongoDB Atlas Provider v1.23.0 +* Terraform MongoDB Atlas Provider v1.27.0 * A MongoDB Atlas account ``` Terraform >= 0.13 -+ provider registry.terraform.io/terraform-providers/mongodbatlas v1.23.0 ++ provider registry.terraform.io/terraform-providers/mongodbatlas v1.27.0 ``` diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/main.tf b/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/main.tf index a628d19e4c..9a3be0196b 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/main.tf +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/auto-scaling-per-shard/main.tf @@ -7,60 +7,60 @@ resource "mongodbatlas_advanced_cluster" "test" { project_id = mongodbatlas_project.project.id name = "AutoScalingCluster" cluster_type = "SHARDED" - replication_specs { # first shard - region_configs { - auto_scaling { + replication_specs = [{ # first shard + region_configs = [{ + auto_scaling = { compute_enabled = true compute_max_instance_size = "M60" } - analytics_auto_scaling { + analytics_auto_scaling = { compute_enabled = true compute_max_instance_size = "M60" } - electable_specs { + electable_specs = { instance_size = "M40" node_count = 3 } - analytics_specs { + analytics_specs = { instance_size = "M40" node_count = 1 } provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } + }] zone_name = "Zone 1" - } - replication_specs { # second shard - region_configs { - auto_scaling { + }, { # second shard + region_configs = [{ + auto_scaling = { compute_enabled = true compute_max_instance_size = "M60" } - analytics_auto_scaling { + analytics_auto_scaling = { compute_enabled = true compute_max_instance_size = "M60" } - electable_specs { + electable_specs = { instance_size = "M40" node_count = 3 } - analytics_specs { + analytics_specs = { instance_size = "M40" node_count = 1 } provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } + }] zone_name = "Zone 1" - } + }] + lifecycle { # avoids non-empty plans as instance size start to scale from initial values ignore_changes = [ - replication_specs[0].region_configs[0].electable_specs[0].instance_size, - replication_specs[0].region_configs[0].analytics_specs[0].instance_size, - replication_specs[1].region_configs[0].electable_specs[0].instance_size, - replication_specs[1].region_configs[0].analytics_specs[0].instance_size + replication_specs[0].region_configs[0].electable_specs.instance_size, + replication_specs[0].region_configs[0].analytics_specs.instance_size, + replication_specs[1].region_configs[0].electable_specs.instance_size, + replication_specs[1].region_configs[0].analytics_specs.instance_size ] } } diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/README.md b/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/README.md index 80f023f2e0..75f791b75f 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/README.md +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/README.md @@ -4,12 +4,12 @@ This example creates a project and a Global Cluster with 2 zones where each zone ## Dependencies -* Terraform MongoDB Atlas Provider v1.10.0 +* Terraform MongoDB Atlas Provider v1.27.0 * A MongoDB Atlas account ``` Terraform >= 0.13 -+ provider registry.terraform.io/terraform-providers/mongodbatlas v1.10.0 ++ provider registry.terraform.io/terraform-providers/mongodbatlas v1.27.0 ``` diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/main.tf b/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/main.tf index af3644402b..166bf89ba4 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/main.tf +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/global-cluster/main.tf @@ -13,111 +13,99 @@ resource "mongodbatlas_advanced_cluster" "cluster" { backup_enabled = true - replication_specs { # shard 1 - zone n1 + replication_specs = [{ # shard 1 - zone n1 zone_name = "zone n1" - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M30" node_count = 3 } provider_name = "AWS" priority = 7 region_name = "US_EAST_1" - } - - region_configs { - electable_specs { + }, { + electable_specs = { instance_size = "M30" node_count = 2 } provider_name = "AZURE" priority = 6 region_name = "US_EAST_2" - } - } + }] + }, { # shard 2 - zone n1 - replication_specs { # shard 2 - zone n1 zone_name = "zone n1" - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M30" node_count = 3 } provider_name = "AWS" priority = 7 region_name = "US_EAST_1" - } - - region_configs { - electable_specs { + }, { + electable_specs = { instance_size = "M30" node_count = 2 } provider_name = "AZURE" priority = 6 region_name = "US_EAST_2" - } - } + }] + }, { # shard 1 - zone n2 - replication_specs { # shard 1 - zone n2 zone_name = "zone n2" - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M30" node_count = 3 } provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - - region_configs { - electable_specs { + }, { + electable_specs = { instance_size = "M30" node_count = 2 } provider_name = "AZURE" priority = 6 region_name = "EUROPE_NORTH" - } - } + }] + }, { # shard 2 - zone n2 - replication_specs { # shard 2 - zone n2 zone_name = "zone n2" - region_configs { - electable_specs { + region_configs = [{ + electable_specs = { instance_size = "M30" node_count = 3 } provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - - region_configs { - electable_specs { + }, { + electable_specs = { instance_size = "M30" node_count = 2 } provider_name = "AZURE" priority = 6 region_name = "EUROPE_NORTH" - } - } + }] + }] - advanced_configuration { + advanced_configuration = { javascript_enabled = true oplog_size_mb = 999 sample_refresh_interval_bi_connector = 300 } - tags { - key = "environment" - value = "dev" + tags = { + environment = "dev" } } diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/README.md b/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/README.md index 5051df631b..76410afef7 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/README.md +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/README.md @@ -15,7 +15,7 @@ Utilize the following to execute a working example, replacing the org id, public Apply with the following `terraform.tfvars` to first create a shared tier cluster: ``` -atlas_org_id = "627a9687f7f7f7f774de306f14" +atlas_org_id = public_key = private_key = provider_name = "TENANT" @@ -25,8 +25,8 @@ provider_instance_size_name = "M2" Apply with the following `terraform.tfvars` to upgrade the shared tier cluster you just created to dedicated tier: ``` -atlas_org_id = "627a9687f7f7f7f774de306f14" +atlas_org_id = public_key = private_key = -provider_name = "GCP" -provider_instance_size_name = "M10" \ No newline at end of file +provider_name = "AWS" +provider_instance_size_name = "M10" diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/main.tf b/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/main.tf index 863eb1b240..6a45db4f86 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/main.tf +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/tenant-upgrade/main.tf @@ -8,21 +8,20 @@ resource "mongodbatlas_advanced_cluster" "cluster" { name = "ClusterToUpgrade" cluster_type = "REPLICASET" - replication_specs { - region_configs { - electable_specs { + replication_specs = [{ + region_configs = [{ + electable_specs = { instance_size = var.provider_instance_size_name } provider_name = var.provider_name - backing_provider_name = var.backing_provider_name + backing_provider_name = var.backing_provider_name # comment out when upgrading region_name = "US_EAST_1" priority = 7 - } - } + }] + }] - tags { - key = "environment" - value = "dev" + tags = { + environment = "dev" } } diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/README.md b/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/README.md index 4acb9d2ec1..1d3b44a047 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/README.md +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/README.md @@ -8,12 +8,12 @@ The following [knowledge hub article](https://kb.corp.mongodb.com/article/000021 ## Dependencies -* Terraform MongoDB Atlas Provider v1.23.0 +* Terraform MongoDB Atlas Provider v1.27.0 * A MongoDB Atlas account ``` Terraform >= 0.13 -+ provider registry.terraform.io/terraform-providers/mongodbatlas v1.23.0 ++ provider registry.terraform.io/terraform-providers/mongodbatlas v1.27.0 ``` diff --git a/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/main.tf b/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/main.tf index e9a66f972a..ef66ff4b0c 100644 --- a/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/main.tf +++ b/examples/mongodbatlas_advanced_cluster (preview v2)/version-upgrade-with-pinned-fcv/main.tf @@ -10,24 +10,23 @@ resource "mongodbatlas_advanced_cluster" "cluster" { mongo_db_major_version = "7.0" - pinned_fcv { + pinned_fcv = { expiration_date = var.fcv_expiration_date # e.g. format: "2024-11-22T10:50:00Z". Hashicorp time provider https://registry.terraform.io/providers/hashicorp/time/latest/docs/resources/offset can be used to compute this string value. } - replication_specs { - region_configs { - electable_specs { + replication_specs = [{ + region_configs = [{ + electable_specs = { instance_size = "M10" - node_count = 3 } provider_name = "AWS" priority = 7 region_name = "EU_WEST_1" - } - } + }] + }] } output "feature_compatibility_version" { - value = mongodbatlas_advanced_cluster.cluster.pinned_fcv[0].version + value = mongodbatlas_advanced_cluster.cluster.pinned_fcv.version } diff --git a/examples/mongodbatlas_advanced_cluster/tenant-upgrade/README.md b/examples/mongodbatlas_advanced_cluster/tenant-upgrade/README.md index 5051df631b..76410afef7 100644 --- a/examples/mongodbatlas_advanced_cluster/tenant-upgrade/README.md +++ b/examples/mongodbatlas_advanced_cluster/tenant-upgrade/README.md @@ -15,7 +15,7 @@ Utilize the following to execute a working example, replacing the org id, public Apply with the following `terraform.tfvars` to first create a shared tier cluster: ``` -atlas_org_id = "627a9687f7f7f7f774de306f14" +atlas_org_id = public_key = private_key = provider_name = "TENANT" @@ -25,8 +25,8 @@ provider_instance_size_name = "M2" Apply with the following `terraform.tfvars` to upgrade the shared tier cluster you just created to dedicated tier: ``` -atlas_org_id = "627a9687f7f7f7f774de306f14" +atlas_org_id = public_key = private_key = -provider_name = "GCP" -provider_instance_size_name = "M10" \ No newline at end of file +provider_name = "AWS" +provider_instance_size_name = "M10"