-
Notifications
You must be signed in to change notification settings - Fork 178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Support pinned_fcv
in attribute in cluster resource and data sources
#2817
Conversation
e4e30f2
to
6ea2469
Compare
return diag.FromErr(fmt.Errorf(advancedcluster.ErrorClusterSetting, "redact_client_log_data", clusterName, err)) | ||
} | ||
|
||
if err := d.Set("pinned_fcv", advancedcluster.FlattenPinnedFCV(latestClusterModel)); err != nil { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as flatten function makes use of cluster SDK model, adjusted newAtlasGet
to return the model directly
``` | ||
|
||
```release-note:bug | ||
resource/mongodbatlas_cluster: `mongo_db_major_version` attribute is populated with binary version when FCV pin is active |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is related to upstream fix CLOUDP-269950 that was applied to 2024-08-05 API.
6ea2469
to
11104d2
Compare
@@ -583,6 +599,16 @@ func resourceCreate(ctx context.Context, d *schema.ResourceData, meta any) diag. | |||
} | |||
} | |||
|
|||
if pinnedFCVBlock, ok := d.Get("pinned_fcv").([]any); ok && len(pinnedFCVBlock) > 0 { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nit] looks like this isn't tested. However, since we reuse the PinFCV
I am not that concerned.
The only minor issue I can see: A failed pinning will mark the cluster as tainted and require a replace
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good point. I am not too concerned about the create path because if a cluster is being created they would define the mongodb version they wish, dont see the use case of pinning fcv from the start.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
11104d2
to
04a9fb5
Compare
04a9fb5
to
2421936
Compare
APIx bot: a message has been sent to Docs Slack channel |
* master: chore: Updates CHANGELOG.md for #2817 feat: Support `pinned_fcv` in attribute in cluster resource and data sources (#2817) doc: Updates Terraform Compatibility Matrix documentation (#2837) chore: Supports setting `retain_backups_enabled` in adv_cluster TPF (#2866) chore: Updates CHANGELOG.md for #2789 feat: Support `pinned_fcv` attribute in advanced_cluster resource and data sources (#2789) chore: Enables paused on create test (#2867) # Conflicts: # internal/service/advancedcluster/resource_advanced_cluster_test.go
… branch (#2886) * chore: Updates Atlas Go SDK (#2805) * build(deps): bump go.mongodb.org/atlas-sdk * fix breaking changes --------- Co-authored-by: wtrocki <[email protected]> Co-authored-by: Oriol Arbusi <[email protected]> * chore: Continues with data source schema auto-generation (#2815) * schema_generation * resource policy * plural datasource for resource_policy * encryption_at_rest_private_endpoint * extract project resource schema to resource_schema.go * project * rename to resource_project_schema.go * Update docs/data-sources/stream_processor.md Co-authored-by: carriecwk <[email protected]> * Update docs/data-sources/stream_processors.md Co-authored-by: carriecwk <[email protected]> * Update docs/data-sources/stream_processors.md Co-authored-by: carriecwk <[email protected]> * Update internal/service/streamprocessor/data_source_schema.go Co-authored-by: carriecwk <[email protected]> * Update internal/service/streamprocessor/data_source_schema.go Co-authored-by: carriecwk <[email protected]> * fix schema admin reference * apply feedback * stream_instance * fix project * remove checks * project_ip_access timeout as attribute * project_ip_access_list * stream_connection * update templates * remove checks * changelog * apply feedback --------- Co-authored-by: carriecwk <[email protected]> * chore: Updates CHANGELOG.md for #2815 * chore: Bump github.com/hashicorp/terraform-plugin-testing (#2809) Bumps [github.com/hashicorp/terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing) from 1.9.0 to 1.11.0. - [Release notes](https://github.com/hashicorp/terraform-plugin-testing/releases) - [Changelog](https://github.com/hashicorp/terraform-plugin-testing/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/terraform-plugin-testing/compare/v1.9.0...v1.11.0) --- updated-dependencies: - dependency-name: github.com/hashicorp/terraform-plugin-testing dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Reverts changes to project data source (#2818) * remove changelog * revert files * chore: Updates CHANGELOG.md for #2818 * feat: Adds `mongodbatlas_flex_cluster` resource and data sources (#2816) * use SDK dev-preview * chore: Generate Flex Cluster file structure and resource schema (#2702) * generate resource and schema * pr comments * correct Map * feat: Implements `mongodbatlas_flex_cluster` resource (#2716) * create implementation * read implementation * update and delete implementation * Implement model * schema refactor * format * wip: model tests * initial model test * test for NewTFModel * Test NewAtlasCreateReq * test NewAtlasUpdateReq * fix tests * refactor for tags * fixes * implement import * simplify update * basic acceptance test * wip: acc tests * fix model test * final changes on tests * changelog entry * add resource to fallback template * Update .changelog/2716.txt Co-authored-by: Agustin Bettati <[email protected]> * set resource to preview --------- Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> * chore: Enable mongodbatlas_flex_cluster test in CI (#2720) * create implementation * read implementation * update and delete implementation * initial model test * Test NewAtlasCreateReq * fixes * changelong and fix to acceptance-tests-runner.yml * fix to changelog * removed changelog * resolve rebase issue * fix to implementation * change test to use existing project id * Adjusting predeployed project id name and added preview enable * fix the naming convension of env var --------- Co-authored-by: Oriol Arbusi <[email protected]> * chore: Generate Flex Cluster data source file and schemas (#2725) * generate data source file and schema for singular Flex Cluster * Generate plural data source schema * Changing type of tags in schema * Fix to data source schema * chore: Adds state transition logic to mongodbatlas_flex_cluster resource (#2721) * implements state transition * use state transition in create, update and delete * PR comments * chore: Update operation improvements for `mongodbatlas_flex_cluster` resource (#2729) * schema refactors * revert rename * implement isUpdateAllowed * failed update test case * refactor equal checks * make more exhaustive the failed update test * remove UseStateForUnknown in state_name * wip: use plan modifier for non updatable fields * wip: use plan modifiers on all non updatable attributes * use plan modifiers to fail on update of certain attributes * rename planmodifier * simplify planmodifier * PR comments * remove attribute parameter * markdowndescription over description * test: Enable mongodbatlas_flex_cluster tests in QA environment (#2741) * feat: Implements and tests `mongodbatlas_flex_cluster` data source (#2738) * Implementing read funciton in data source * Acc test for data source * Added changelog * implementing review suggestions * fix to rebase * Adjusting default timeout of `flex_cluster` to 3 hours (#2757) * chore: Rebase dev_branch onto master_branch (#2764) * feat: Adds `is_slow_operation_thresholding_enabled` attribute to `mongodbatlas_project` (#2698) * feat: Initial support for is_slow_operation_thresholding_enabled * test: fix test cases * chore: add changelog entry * test: Add extra check for plural data source * refactor: only set SetSlowOperationThresholding once during update * chore: fix lint error * fix: need to set SetSlowOperationThresholding before reading project props from API * chore: address PR comment * doc: Add documentation for `is_slow_operation_thresholding_enabled` to project (#2700) * chore: Updates CHANGELOG.md for #2698 * chore: Use `qa` for TestSuite on Sundays (#2701) * build(deps): bump go.mongodb.org/atlas-sdk (#2705) Co-authored-by: lantoli <[email protected]> * wait in second test (#2707) * chore: Supports running Test Suite in QA on sundays (#2711) * Revert "chore: Use `qa` for TestSuite on Sundays (#2701)" This reverts commit 942e0977c2d299ccdd3d0d10179ef240e3351871. * chore: Supports running qa only on Sundays * address PR comments * refactor: move job to steps of variables * chore: Add top level description * chore: Adds SDK Preview (#2713) * add client * SDK update GHA * simulate Preview update * example of use for Admin Preview * Revert "example of use for Admin Preview" This reverts commit c5edef52847034af8cdb5daf7310743ed630f801. * rename adminPreview to adminpreview in client * example of use of SDK Preview * reverse example * go mod tidy * build(deps): bump go.mongodb.org/atlas-sdk (#2715) Co-authored-by: lantoli <[email protected]> * ci: fix env-vars for azure QA (#2709) * doc: Advanced Cluster Differences and TF Core Upgrades (#2633) * adv cluster differences doc updates * Update docs/index.md * Update index.md * Update advanced_cluster.md * Update advanced_cluster.md * Update advanced_cluster.md * Update cluster.md * Update docs/index.md Co-authored-by: maastha <[email protected]> * Update docs/resources/cluster.md Co-authored-by: maastha <[email protected]> * Update docs/resources/cluster.md Co-authored-by: Melissa Plunkett <[email protected]> * Update advanced_cluster.md * Update cluster-to-advanced-cluster-migration-guide.md --------- Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> * revert SDK preview changes (#2719) * fix: Fixes inconsistent result when using a multi-region cluster by always using a single spec (#2685) * fix: Initial workaround for multiple specs issuing a warning of spec missmatch * fix: can only use multiple specs in data source (schema limitation) * test: Add a test to confirm multi-region cluster can be used with search deployment * chore: changelog file * chore: fix test enum value * chore: revert timeout changes * Update .changelog/2685.txt Co-authored-by: kanchana-mongodb <[email protected]> --------- Co-authored-by: Leo Antoli <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> * chore: Updates CHANGELOG.md for #2685 * chore: Updates examples link in index.md for v1.21.2 release * chore: Updates CHANGELOG.md header for v1.21.2 release * fix TestAccBackupSnapshotExportJob_basic (#2723) * chore: Bump github.com/hashicorp/terraform-plugin-framework-validators (#2727) Bumps [github.com/hashicorp/terraform-plugin-framework-validators](https://github.com/hashicorp/terraform-plugin-framework-validators) from 0.13.0 to 0.14.0. - [Release notes](https://github.com/hashicorp/terraform-plugin-framework-validators/releases) - [Changelog](https://github.com/hashicorp/terraform-plugin-framework-validators/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/terraform-plugin-framework-validators/compare/v0.13.0...v0.14.0) --- updated-dependencies: - dependency-name: github.com/hashicorp/terraform-plugin-framework-validators dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: Fixes `mongodbatlas_project` when user doesn't have project owner permission (#2731) * update doc * add deprecated message * changelog * deprecate params * initial TestAccProject_slowOperationNotOwner * update version to 1.24.0 * changeRoles * Revert "changeRoles" This reverts commit c8ba3c84c2e419d468be1135b5bf408961f8f92a. * Revert "initial TestAccProject_slowOperationNotOwner" This reverts commit d1473711e888887ab5e3991f3cd7314ec52a23e2. * don't update the value if it's in Create so value is unknown * pass warnings * Update internal/service/project/resource_project.go Co-authored-by: Marco Suma <[email protected]> * apply feedback in doc * clarify docs --------- Co-authored-by: Marco Suma <[email protected]> * chore: Updates CHANGELOG.md for #2731 * chore: Merging schema generation internal tool PoC into master branch (#2735) * feat: Adds initial schema and config models for PoC - Model generation (#2638) * update computability type (#2668) * chore: PoC - Model generation - support primitive types at root level (#2673) * chore: PoC - Schema code generation - Initial support of primitive types (#2682) * initial commit with schema generation function and test fixture * small changes wip * include specific type generators * handling element types and imports * remove unrelated file * extract template logic to separate file * small revert change * extract import to const * follow up adjustments from PR comments and sync with Aastha * chore: PoC - Schema code generation - Supporting nested attributes (#2689) * support nested attribute types * rebasing changes related to unit testing adjustment * chore: PoC - Model generation - Supporting nested schema (List, ListNested, Set & SetNested) (#2693) * chore: PoC - Model generation - Supporting nested schema (objects - Map, MapNested, SingleNested Attributes) (#2704) * chore: PoC - Schema code generation - Supporting generation of typed model (#2703) * support typed model generation inlcuding root and nested attributes * minor fix for type of types map * add clarifying comment * improve name of generated object types, refactor function naming for readability * fix list map and set nested attribute generation (#2708) * chore: PoC - Model generation - support config aliases, ignores, and description overrides (#2712) * chore: PoC - Define make command to call code generation logic (#2706) * wip * iterating over all resources * add config for search deployment * update golden file test with fix in package name * use xstring implementation for pascal case * simplify write file logic * merge fixes * chore: PoC - Support configuration of timeout in schema (#2717) * wip * rebase fixes * fix logic avoiding adding timeout in nested schemas * fix generation * fix enum processing * fix golden file in timeout test * comment out unsupported config properties * simplify interfaces for attribute generation leaving common code in a separate function * chore: PoC - handle merging computability in nested attributes (#2722) * adjusting contributing guide (#2732) --------- Co-authored-by: maastha <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> * doc: Adds documentation for `replication_specs.*.external_id` computed attribute for `mongodbatlas_advanced_cluster` (#2734) * adds M0 (#2730) * docs: Remove legacy project_id attribute in docs as it has been removed (#2733) * chore: Updates examples link in index.md for v1.21.3 release * chore: Updates CHANGELOG.md header for v1.21.3 release * chore: Unify file name for plural data source schema (#2739) * change name * fix name * rename to plural_data_source.go * check cluster creation times (#2728) * fix: Adds new attribute `results` and deprecates `resource_policies` for `mongodbatlas_resource_policies` data source (#2740) * new attribute results and deprecate resource_policies * changelog entry * change test to check new attribute * fix changelog * changelog fix * fix docs * Update .changelog/2740.txt Co-authored-by: Leo Antoli <[email protected]> * migration test * skip mig test until next version * fix comment --------- Co-authored-by: Leo Antoli <[email protected]> * chore: Updates CHANGELOG.md for #2740 * build(deps): bump go.mongodb.org/atlas-sdk (#2745) Co-authored-by: wtrocki <[email protected]> * fix: Fixes change assigments in `mongodbatlas_project_api_key` (#2737) * fix changed assigments * fix TestAccProjectAPIKey_updateRole * changelog * join configMultiple to configBasic * don't allow duplicate projectIDs * fix TestAccProjectAPIKey_dataSources * refactor Create * refactor getAPIProjectAssignments and flattenProjectAssignments * refactor Read * refactor Delete * fix TestAccProjectAPIKey_recreateWhenDeletedExternally * refactor Import * remove flattenProjectAssignments, flattenProjectAPIKeyRoles and getAPIProjectAssignments * fix plural ds * fix basicTestCase * refactor Update description * refactor Update * refactor expandProjectAssignments * update changelog * initial checkAggr * checkExists * delete redundant TestAccProjectAPIKey_dataSources * refactor configDuplicatedProject * refactor configChangingProject * model file * more detailed changelog * revert import * doc * refactor checks * chore: Updates CHANGELOG.md for #2737 * chore: Updates examples link in index.md for v1.21.4 release * chore: Updates CHANGELOG.md header for v1.21.4 release * chore: Support computability override in schema generation config (#2743) * test without parsing config options * add support for override of computability in config * refactor tests removing redudant code * extract common api spec path, handle computed only case * chore: Bump crazy-max/ghaction-import-gpg from 6.1.0 to 6.2.0 (#2754) Bumps [crazy-max/ghaction-import-gpg](https://github.com/crazy-max/ghaction-import-gpg) from 6.1.0 to 6.2.0. - [Release notes](https://github.com/crazy-max/ghaction-import-gpg/releases) - [Commits](https://github.com/crazy-max/ghaction-import-gpg/compare/01dd5d3ca463c7f10f7f4f7b4f177225ac661ee4...cb9bde2e2525e640591a934b1fd28eef1dcaf5e5) --- updated-dependencies: - dependency-name: crazy-max/ghaction-import-gpg dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump actions/setup-go from 5.0.2 to 5.1.0 (#2753) Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.0.2 to 5.1.0. - [Release notes](https://github.com/actions/setup-go/releases) - [Commits](https://github.com/actions/setup-go/compare/0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32...41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed) --- updated-dependencies: - dependency-name: actions/setup-go dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump github.com/pb33f/libopenapi from 0.18.1 to 0.18.6 (#2750) Bumps [github.com/pb33f/libopenapi](https://github.com/pb33f/libopenapi) from 0.18.1 to 0.18.6. - [Release notes](https://github.com/pb33f/libopenapi/releases) - [Commits](https://github.com/pb33f/libopenapi/compare/v0.18.1...v0.18.6) --- updated-dependencies: - dependency-name: github.com/pb33f/libopenapi dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump tj-actions/verify-changed-files (#2751) Bumps [tj-actions/verify-changed-files](https://github.com/tj-actions/verify-changed-files) from 54483a2138ca67989bc40785aa22faee8b085894 to 530d86d0a237225c87beaa000750988f8965ee31. - [Release notes](https://github.com/tj-actions/verify-changed-files/releases) - [Changelog](https://github.com/tj-actions/verify-changed-files/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/verify-changed-files/compare/54483a2138ca67989bc40785aa22faee8b085894...530d86d0a237225c87beaa000750988f8965ee31) --- updated-dependencies: - dependency-name: tj-actions/verify-changed-files dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump actions/checkout from 4.2.1 to 4.2.2 (#2752) * chore: Bump actions/checkout from 4.2.1 to 4.2.2 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871...11bd71901bbe5b1630ceea73d27597364c9af683) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Trigger Build --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Leo Antoli <[email protected]> * chore: Automatically updates Terraform version used in repository and test-suite (#2755) * rename workflow (#2761) * chore: Updates Atlas Go SDK (#2748) * build(deps): bump go.mongodb.org/atlas-sdk * Pin cluster POST and PATCH operations to 2024-08-05 avoiding any unintentional shard level autoscaling * unifying version clarification in comments * use sdk utility function for checking error code value * adjust conditional of error checking preserving behaviour --------- Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> * chore: Generate Flex Cluster file structure and resource schema (#2702) * generate resource and schema * pr comments * correct Map * feat: Implements `mongodbatlas_flex_cluster` resource (#2716) * create implementation * read implementation * update and delete implementation * Implement model * schema refactor * format * wip: model tests * initial model test * test for NewTFModel * Test NewAtlasCreateReq * test NewAtlasUpdateReq * fix tests * refactor for tags * fixes * implement import * simplify update * basic acceptance test * wip: acc tests * fix model test * final changes on tests * changelog entry * add resource to fallback template * Update .changelog/2716.txt Co-authored-by: Agustin Bettati <[email protected]> * set resource to preview --------- Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> * chore: Enable mongodbatlas_flex_cluster test in CI (#2720) * create implementation * read implementation * update and delete implementation * initial model test * Test NewAtlasCreateReq * fixes * changelong and fix to acceptance-tests-runner.yml * fix to changelog * removed changelog * resolve rebase issue * fix to implementation * change test to use existing project id * Adjusting predeployed project id name and added preview enable * fix the naming convension of env var --------- Co-authored-by: Oriol Arbusi <[email protected]> * chore: Generate Flex Cluster data source file and schemas (#2725) * generate data source file and schema for singular Flex Cluster * Generate plural data source schema * Changing type of tags in schema * Fix to data source schema * chore: Adds state transition logic to mongodbatlas_flex_cluster resource (#2721) * implements state transition * use state transition in create, update and delete * PR comments * chore: Update operation improvements for `mongodbatlas_flex_cluster` resource (#2729) * schema refactors * revert rename * implement isUpdateAllowed * failed update test case * refactor equal checks * make more exhaustive the failed update test * remove UseStateForUnknown in state_name * wip: use plan modifier for non updatable fields * wip: use plan modifiers on all non updatable attributes * use plan modifiers to fail on update of certain attributes * rename planmodifier * simplify planmodifier * PR comments * remove attribute parameter * markdowndescription over description * test: Enable mongodbatlas_flex_cluster tests in QA environment (#2741) * feat: Implements and tests `mongodbatlas_flex_cluster` data source (#2738) * Implementing read funciton in data source * Acc test for data source * Added changelog * implementing review suggestions * fix to rebase * Adjusting default timeout of `flex_cluster` to 3 hours (#2757) * fixing imports * Adopting latest preview SDK version * fix flex varibale names after bump * fix atlasuser - set to continue using older SDK version * Fix to variable type names in flex unit test * fix duplicate * fix to api call in atlasUser tests --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: lantoli <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: Oriol <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: AgustinBettati <[email protected]> * feat: Implements `mongodbatlas_flex_cluster` plural data source (#2767) * Fix naming convensions in plural DS schema * Implementing plural DS read function * testing and plural ds model * fixes after rebase * additional unit testing for model * changelog * lint fix * removing parellel testing * implemented review feedback * lint fix * chore: Improvements to SDK version update (#2770) * comment use of older API version in atlasUser * add connv220240805 to factory.go * doc: Adds documentation and example for mongodbatlas_flex_cluster resource and data source (#2744) * wip: docs and example (missing data source * change version to make the CI check successful * fmt * regenerate * data source examples * readme created - to adjust preview feature note on release of flex to prod * data source templates * fix typo * generate data source documentation * fix to flex_cluster example * fix to flex_cluster example * fix to generated docs * Added flex to dedicated migration guide * fix typo * Implementing feedback and improving flex-dedicated migratoin guide * adjust flex example README.md * fix to example --------- Co-authored-by: Melanija Cvetic <[email protected]> * deprecate: Deprecates Serverless functionality (#2742) * deprecates serverless functionality * documentation * deprecate attributes in data sources * set link to migration guide with supported migration paths * doc: Adds migration guides to transition out of Serverless and Shared-tier clusters (#2746) * wip: migration guides * add details on 1.22 guide * remove guide, will be in resource docs * wip: correct details on 1.22 guide * added migration guide for serverless to flex and serverless to dedicated * added migration guide for shared-tier to flex * added migration guide for serverless to free * implementing review feedback * implementing feedback to guide * changes to migration guide * Adjustments to migration guides * put URL instead of placeholder * move post before pre autoconversion guides, clarify serverless to dedicated * pr comment * pr comments * Update docs/guides/1.22.0-upgrade-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/1.22.0-upgrade-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: cveticm <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: cveticm <[email protected]> --------- Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> Co-authored-by: cveticm <[email protected]> * chore: Removes mentions and examples of Serverless and Shared-tier instances (#2811) * wip remove mentions of serverless and shared tier * remove examples from template for serverless privatelink * change from M5 to M0 for tenant examples of adv cluster * add note on M0 * chore: Refactor tags attribute schema and conversion logic (#2788) * Implements tag as common function * Refactor project and flex cluster to use new common tag functions * fix to testing and lint * fix changelog entry * january or later for shared tier autoconversion * auto-generate singular data source, temporarily with checks * remove singular data source check * update Description in plural data source --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> Co-authored-by: cveticm <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: lantoli <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> * chore: Updates CHANGELOG.md for #2816 * fix: Adds changelog for decreased delay in `mongobatlas_privatelink_endpoint_service` (#2819) * Adds changelog * Fix to changelog * Fix to changelog * chore: Updates CHANGELOG.md for #2819 * chore: Adds initial TPF implementation for advanced_cluster (#2813) * initial create operation * initial resource implementation * support returning nil when advanced config fields are null * test: Add support for overriding http round tripper to allow mocking http request/responses * minor error renaming * remove mocked responses * test: initial TestAdvancedCluster_configSharded requests * chore: use same admin version as existing cluster * mock: allow re-reading GETs * test: support raising error when mock variables are not set * fix: don't dump GroupID in cluster payloads * test: update test case to match existing * refactor: use full request.id() to keep aligned with generator format (differentiate requests with the distinct payloads) * fix: add `computed` to adv_cluster attributes to avoid provider errors * test: minor mock fixes * feat: support state transitions and pause logic * chore: test data updates * test: Support overriding diff files by using `_manual` suffix * style: fmt * test: delete old mock files * test: rename basic to replicast * fix: Deleted should support IDLE --> DELETED * fix: cluster name update requires replace * test: Add tenant test case * chore: include provider changes * fix(move_state): Use ValueString() and do a proper conversion * test: Support mocking test case * refactor: use new `unit.MockTestCase` to simplify resource_test.go * test: Introduce "live" acceptance test for tpf * refactor: re-use existing retry strategy states * refactor: introduce constant.error_codes * refactor: minor cleanups * test: Refactor MockTestCase to also run and support setting TF_ACC dynamically * chore: increase unit test timeout to enable tpf unit tests * minor improvements * unit test timeout increase. Used 75s locally * ci: support running mocked acceptance tests as part of advanced_cluster_tpf job * ci: as of now, advancedclustertpf unit tests cannot run as part of normal unit test since the resource is not added in provider * test: Skip broken move_state_tests * minor fix * chore: fix imports to latest SDK * estetic change to workflow file * refactor: Use provider_mock instead of customizing existing provider (revert all changes to client.go and provider.go * address PR comments * use `diags` instead of returning summary, detail * only removeResource in read * address immediate PR comments * refactor: Use a higher abstraction level in update * refactor: Return TFModel to make purpose more explicit * refactor: Replace awaitChanges method with AwaitChanges function for improved clarity and consistency * apply suggestion * chore: Add step count assertion * refactor: move out all the unit tests and mocked unit test logic * remove: accidental provider changes * remove last changes for unit tests * build(deps): bump go.mongodb.org/atlas-sdk (#2823) Co-authored-by: wtrocki <[email protected]> * fix: Fixes tags in `mongodbatlas_flex_cluster` (#2829) * fix tags * add tests * fix * chore: Updates examples link in index.md for v1.22.0 release * chore: Updates CHANGELOG.md header for v1.22.0 release * doc: Add preview notice in `mongodbatlas_flex_cluster` docs (#2830) * preview notice * small fix * chore: Bump github.com/wI2L/jsondiff from 0.6.0 to 0.6.1 (#2835) Bumps [github.com/wI2L/jsondiff](https://github.com/wI2L/jsondiff) from 0.6.0 to 0.6.1. - [Release notes](https://github.com/wI2L/jsondiff/releases) - [Changelog](https://github.com/wI2L/jsondiff/blob/master/.goreleaser.yml) - [Commits](https://github.com/wI2L/jsondiff/compare/v0.6.0...v0.6.1) --- updated-dependencies: - dependency-name: github.com/wI2L/jsondiff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump actions/checkout from 4.2.1 to 4.2.2 (#2833) Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4.2.1...11bd71901bbe5b1630ceea73d27597364c9af683) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Update tj-actions/verify-changed-files requirement to 530d86d0a237225c87beaa000750988f8965ee31 (#2832) Updates the requirements on [tj-actions/verify-changed-files](https://github.com/tj-actions/verify-changed-files) to permit the latest version. - [Release notes](https://github.com/tj-actions/verify-changed-files/releases) - [Changelog](https://github.com/tj-actions/verify-changed-files/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/verify-changed-files/commits/530d86d0a237225c87beaa000750988f8965ee31) --- updated-dependencies: - dependency-name: tj-actions/verify-changed-files dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump srvaroa/labeler from 1.11.1 to 1.12.0 (#2831) Bumps [srvaroa/labeler](https://github.com/srvaroa/labeler) from 1.11.1 to 1.12.0. - [Release notes](https://github.com/srvaroa/labeler/releases) - [Commits](https://github.com/srvaroa/labeler/compare/29471ee1118fa4e10b011964e6e8fe2fd243e700...fe4b1c73bb8abf2f14a44a6912a8b4fee835d631) --- updated-dependencies: - dependency-name: srvaroa/labeler dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 (#2834) Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.9.0 to 1.10.0. - [Release notes](https://github.com/stretchr/testify/releases) - [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0) --- updated-dependencies: - dependency-name: github.com/stretchr/testify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump slackapi/slack-github-action from 1.27.0 to 2.0.0 (#2810) * chore: Bump slackapi/slack-github-action from 1.27.0 to 2.0.0 Bumps [slackapi/slack-github-action](https://github.com/slackapi/slack-github-action) from 1.27.0 to 2.0.0. - [Release notes](https://github.com/slackapi/slack-github-action/releases) - [Commits](https://github.com/slackapi/slack-github-action/compare/37ebaef184d7626c5f204ab8d3baff4262dd30f0...485a9d42d3a73031f12ec201c457e2162c45d02d) --- updated-dependencies: - dependency-name: slackapi/slack-github-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * chore: Adjusting how webhook-type is provided in new slack-github-action 2.0 version --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Agustin Bettati <[email protected]> * chore: Updates repository to use supported Terraform versions (#2838) Co-authored-by: maastha <[email protected]> * chore: Test converter for TPF (#2822) * initial create operation * initial resource implementation * support returning nil when advanced config fields are null * test: Add support for overriding http round tripper to allow mocking http request/responses * minor error renaming * remove mocked responses * test: initial TestAdvancedCluster_configSharded requests * chore: use same admin version as existing cluster * mock: allow re-reading GETs * test: support raising error when mock variables are not set * fix: don't dump GroupID in cluster payloads * test: update test case to match existing * refactor: use full request.id() to keep aligned with generator format (differentiate requests with the distinct payloads) * fix: add `computed` to adv_cluster attributes to avoid provider errors * test: minor mock fixes * feat: support state transitions and pause logic * chore: test data updates * test: Support overriding diff files by using `_manual` suffix * style: fmt * test: delete old mock files * test: rename basic to replicast * fix: Deleted should support IDLE --> DELETED * fix: cluster name update requires replace * test: Add tenant test case * chore: include provider changes * fix(move_state): Use ValueString() and do a proper conversion * test: Support mocking test case * refactor: use new `unit.MockTestCase` to simplify resource_test.go * test: Introduce "live" acceptance test for tpf * refactor: re-use existing retry strategy states * refactor: introduce constant.error_codes * refactor: minor cleanups * test: Refactor MockTestCase to also run and support setting TF_ACC dynamically * chore: increase unit test timeout to enable tpf unit tests * minor improvements * unit test timeout increase. Used 75s locally * ci: support running mocked acceptance tests as part of advanced_cluster_tpf job * ci: as of now, advancedclustertpf unit tests cannot run as part of normal unit test since the resource is not added in provider * test: Skip broken move_state_tests * minor fix * chore: fix imports to latest SDK * estetic change to workflow file * refactor: Use provider_mock instead of customizing existing provider (revert all changes to client.go and provider.go * address PR comments * use `diags` instead of returning summary, detail * only removeResource in read * address immediate PR comments * refactor: Use a higher abstraction level in update * refactor: Return TFModel to make purpose more explicit * refactor: Replace awaitChanges method with AwaitChanges function for improved clarity and consistency * apply suggestion * chore: Add step count assertion * refactor: move out all the unit tests and mocked unit test logic * remove: accidental provider changes * remove last changes for unit tests * enable TestAccClusterAdvancedCluster_basicTenant in TPF * initial unit test * AssertEqualHCL * AssertEqualHCL tests * call ConvertAdvancedClusterToTPF from tests * update go-cty * use more complex test * passing TestConvertAdvancedClusterToTPF * refactor * revert go.mod & go.sum * revertgithub.com/hashicorp/terraform-plugin-testing to v1.11.0 * go mod tidy * getBlockBody * enable env var * test without env * CheckDestroyCluster for TPF * don't check exists or data sources yet * import tests in TPF --------- Co-authored-by: Espen Albert <[email protected]> * test: Adds support for mocked-acceptance-tests (#2820) * initial create operation * initial resource implementation * support returning nil when advanced config fields are null * test: Add support for overriding http round tripper to allow mocking http request/responses * minor error renaming * remove mocked responses * test: initial TestAdvancedCluster_configSharded requests * chore: use same admin version as existing cluster * mock: allow re-reading GETs * test: support raising error when mock variables are not set * fix: don't dump GroupID in cluster payloads * test: update test case to match existing * refactor: use full request.id() to keep aligned with generator format (differentiate requests with the distinct payloads) * fix: add `computed` to adv_cluster attributes to avoid provider errors * test: minor mock fixes * feat: support state transitions and pause logic * chore: test data updates * test: Support overriding diff files by using `_manual` suffix * style: fmt * test: delete old mock files * test: rename basic to replicast * fix: Deleted should support IDLE --> DELETED * fix: cluster name update requires replace * test: Add tenant test case * chore: include provider changes * fix(move_state): Use ValueString() and do a proper conversion * test: Support mocking test case * refactor: use new `unit.MockTestCase` to simplify resource_test.go * test: Introduce "live" acceptance test for tpf * refactor: re-use existing retry strategy states * refactor: introduce constant.error_codes * refactor: minor cleanups * test: Refactor MockTestCase to also run and support setting TF_ACC dynamically * chore: increase unit test timeout to enable tpf unit tests * minor improvements * unit test timeout increase. Used 75s locally * ci: support running mocked acceptance tests as part of advanced_cluster_tpf job * ci: as of now, advancedclustertpf unit tests cannot run as part of normal unit test since the resource is not added in provider * test: Skip broken move_state_tests * minor fix * chore: fix imports to latest SDK * estetic change to workflow file * refactor: Use provider_mock instead of customizing existing provider (revert all changes to client.go and provider.go * address PR comments * use `diags` instead of returning summary, detail * only removeResource in read * address immediate PR comments * refactor: Use a higher abstraction level in update * refactor: Return TFModel to make purpose more explicit * refactor: Replace awaitChanges method with AwaitChanges function for improved clarity and consistency * apply suggestion * chore: Add step count assertion * refactor: move out all the unit tests and mocked unit test logic * remove: accidental provider changes * remove last changes for unit tests * test: Add support for mocked acceptance tests * test: Support maintaining response order with responseIndex * test: update test data for adv cluster unit tests * test: mocker use colored diffs and support empty payloads in diffs * update mocker test data * test: Add check for AllowReReading * test: Add labels and tags to mock cluster JSON test data * update old guides (#2842) * chore: Includes the rest of blocks in TPF test converter (#2841) * don't remove double lines * enable TestAccClusterAdvancedCluster_withTags * tests for labels and tests * label and tags converter * common generateAllAttributeSpecs * change getVal return type * simplify generateAllAttrSpecs call * don't run data source checks for TPF yet * test for advanced_configuration * converter for advanced_configuration * bi_connector_config transform * test for bi_connector_config * fix tests * make explicit dependency from ds * Fix error message typo (#2843) When there's an error setting the `private_key`, it should output an error message mentioning `private_key` instead of `public_key` * chore: Plural data sources in TPF leveraging on resource data source (#2844) * PluralDataSourceSchemaFromResource * flexcluster * flexcluster doc * overridenFields and overridenRootFields in PluralDataSourceSchemaFromResource * advancedclustertpf * encryptionatrestprivateendpoint * resourcepolicy * streamconnection * streaminstance * fix TestPaginatedDSSchema * streamprocessor * remove checks and unneeded code * doc feedback * use struct for params * chore: Environment variable to enable dual schema (#2847) * LatestAdvancedClusterEnabled * TEMPORARY check allowLatestAdvancedClusterEnabled is caught * Revert "TEMPORARY check allowLatestAdvancedClusterEnabled is caught" This reverts commit 1694766b9884cfc3d501e1c210b2bd6154eccd50. * configure resource * make goal * CI config * use config.LatestAdvancedClusterEnabled * TEMPORARY check converter is caught * Revert "TEMPORARY check converter is caught" This reverts commit 98c34f37be7beab76f3be7aeb4a1862177497151. * chore: Adds support for multiple API versions for adv_cluster TPF (#2840) * feat: Support update.IsEmpty * initial start of `num_shards` support * feat: differentiate API Versions used * chore: formatting * feat: intial usage of latest admin api * feat: implement support for num_shards and add legacy compatibility functions for CREATE * chore: use ordinary diffs instead of colors * refactor: remove commented-out code * test: pass static orgID for unit testing * chore: initial working legacy schema * minor cleanup before review * test: Add acceptance test SymmetricShardedOldSchemaDiskSizeGBAtElectableLevel * feat: enhance disk size handling and normalization in advanced cluster resource * chore: PatchPayload, support IgnoreInState * address some PR comments * chore: Avoid update options (handled in normalize instead) * test: refresh golden file * feat: Initial update support using 20240530 * refactor: Always set root disk size * chore: update to use correct test data * refactor: always set rootDiskSize * refactor: update legacy model to include disk size and adjust replication specs handling * feat: add tests and mock data for symmetric sharded old schema configuration+Handle MongoDBMajor version formatting * test: fix mock file and remove manual change * chore: fix broken sharded test * refactor: minor refactorings * fix: Address PR comments * test: Change log message to fatal error for missing steps in request tracker * address PR comments 2 * wait in each cluster creation (#2848) * build(deps): bump go.mongodb.org/atlas-sdk (#2849) Co-authored-by: wtrocki <[email protected]> * chore: Implements Move State (#2850) * move state impl * fix TestAccAdvancedCluster_move_invalid * TestAccAdvancedCluster_move_not_supported_sdkv2 * apply feedback * rename env var to MONGODB_ATLAS_ADVANCED_CLUSTER_V2_SCHEMA and associated elements * rename SkipIfTPFAdvancedCluster to SkipIfAdvancedClusterV2Schema * parallel tests for move * add last step so no dangling resources * chore: Bump tj-actions/verify-changed-files (#2853) Bumps [tj-actions/verify-changed-files](https://github.com/tj-actions/verify-changed-files) from 530d86d0a237225c87beaa000750988f8965ee31 to dc57d4518c9e75995e0fff59265333d19a684163. - [Release notes](https://github.com/tj-actions/verify-changed-files/releases) - [Changelog](https://github.com/tj-actions/verify-changed-files/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/verify-changed-files/compare/530d86d0a237225c87beaa000750988f8965ee31...dc57d4518c9e75995e0fff59265333d19a684163) --- updated-dependencies: - dependency-name: tj-actions/verify-changed-files dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump github.com/zclconf/go-cty from 1.15.0 to 1.15.1 (#2854) Bumps [github.com/zclconf/go-cty](https://github.com/zclconf/go-cty) from 1.15.0 to 1.15.1. - [Release notes](https://github.com/zclconf/go-cty/releases) - [Changelog](https://github.com/zclconf/go-cty/blob/main/CHANGELOG.md) - [Commits](https://github.com/zclconf/go-cty/compare/v1.15.0...v1.15.1) --- updated-dependencies: - dependency-name: github.com/zclconf/go-cty dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Implements extra API Calls for AdvancedCluster TPF (#2852) * chore: Add support for ExtraAPIInfo in TFModel to find replication_specs.*.container_id * feat: Initial /tenantUpgrade logic * refactor: Fix zoneName default for legacy schema * address PR comments part 1 * use explicit code instead of comments Co-authored-by: Leo Antoli <[email protected]> * chore: remove comments and fix suggested change commit * chore: remove comment * address PR comments 2 * test: hard code extra container response --------- Co-authored-by: Leo Antoli <[email protected]> * build(deps): bump go.mongodb.org/atlas-sdk (#2856) Co-authored-by: lantoli <[email protected]> * update Go and linter (#2857) * chore: Ensures that MoveState works in all supported TF versions (#2858) * rename adv schema files * run MoveState matrix in GH * run MoveState tests only if TF version is at least 1.8.0 * revert change * clarify doc * only if above 1.8 * extract acc.CheckExistsCluster and use it in both cluster and adv_cluster (#2860) * chore: Updates repository to use supported Terraform versions (#2861) Co-authored-by: maastha <[email protected]> * chore: Enables all tests for TPF (#2862) * ConvertToTPFAttrsMap * use ConvertToTPFAttrsMap * move TPF test help funcs to the same file * acc.ConvertToTPFAttrsMap returns the attrs instead of mutating the input * ConvertToTPFAttrsSet * delete all SkipIfAdvancedClusterV2Schema except the ones already tried * adjust datasource checks * use ConvertAdvancedClusterToTPF( * refactor attrNameToSchemaV2 * skip some tests * skip more tests * add use_replication_spec_per_shard to data source schema * more tests skipped * don't use dynamic blocks so it can work in TPF as well * missing quotes * fix dynamic block extract * enable mig tests * skip specific mig tests * fix mig tests * skip TestMigAdvancedCluster_asymmetricShardedNewSchema * chore: Adds equivalent CRUD logic for Advanced Cluster TPF (#2855) * chore: remove immediate TODOs from schema * feat: Support retainBackups usage * refactor: Update API info handling and remove legacy schema references * feat: Enhance legacy ID handling in replication specs and update related functions * feat: Add validation for oplog_size_mb attribute in AdvancedConfigurationSchema * remove more todos * test: deleted unused diff files * feat: Support only updating advanced_configuration in update * feat: Add validation for MongoDB version compatibility in advanced configuration * chore: fix comment location * feat: support partial updates and fix advanced_config updates * perf: Support re-using /containers response based on cloud provider * refactor: Remove all UseStateForUnknown * refactor: Always read advanced_configuration, even when there are no changes. Even though plan has no changes with state, we cannot be sure that something has changed externally, better to ensure state always have the latest values * refactor: improve schema validation and plan modifiers * fix: address PR comments * fix: pause set on create * fix: set default value for changeStreamOptionsPreAndPostImagesExpireAfterSeconds to -1 when unset by user and handle `null` reponse from API * Revert "refactor: Always read advanced_configuration, even when there are no changes. Even though plan has no changes with state, we cannot be sure that something has changed externally, better to ensure state always have the latest values" This reverts commit c73d938542126586ea124431346ad4777c875f1c. * feat: Adds new `advanced_configuration.0.default_max_time_ms` attribute to `mongodbatlas_advanced_cluster` resource and data sources (#2825) * chore: Updates CHANGELOG.md for #2825 * chore: Updates Atlas Go SDK (#2870) * build(deps): bump go.mongodb.org/atlas-sdk * fix breaking changes --------- Co-authored-by: lantoli <[email protected]> * chore: Enables paused on create test (#2867) * feat: Support `pinned_fcv` attribute in advanced_cluster resource and data sources (#2789) * wip * support pinning with and without expiration date * add support for unpinning on update * commented code for handling validation * make expiration date required * add waiting before continueing with other updates * handle fcv during creation * add support for singular data source * add in plural data source * add changelog entry * add in cluster tpf schema * include docs for fcv * adding warning to provide reduce possibility of re-applying fcv * adding acceptance test * adjust changelog entry file * specify date format in docs * add step to verify incorrect format * add skipping in advanced_cluster tpf * add tpf limited implementation * adjust test and fix in plural data source to capture upgrade and downgrade * handle warning when expiration date has passed * add knowledge hub article reference * adding example * fix example formatting * add changelog for mongo_db_major_version fix * applying doc review changes * adding link to new docs page * applying doc review changes * pr review comments * extract checks into unified function * minor refactors * chore: Updates CHANGELOG.md for #2789 * chore: Supports setting `retain_backups_enabled` in adv_cluster TPF (#2866) * chore: Refactor advanced cluster tests and enhance compatibility handling for RetainBackupsEnabled * chore: Skip Migration tests and adjust checks to be compatible * chore: Update disk IOPS attribute handling for TPF compatibility and expose AttrNameToSchemaV2 * Update internal/testutil/acc/advanced_cluster_schema_v2.go Co-authored-by: Leo Antoli <[email protected]> * chore: Fix formatting in AttrNameToSchemaV2 function for consistency * chore: Rename function to better reflect its purpose in handling attribute state --------- Co-authored-by: Leo Antoli <[email protected]> * doc: Updates Terraform Compatibility Matrix documentation (#2837) Co-authored-by: maastha <[email protected]> * feat: Support `pinned_fcv` in attribute in cluster resource and data sources (#2817) * add resource and data source implementations * apply docs changes * reuse checks from advanced cluster test for fcv pinning * simplify if * chore: Updates CHANGELOG.md for #2817 * chore: Bump golang.org/x/crypto from 0.29.0 to 0.31.0 (#2881) Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.29.0 to 0.31.0. - [Commits](https://github.com/golang/crypto/compare/v0.29.0...v0.31.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Updates repository to use supported Terraform versions (#2883) Co-authored-by: maastha <[email protected]> * chore: Makes test checks valid for SDKv2 and TPF (#2882) * enable data source tests removing calls to AdvancedClusterV2Schema * schemav2 helper check funcs * skip data sources checks in tpf * rename funcs to use schemav2 naming * implement check funcs for schema v2 * testCheckFuncAlwaysPass * move ConvertAdvancedClusterToSchemaV2 to config funcs * avoid relying on resource id and instead on attribute directly --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: Oriol Arbusi <[email protected]> Co-authored-by: Leo Antoli <[email protected]> Co-authored-by: carriecwk <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: cveticm <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: Sérgio Silva <[email protected]>
…uster` (#2891) * feat: Adjust `mongodbatlas_advanced_cluster` update operation to use latest sdk (#2814) * change API call version * removed temporary 20240805 functions and adjust create operation * added changelog * adjusted comments * Implements review feedback * feat: Ensures asymmetric auto-scaling is not defined in the cluster when using the old sharding configuration in `mongodbatlas_advanced_cluster` (#2836) * use old API when the old schema structure is used * changelog * changelog fix * add feature to adv_cluster tpf todo * pr comments * test: Add tests for `mongodb_advanced_cluster` covering transitions to auto-scaling mode (#2851) * implement GetIndependentShardScalingMode * add tests * add comment on fixed version * use base url from env variable to make tests work in QA * chore: Refactor read operation in 'mongodb_advanced_cluster' (#2839) * Initial implementation * Removes redundant comments * Moves old shard config flatten logic to keep generic flatten function * Removes redundant comments * Adds testing to GetReplicationSpecAttributesFromOldAPI * Adds unit testing and fixes comments * Fixes lint * Changes names OldShardConfig to OldShardingConfig and removes redundant DS function * Adds comments * Changes test name * move OldShardConfigMeta to model file --------- Co-authored-by: Oriol Arbusi <[email protected]> * test: Refactor tests for `mongodb_advanced_cluster` covering transitions to auto-scaling mode (#2863) * refactor tests * cover geo sharded case * temp: change to run tests in CI * chore: Refactors read operation of `mongodbatlas_advanced_cluster` data sources (#2859) * refactor read operation of data sources to be like the resource read operation * wip:fix test * Revert "wip:fix test" This reverts commit 990d88cd0bb0785289b5068be0ea94d6db5903a6. * small cleanup * fix * handle ASYMMETRIC_SHARD_UNSUPPORTED * fix unit test * simplify if * handle ASYMMETRIC_SHARD_UNSUPPORTED in singular data source as was done in previous implementation * Revert "handle ASYMMETRIC_SHARD_UNSUPPORTED in singular data source as was done in previous implementation" This reverts commit 439f7fe7d32022f3de510bdcdc4d95a2b3f1e2be. * fix error handling * adapt test * final changes * pr comments * pr * fix test * typo * test check * mig test skip * doc: Adjusting `advanced_cluster` documentation reflecting changes in how auto scaling properties work (#2873) * auto_scaling doc improvements * add mention of independent shard scaling in autoscaling attribute * add mention for replication_spec id * unify note on automatic changes to reduce verbosity * wording change * clarify that empty string is encountered * doc: Adjusting new sharding configuration migration guide with auto-scaling considerations + examples (#2879) * adjust new sharding configuration migration guide with autoscaling considerations, as well as an example * minor working fix * fmt fix * minor edit * apply doc review changes * chore: Merge latest changes in master into auto-scaling per shard dev branch (#2886) * chore: Updates Atlas Go SDK (#2805) * build(deps): bump go.mongodb.org/atlas-sdk * fix breaking changes --------- Co-authored-by: wtrocki <[email protected]> Co-authored-by: Oriol Arbusi <[email protected]> * chore: Continues with data source schema auto-generation (#2815) * schema_generation * resource policy * plural datasource for resource_policy * encryption_at_rest_private_endpoint * extract project resource schema to resource_schema.go * project * rename to resource_project_schema.go * Update docs/data-sources/stream_processor.md Co-authored-by: carriecwk <[email protected]> * Update docs/data-sources/stream_processors.md Co-authored-by: carriecwk <[email protected]> * Update docs/data-sources/stream_processors.md Co-authored-by: carriecwk <[email protected]> * Update internal/service/streamprocessor/data_source_schema.go Co-authored-by: carriecwk <[email protected]> * Update internal/service/streamprocessor/data_source_schema.go Co-authored-by: carriecwk <[email protected]> * fix schema admin reference * apply feedback * stream_instance * fix project * remove checks * project_ip_access timeout as attribute * project_ip_access_list * stream_connection * update templates * remove checks * changelog * apply feedback --------- Co-authored-by: carriecwk <[email protected]> * chore: Updates CHANGELOG.md for #2815 * chore: Bump github.com/hashicorp/terraform-plugin-testing (#2809) Bumps [github.com/hashicorp/terraform-plugin-testing](https://github.com/hashicorp/terraform-plugin-testing) from 1.9.0 to 1.11.0. - [Release notes](https://github.com/hashicorp/terraform-plugin-testing/releases) - [Changelog](https://github.com/hashicorp/terraform-plugin-testing/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/terraform-plugin-testing/compare/v1.9.0...v1.11.0) --- updated-dependencies: - dependency-name: github.com/hashicorp/terraform-plugin-testing dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Reverts changes to project data source (#2818) * remove changelog * revert files * chore: Updates CHANGELOG.md for #2818 * feat: Adds `mongodbatlas_flex_cluster` resource and data sources (#2816) * use SDK dev-preview * chore: Generate Flex Cluster file structure and resource schema (#2702) * generate resource and schema * pr comments * correct Map * feat: Implements `mongodbatlas_flex_cluster` resource (#2716) * create implementation * read implementation * update and delete implementation * Implement model * schema refactor * format * wip: model tests * initial model test * test for NewTFModel * Test NewAtlasCreateReq * test NewAtlasUpdateReq * fix tests * refactor for tags * fixes * implement import * simplify update * basic acceptance test * wip: acc tests * fix model test * final changes on tests * changelog entry * add resource to fallback template * Update .changelog/2716.txt Co-authored-by: Agustin Bettati <[email protected]> * set resource to preview --------- Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> * chore: Enable mongodbatlas_flex_cluster test in CI (#2720) * create implementation * read implementation * update and delete implementation * initial model test * Test NewAtlasCreateReq * fixes * changelong and fix to acceptance-tests-runner.yml * fix to changelog * removed changelog * resolve rebase issue * fix to implementation * change test to use existing project id * Adjusting predeployed project id name and added preview enable * fix the naming convension of env var --------- Co-authored-by: Oriol Arbusi <[email protected]> * chore: Generate Flex Cluster data source file and schemas (#2725) * generate data source file and schema for singular Flex Cluster * Generate plural data source schema * Changing type of tags in schema * Fix to data source schema * chore: Adds state transition logic to mongodbatlas_flex_cluster resource (#2721) * implements state transition * use state transition in create, update and delete * PR comments * chore: Update operation improvements for `mongodbatlas_flex_cluster` resource (#2729) * schema refactors * revert rename * implement isUpdateAllowed * failed update test case * refactor equal checks * make more exhaustive the failed update test * remove UseStateForUnknown in state_name * wip: use plan modifier for non updatable fields * wip: use plan modifiers on all non updatable attributes * use plan modifiers to fail on update of certain attributes * rename planmodifier * simplify planmodifier * PR comments * remove attribute parameter * markdowndescription over description * test: Enable mongodbatlas_flex_cluster tests in QA environment (#2741) * feat: Implements and tests `mongodbatlas_flex_cluster` data source (#2738) * Implementing read funciton in data source * Acc test for data source * Added changelog * implementing review suggestions * fix to rebase * Adjusting default timeout of `flex_cluster` to 3 hours (#2757) * chore: Rebase dev_branch onto master_branch (#2764) * feat: Adds `is_slow_operation_thresholding_enabled` attribute to `mongodbatlas_project` (#2698) * feat: Initial support for is_slow_operation_thresholding_enabled * test: fix test cases * chore: add changelog entry * test: Add extra check for plural data source * refactor: only set SetSlowOperationThresholding once during update * chore: fix lint error * fix: need to set SetSlowOperationThresholding before reading project props from API * chore: address PR comment * doc: Add documentation for `is_slow_operation_thresholding_enabled` to project (#2700) * chore: Updates CHANGELOG.md for #2698 * chore: Use `qa` for TestSuite on Sundays (#2701) * build(deps): bump go.mongodb.org/atlas-sdk (#2705) Co-authored-by: lantoli <[email protected]> * wait in second test (#2707) * chore: Supports running Test Suite in QA on sundays (#2711) * Revert "chore: Use `qa` for TestSuite on Sundays (#2701)" This reverts commit 942e0977c2d299ccdd3d0d10179ef240e3351871. * chore: Supports running qa only on Sundays * address PR comments * refactor: move job to steps of variables * chore: Add top level description * chore: Adds SDK Preview (#2713) * add client * SDK update GHA * simulate Preview update * example of use for Admin Preview * Revert "example of use for Admin Preview" This reverts commit c5edef52847034af8cdb5daf7310743ed630f801. * rename adminPreview to adminpreview in client * example of use of SDK Preview * reverse example * go mod tidy * build(deps): bump go.mongodb.org/atlas-sdk (#2715) Co-authored-by: lantoli <[email protected]> * ci: fix env-vars for azure QA (#2709) * doc: Advanced Cluster Differences and TF Core Upgrades (#2633) * adv cluster differences doc updates * Update docs/index.md * Update index.md * Update advanced_cluster.md * Update advanced_cluster.md * Update advanced_cluster.md * Update cluster.md * Update docs/index.md Co-authored-by: maastha <[email protected]> * Update docs/resources/cluster.md Co-authored-by: maastha <[email protected]> * Update docs/resources/cluster.md Co-authored-by: Melissa Plunkett <[email protected]> * Update advanced_cluster.md * Update cluster-to-advanced-cluster-migration-guide.md --------- Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> * revert SDK preview changes (#2719) * fix: Fixes inconsistent result when using a multi-region cluster by always using a single spec (#2685) * fix: Initial workaround for multiple specs issuing a warning of spec missmatch * fix: can only use multiple specs in data source (schema limitation) * test: Add a test to confirm multi-region cluster can be used with search deployment * chore: changelog file * chore: fix test enum value * chore: revert timeout changes * Update .changelog/2685.txt Co-authored-by: kanchana-mongodb <[email protected]> --------- Co-authored-by: Leo Antoli <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> * chore: Updates CHANGELOG.md for #2685 * chore: Updates examples link in index.md for v1.21.2 release * chore: Updates CHANGELOG.md header for v1.21.2 release * fix TestAccBackupSnapshotExportJob_basic (#2723) * chore: Bump github.com/hashicorp/terraform-plugin-framework-validators (#2727) Bumps [github.com/hashicorp/terraform-plugin-framework-validators](https://github.com/hashicorp/terraform-plugin-framework-validators) from 0.13.0 to 0.14.0. - [Release notes](https://github.com/hashicorp/terraform-plugin-framework-validators/releases) - [Changelog](https://github.com/hashicorp/terraform-plugin-framework-validators/blob/main/CHANGELOG.md) - [Commits](https://github.com/hashicorp/terraform-plugin-framework-validators/compare/v0.13.0...v0.14.0) --- updated-dependencies: - dependency-name: github.com/hashicorp/terraform-plugin-framework-validators dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * fix: Fixes `mongodbatlas_project` when user doesn't have project owner permission (#2731) * update doc * add deprecated message * changelog * deprecate params * initial TestAccProject_slowOperationNotOwner * update version to 1.24.0 * changeRoles * Revert "changeRoles" This reverts commit c8ba3c84c2e419d468be1135b5bf408961f8f92a. * Revert "initial TestAccProject_slowOperationNotOwner" This reverts commit d1473711e888887ab5e3991f3cd7314ec52a23e2. * don't update the value if it's in Create so value is unknown * pass warnings * Update internal/service/project/resource_project.go Co-authored-by: Marco Suma <[email protected]> * apply feedback in doc * clarify docs --------- Co-authored-by: Marco Suma <[email protected]> * chore: Updates CHANGELOG.md for #2731 * chore: Merging schema generation internal tool PoC into master branch (#2735) * feat: Adds initial schema and config models for PoC - Model generation (#2638) * update computability type (#2668) * chore: PoC - Model generation - support primitive types at root level (#2673) * chore: PoC - Schema code generation - Initial support of primitive types (#2682) * initial commit with schema generation function and test fixture * small changes wip * include specific type generators * handling element types and imports * remove unrelated file * extract template logic to separate file * small revert change * extract import to const * follow up adjustments from PR comments and sync with Aastha * chore: PoC - Schema code generation - Supporting nested attributes (#2689) * support nested attribute types * rebasing changes related to unit testing adjustment * chore: PoC - Model generation - Supporting nested schema (List, ListNested, Set & SetNested) (#2693) * chore: PoC - Model generation - Supporting nested schema (objects - Map, MapNested, SingleNested Attributes) (#2704) * chore: PoC - Schema code generation - Supporting generation of typed model (#2703) * support typed model generation inlcuding root and nested attributes * minor fix for type of types map * add clarifying comment * improve name of generated object types, refactor function naming for readability * fix list map and set nested attribute generation (#2708) * chore: PoC - Model generation - support config aliases, ignores, and description overrides (#2712) * chore: PoC - Define make command to call code generation logic (#2706) * wip * iterating over all resources * add config for search deployment * update golden file test with fix in package name * use xstring implementation for pascal case * simplify write file logic * merge fixes * chore: PoC - Support configuration of timeout in schema (#2717) * wip * rebase fixes * fix logic avoiding adding timeout in nested schemas * fix generation * fix enum processing * fix golden file in timeout test * comment out unsupported config properties * simplify interfaces for attribute generation leaving common code in a separate function * chore: PoC - handle merging computability in nested attributes (#2722) * adjusting contributing guide (#2732) --------- Co-authored-by: maastha <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> * doc: Adds documentation for `replication_specs.*.external_id` computed attribute for `mongodbatlas_advanced_cluster` (#2734) * adds M0 (#2730) * docs: Remove legacy project_id attribute in docs as it has been removed (#2733) * chore: Updates examples link in index.md for v1.21.3 release * chore: Updates CHANGELOG.md header for v1.21.3 release * chore: Unify file name for plural data source schema (#2739) * change name * fix name * rename to plural_data_source.go * check cluster creation times (#2728) * fix: Adds new attribute `results` and deprecates `resource_policies` for `mongodbatlas_resource_policies` data source (#2740) * new attribute results and deprecate resource_policies * changelog entry * change test to check new attribute * fix changelog * changelog fix * fix docs * Update .changelog/2740.txt Co-authored-by: Leo Antoli <[email protected]> * migration test * skip mig test until next version * fix comment --------- Co-authored-by: Leo Antoli <[email protected]> * chore: Updates CHANGELOG.md for #2740 * build(deps): bump go.mongodb.org/atlas-sdk (#2745) Co-authored-by: wtrocki <[email protected]> * fix: Fixes change assigments in `mongodbatlas_project_api_key` (#2737) * fix changed assigments * fix TestAccProjectAPIKey_updateRole * changelog * join configMultiple to configBasic * don't allow duplicate projectIDs * fix TestAccProjectAPIKey_dataSources * refactor Create * refactor getAPIProjectAssignments and flattenProjectAssignments * refactor Read * refactor Delete * fix TestAccProjectAPIKey_recreateWhenDeletedExternally * refactor Import * remove flattenProjectAssignments, flattenProjectAPIKeyRoles and getAPIProjectAssignments * fix plural ds * fix basicTestCase * refactor Update description * refactor Update * refactor expandProjectAssignments * update changelog * initial checkAggr * checkExists * delete redundant TestAccProjectAPIKey_dataSources * refactor configDuplicatedProject * refactor configChangingProject * model file * more detailed changelog * revert import * doc * refactor checks * chore: Updates CHANGELOG.md for #2737 * chore: Updates examples link in index.md for v1.21.4 release * chore: Updates CHANGELOG.md header for v1.21.4 release * chore: Support computability override in schema generation config (#2743) * test without parsing config options * add support for override of computability in config * refactor tests removing redudant code * extract common api spec path, handle computed only case * chore: Bump crazy-max/ghaction-import-gpg from 6.1.0 to 6.2.0 (#2754) Bumps [crazy-max/ghaction-import-gpg](https://github.com/crazy-max/ghaction-import-gpg) from 6.1.0 to 6.2.0. - [Release notes](https://github.com/crazy-max/ghaction-import-gpg/releases) - [Commits](https://github.com/crazy-max/ghaction-import-gpg/compare/01dd5d3ca463c7f10f7f4f7b4f177225ac661ee4...cb9bde2e2525e640591a934b1fd28eef1dcaf5e5) --- updated-dependencies: - dependency-name: crazy-max/ghaction-import-gpg dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump actions/setup-go from 5.0.2 to 5.1.0 (#2753) Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.0.2 to 5.1.0. - [Release notes](https://github.com/actions/setup-go/releases) - [Commits](https://github.com/actions/setup-go/compare/0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32...41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed) --- updated-dependencies: - dependency-name: actions/setup-go dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump github.com/pb33f/libopenapi from 0.18.1 to 0.18.6 (#2750) Bumps [github.com/pb33f/libopenapi](https://github.com/pb33f/libopenapi) from 0.18.1 to 0.18.6. - [Release notes](https://github.com/pb33f/libopenapi/releases) - [Commits](https://github.com/pb33f/libopenapi/compare/v0.18.1...v0.18.6) --- updated-dependencies: - dependency-name: github.com/pb33f/libopenapi dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump tj-actions/verify-changed-files (#2751) Bumps [tj-actions/verify-changed-files](https://github.com/tj-actions/verify-changed-files) from 54483a2138ca67989bc40785aa22faee8b085894 to 530d86d0a237225c87beaa000750988f8965ee31. - [Release notes](https://github.com/tj-actions/verify-changed-files/releases) - [Changelog](https://github.com/tj-actions/verify-changed-files/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/verify-changed-files/compare/54483a2138ca67989bc40785aa22faee8b085894...530d86d0a237225c87beaa000750988f8965ee31) --- updated-dependencies: - dependency-name: tj-actions/verify-changed-files dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump actions/checkout from 4.2.1 to 4.2.2 (#2752) * chore: Bump actions/checkout from 4.2.1 to 4.2.2 Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871...11bd71901bbe5b1630ceea73d27597364c9af683) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> * Trigger Build --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Leo Antoli <[email protected]> * chore: Automatically updates Terraform version used in repository and test-suite (#2755) * rename workflow (#2761) * chore: Updates Atlas Go SDK (#2748) * build(deps): bump go.mongodb.org/atlas-sdk * Pin cluster POST and PATCH operations to 2024-08-05 avoiding any unintentional shard level autoscaling * unifying version clarification in comments * use sdk utility function for checking error code value * adjust conditional of error checking preserving behaviour --------- Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> * chore: Generate Flex Cluster file structure and resource schema (#2702) * generate resource and schema * pr comments * correct Map * feat: Implements `mongodbatlas_flex_cluster` resource (#2716) * create implementation * read implementation * update and delete implementation * Implement model * schema refactor * format * wip: model tests * initial model test * test for NewTFModel * Test NewAtlasCreateReq * test NewAtlasUpdateReq * fix tests * refactor for tags * fixes * implement import * simplify update * basic acceptance test * wip: acc tests * fix model test * final changes on tests * changelog entry * add resource to fallback template * Update .changelog/2716.txt Co-authored-by: Agustin Bettati <[email protected]> * set resource to preview --------- Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> * chore: Enable mongodbatlas_flex_cluster test in CI (#2720) * create implementation * read implementation * update and delete implementation * initial model test * Test NewAtlasCreateReq * fixes * changelong and fix to acceptance-tests-runner.yml * fix to changelog * removed changelog * resolve rebase issue * fix to implementation * change test to use existing project id * Adjusting predeployed project id name and added preview enable * fix the naming convension of env var --------- Co-authored-by: Oriol Arbusi <[email protected]> * chore: Generate Flex Cluster data source file and schemas (#2725) * generate data source file and schema for singular Flex Cluster * Generate plural data source schema * Changing type of tags in schema * Fix to data source schema * chore: Adds state transition logic to mongodbatlas_flex_cluster resource (#2721) * implements state transition * use state transition in create, update and delete * PR comments * chore: Update operation improvements for `mongodbatlas_flex_cluster` resource (#2729) * schema refactors * revert rename * implement isUpdateAllowed * failed update test case * refactor equal checks * make more exhaustive the failed update test * remove UseStateForUnknown in state_name * wip: use plan modifier for non updatable fields * wip: use plan modifiers on all non updatable attributes * use plan modifiers to fail on update of certain attributes * rename planmodifier * simplify planmodifier * PR comments * remove attribute parameter * markdowndescription over description * test: Enable mongodbatlas_flex_cluster tests in QA environment (#2741) * feat: Implements and tests `mongodbatlas_flex_cluster` data source (#2738) * Implementing read funciton in data source * Acc test for data source * Added changelog * implementing review suggestions * fix to rebase * Adjusting default timeout of `flex_cluster` to 3 hours (#2757) * fixing imports * Adopting latest preview SDK version * fix flex varibale names after bump * fix atlasuser - set to continue using older SDK version * Fix to variable type names in flex unit test * fix duplicate * fix to api call in atlasUser tests --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: lantoli <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: Oriol <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: AgustinBettati <[email protected]> * feat: Implements `mongodbatlas_flex_cluster` plural data source (#2767) * Fix naming convensions in plural DS schema * Implementing plural DS read function * testing and plural ds model * fixes after rebase * additional unit testing for model * changelog * lint fix * removing parellel testing * implemented review feedback * lint fix * chore: Improvements to SDK version update (#2770) * comment use of older API version in atlasUser * add connv220240805 to factory.go * doc: Adds documentation and example for mongodbatlas_flex_cluster resource and data source (#2744) * wip: docs and example (missing data source * change version to make the CI check successful * fmt * regenerate * data source examples * readme created - to adjust preview feature note on release of flex to prod * data source templates * fix typo * generate data source documentation * fix to flex_cluster example * fix to flex_cluster example * fix to generated docs * Added flex to dedicated migration guide * fix typo * Implementing feedback and improving flex-dedicated migratoin guide * adjust flex example README.md * fix to example --------- Co-authored-by: Melanija Cvetic <[email protected]> * deprecate: Deprecates Serverless functionality (#2742) * deprecates serverless functionality * documentation * deprecate attributes in data sources * set link to migration guide with supported migration paths * doc: Adds migration guides to transition out of Serverless and Shared-tier clusters (#2746) * wip: migration guides * add details on 1.22 guide * remove guide, will be in resource docs * wip: correct details on 1.22 guide * added migration guide for serverless to flex and serverless to dedicated * added migration guide for shared-tier to flex * added migration guide for serverless to free * implementing review feedback * implementing feedback to guide * changes to migration guide * Adjustments to migration guides * put URL instead of placeholder * move post before pre autoconversion guides, clarify serverless to dedicated * pr comment * pr comments * Update docs/guides/1.22.0-upgrade-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/1.22.0-upgrade-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: lmkerbey-mdb <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: cveticm <[email protected]> * Update docs/guides/serverless-shared-migration-guide.md Co-authored-by: cveticm <[email protected]> --------- Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> Co-authored-by: cveticm <[email protected]> * chore: Removes mentions and examples of Serverless and Shared-tier instances (#2811) * wip remove mentions of serverless and shared tier * remove examples from template for serverless privatelink * change from M5 to M0 for tenant examples of adv cluster * add note on M0 * chore: Refactor tags attribute schema and conversion logic (#2788) * Implements tag as common function * Refactor project and flex cluster to use new common tag functions * fix to testing and lint * fix changelog entry * january or later for shared tier autoconversion * auto-generate singular data source, temporarily with checks * remove singular data source check * update Description in plural data source --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Agustin Bettati <[email protected]> Co-authored-by: cveticm <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: lantoli <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> * chore: Updates CHANGELOG.md for #2816 * fix: Adds changelog for decreased delay in `mongobatlas_privatelink_endpoint_service` (#2819) * Adds changelog * Fix to changelog * Fix to changelog * chore: Updates CHANGELOG.md for #2819 * chore: Adds initial TPF implementation for advanced_cluster (#2813) * initial create operation * initial resource implementation * support returning nil when advanced config fields are null * test: Add support for overriding http round tripper to allow mocking http request/responses * minor error renaming * remove mocked responses * test: initial TestAdvancedCluster_configSharded requests * chore: use same admin version as existing cluster * mock: allow re-reading GETs * test: support raising error when mock variables are not set * fix: don't dump GroupID in cluster payloads * test: update test case to match existing * refactor: use full request.id() to keep aligned with generator format (differentiate requests with the distinct payloads) * fix: add `computed` to adv_cluster attributes to avoid provider errors * test: minor mock fixes * feat: support state transitions and pause logic * chore: test data updates * test: Support overriding diff files by using `_manual` suffix * style: fmt * test: delete old mock files * test: rename basic to replicast * fix: Deleted should support IDLE --> DELETED * fix: cluster name update requires replace * test: Add tenant test case * chore: include provider changes * fix(move_state): Use ValueString() and do a proper conversion * test: Support mocking test case * refactor: use new `unit.MockTestCase` to simplify resource_test.go * test: Introduce "live" acceptance test for tpf * refactor: re-use existing retry strategy states * refactor: introduce constant.error_codes * refactor: minor cleanups * test: Refactor MockTestCase to also run and support setting TF_ACC dynamically * chore: increase unit test timeout to enable tpf unit tests * minor improvements * unit test timeout increase. Used 75s locally * ci: support running mocked acceptance tests as part of advanced_cluster_tpf job * ci: as of now, advancedclustertpf unit tests cannot run as part of normal unit test since the resource is not added in provider * test: Skip broken move_state_tests * minor fix * chore: fix imports to latest SDK * estetic change to workflow file * refactor: Use provider_mock instead of customizing existing provider (revert all changes to client.go and provider.go * address PR comments * use `diags` instead of returning summary, detail * only removeResource in read * address immediate PR comments * refactor: Use a higher abstraction level in update * refactor: Return TFModel to make purpose more explicit * refactor: Replace awaitChanges method with AwaitChanges function for improved clarity and consistency * apply suggestion * chore: Add step count assertion * refactor: move out all the unit tests and mocked unit test logic * remove: accidental provider changes * remove last changes for unit tests * build(deps): bump go.mongodb.org/atlas-sdk (#2823) Co-authored-by: wtrocki <[email protected]> * fix: Fixes tags in `mongodbatlas_flex_cluster` (#2829) * fix tags * add tests * fix * chore: Updates examples link in index.md for v1.22.0 release * chore: Updates CHANGELOG.md header for v1.22.0 release * doc: Add preview notice in `mongodbatlas_flex_cluster` docs (#2830) * preview notice * small fix * chore: Bump github.com/wI2L/jsondiff from 0.6.0 to 0.6.1 (#2835) Bumps [github.com/wI2L/jsondiff](https://github.com/wI2L/jsondiff) from 0.6.0 to 0.6.1. - [Release notes](https://github.com/wI2L/jsondiff/releases) - [Changelog](https://github.com/wI2L/jsondiff/blob/master/.goreleaser.yml) - [Commits](https://github.com/wI2L/jsondiff/compare/v0.6.0...v0.6.1) --- updated-dependencies: - dependency-name: github.com/wI2L/jsondiff dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump actions/checkout from 4.2.1 to 4.2.2 (#2833) Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4.2.1...11bd71901bbe5b1630ceea73d27597364c9af683) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Update tj-actions/verify-changed-files requirement to 530d86d0a237225c87beaa000750988f8965ee31 (#2832) Updates the requirements on [tj-actions/verify-changed-files](https://github.com/tj-actions/verify-changed-files) to permit the latest version. - [Release notes](https://github.com/tj-actions/verify-changed-files/releases) - [Changelog](https://github.com/tj-actions/verify-changed-files/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/verify-changed-files/commits/530d86d0a237225c87beaa000750988f8965ee31) --- updated-dependencies: - dependency-name: tj-actions/verify-changed-files dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump srvaroa/labeler from 1.11.1 to 1.12.0 (#2831) Bumps [srvaroa/labeler](https://github.com/srvaroa/labeler) from 1.11.1 to 1.12.0. - [Release notes](https://github.com/srvaroa/labeler/releases) - [Commits](https://github.com/srvaroa/labeler/compare/29471ee1118fa4e10b011964e6e8fe2fd243e700...fe4b1c73bb8abf2f14a44a6912a8b4fee835d631) --- updated-dependencies: - dependency-name: srvaroa/labeler dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 (#2834) Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.9.0 to 1.10.0. - [Release notes](https://github.com/stretchr/testify/releases) - [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0) --- updated-dependencies: - dependency-name: github.com/stretchr/testify dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump slackapi/slack-github-action from 1.27.0 to 2.0.0 (#2810) * chore: Bump slackapi/slack-github-action from 1.27.0 to 2.0.0 Bumps [slackapi/slack-github-action](https://github.com/slackapi/slack-github-action) from 1.27.0 to 2.0.0. - [Release notes](https://github.com/slackapi/slack-github-action/releases) - [Commits](https://github.com/slackapi/slack-github-action/compare/37ebaef184d7626c5f204ab8d3baff4262dd30f0...485a9d42d3a73031f12ec201c457e2162c45d02d) --- updated-dependencies: - dependency-name: slackapi/slack-github-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * chore: Adjusting how webhook-type is provided in new slack-github-action 2.0 version --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Agustin Bettati <[email protected]> * chore: Updates repository to use supported Terraform versions (#2838) Co-authored-by: maastha <[email protected]> * chore: Test converter for TPF (#2822) * initial create operation * initial resource implementation * support returning nil when advanced config fields are null * test: Add support for overriding http round tripper to allow mocking http request/responses * minor error renaming * remove mocked responses * test: initial TestAdvancedCluster_configSharded requests * chore: use same admin version as existing cluster * mock: allow re-reading GETs * test: support raising error when mock variables are not set * fix: don't dump GroupID in cluster payloads * test: update test case to match existing * refactor: use full request.id() to keep aligned with generator format (differentiate requests with the distinct payloads) * fix: add `computed` to adv_cluster attributes to avoid provider errors * test: minor mock fixes * feat: support state transitions and pause logic * chore: test data updates * test: Support overriding diff files by using `_manual` suffix * style: fmt * test: delete old mock files * test: rename basic to replicast * fix: Deleted should support IDLE --> DELETED * fix: cluster name update requires replace * test: Add tenant test case * chore: include provider changes * fix(move_state): Use ValueString() and do a proper conversion * test: Support mocking test case * refactor: use new `unit.MockTestCase` to simplify resource_test.go * test: Introduce "live" acceptance test for tpf * refactor: re-use existing retry strategy states * refactor: introduce constant.error_codes * refactor: minor cleanups * test: Refactor MockTestCase to also run and support setting TF_ACC dynamically * chore: increase unit test timeout to enable tpf unit tests * minor improvements * unit test timeout increase. Used 75s locally * ci: support running mocked acceptance tests as part of advanced_cluster_tpf job * ci: as of now, advancedclustertpf unit tests cannot run as part of normal unit test since the resource is not added in provider * test: Skip broken move_state_tests * minor fix * chore: fix imports to latest SDK * estetic change to workflow file * refactor: Use provider_mock instead of customizing existing provider (revert all changes to client.go and provider.go * address PR comments * use `diags` instead of returning summary, detail * only removeResource in read * address immediate PR comments * refactor: Use a higher abstraction level in update * refactor: Return TFModel to make purpose more explicit * refactor: Replace awaitChanges method with AwaitChanges function for improved clarity and consistency * apply suggestion * chore: Add step count assertion * refactor: move out all the unit tests and mocked unit test logic * remove: accidental provider changes * remove last changes for unit tests * enable TestAccClusterAdvancedCluster_basicTenant in TPF * initial unit test * AssertEqualHCL * AssertEqualHCL tests * call ConvertAdvancedClusterToTPF from tests * update go-cty * use more complex test * passing TestConvertAdvancedClusterToTPF * refactor * revert go.mod & go.sum * revertgithub.com/hashicorp/terraform-plugin-testing to v1.11.0 * go mod tidy * getBlockBody * enable env var * test without env * CheckDestroyCluster for TPF * don't check exists or data sources yet * import tests in TPF --------- Co-authored-by: Espen Albert <[email protected]> * test: Adds support for mocked-acceptance-tests (#2820) * initial create operation * initial resource implementation * support returning nil when advanced config fields are null * test: Add support for overriding http round tripper to allow mocking http request/responses * minor error renaming * remove mocked responses * test: initial TestAdvancedCluster_configSharded requests * chore: use same admin version as existing cluster * mock: allow re-reading GETs * test: support raising error when mock variables are not set * fix: don't dump GroupID in cluster payloads * test: update test case to match existing * refactor: use full request.id() to keep aligned with generator format (differentiate requests with the distinct payloads) * fix: add `computed` to adv_cluster attributes to avoid provider errors * test: minor mock fixes * feat: support state transitions and pause logic * chore: test data updates * test: Support overriding diff files by using `_manual` suffix * style: fmt * test: delete old mock files * test: rename basic to replicast * fix: Deleted should support IDLE --> DELETED * fix: cluster name update requires replace * test: Add tenant test case * chore: include provider changes * fix(move_state): Use ValueString() and do a proper conversion * test: Support mocking test case * refactor: use new `unit.MockTestCase` to simplify resource_test.go * test: Introduce "live" acceptance test for tpf * refactor: re-use existing retry strategy states * refactor: introduce constant.error_codes * refactor: minor cleanups * test: Refactor MockTestCase to also run and support setting TF_ACC dynamically * chore: increase unit test timeout to enable tpf unit tests * minor improvements * unit test timeout increase. Used 75s locally * ci: support running mocked acceptance tests as part of advanced_cluster_tpf job * ci: as of now, advancedclustertpf unit tests cannot run as part of normal unit test since the resource is not added in provider * test: Skip broken move_state_tests * minor fix * chore: fix imports to latest SDK * estetic change to workflow file * refactor: Use provider_mock instead of customizing existing provider (revert all changes to client.go and provider.go * address PR comments * use `diags` instead of returning summary, detail * only removeResource in read * address immediate PR comments * refactor: Use a higher abstraction level in update * refactor: Return TFModel to make purpose more explicit * refactor: Replace awaitChanges method with AwaitChanges function for improved clarity and consistency * apply suggestion * chore: Add step count assertion * refactor: move out all the unit tests and mocked unit test logic * remove: accidental provider changes * remove last changes for unit tests * test: Add support for mocked acceptance tests * test: Support maintaining response order with responseIndex * test: update test data for adv cluster unit tests * test: mocker use colored diffs and support empty payloads in diffs * update mocker test data * test: Add check for AllowReReading * test: Add labels and tags to mock cluster JSON test data * update old guides (#2842) * chore: Includes the rest of blocks in TPF test converter (#2841) * don't remove double lines * enable TestAccClusterAdvancedCluster_withTags * tests for labels and tests * label and tags converter * common generateAllAttributeSpecs * change getVal return type * simplify generateAllAttrSpecs call * don't run data source checks for TPF yet * test for advanced_configuration * converter for advanced_configuration * bi_connector_config transform * test for bi_connector_config * fix tests * make explicit dependency from ds * Fix error message typo (#2843) When there's an error setting the `private_key`, it should output an error message mentioning `private_key` instead of `public_key` * chore: Plural data sources in TPF leveraging on resource data source (#2844) * PluralDataSourceSchemaFromResource * flexcluster * flexcluster doc * overridenFields and overridenRootFields in PluralDataSourceSchemaFromResource * advancedclustertpf * encryptionatrestprivateendpoint * resourcepolicy * streamconnection * streaminstance * fix TestPaginatedDSSchema * streamprocessor * remove checks and unneeded code * doc feedback * use struct for params * chore: Environment variable to enable dual schema (#2847) * LatestAdvancedClusterEnabled * TEMPORARY check allowLatestAdvancedClusterEnabled is caught * Revert "TEMPORARY check allowLatestAdvancedClusterEnabled is caught" This reverts commit 1694766b9884cfc3d501e1c210b2bd6154eccd50. * configure resource * make goal * CI config * use config.LatestAdvancedClusterEnabled * TEMPORARY check converter is caught * Revert "TEMPORARY check converter is caught" This reverts commit 98c34f37be7beab76f3be7aeb4a1862177497151. * chore: Adds support for multiple API versions for adv_cluster TPF (#2840) * feat: Support update.IsEmpty * initial start of `num_shards` support * feat: differentiate API Versions used * chore: formatting * feat: intial usage of latest admin api * feat: implement support for num_shards and add legacy compatibility functions for CREATE * chore: use ordinary diffs instead of colors * refactor: remove commented-out code * test: pass static orgID for unit testing * chore: initial working legacy schema * minor cleanup before review * test: Add acceptance test SymmetricShardedOldSchemaDiskSizeGBAtElectableLevel * feat: enhance disk size handling and normalization in advanced cluster resource * chore: PatchPayload, support IgnoreInState * address some PR comments * chore: Avoid update options (handled in normalize instead) * test: refresh golden file * feat: Initial update support using 20240530 * refactor: Always set root disk size * chore: update to use correct test data * refactor: always set rootDiskSize * refactor: update legacy model to include disk size and adjust replication specs handling * feat: add tests and mock data for symmetric sharded old schema configuration+Handle MongoDBMajor version formatting * test: fix mock file and remove manual change * chore: fix broken sharded test * refactor: minor refactorings * fix: Address PR comments * test: Change log message to fatal error for missing steps in request tracker * address PR comments 2 * wait in each cluster creation (#2848) * build(deps): bump go.mongodb.org/atlas-sdk (#2849) Co-authored-by: wtrocki <[email protected]> * chore: Implements Move State (#2850) * move state impl * fix TestAccAdvancedCluster_move_invalid * TestAccAdvancedCluster_move_not_supported_sdkv2 * apply feedback * rename env var to MONGODB_ATLAS_ADVANCED_CLUSTER_V2_SCHEMA and associated elements * rename SkipIfTPFAdvancedCluster to SkipIfAdvancedClusterV2Schema * parallel tests for move * add last step so no dangling resources * chore: Bump tj-actions/verify-changed-files (#2853) Bumps [tj-actions/verify-changed-files](https://github.com/tj-actions/verify-changed-files) from 530d86d0a237225c87beaa000750988f8965ee31 to dc57d4518c9e75995e0fff59265333d19a684163. - [Release notes](https://github.com/tj-actions/verify-changed-files/releases) - [Changelog](https://github.com/tj-actions/verify-changed-files/blob/main/HISTORY.md) - [Commits](https://github.com/tj-actions/verify-changed-files/compare/530d86d0a237225c87beaa000750988f8965ee31...dc57d4518c9e75995e0fff59265333d19a684163) --- updated-dependencies: - dependency-name: tj-actions/verify-changed-files dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump github.com/zclconf/go-cty from 1.15.0 to 1.15.1 (#2854) Bumps [github.com/zclconf/go-cty](https://github.com/zclconf/go-cty) from 1.15.0 to 1.15.1. - [Release notes](https://github.com/zclconf/go-cty/releases) - [Changelog](https://github.com/zclconf/go-cty/blob/main/CHANGELOG.md) - [Commits](https://github.com/zclconf/go-cty/compare/v1.15.0...v1.15.1) --- updated-dependencies: - dependency-name: github.com/zclconf/go-cty dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Implements extra API Calls for AdvancedCluster TPF (#2852) * chore: Add support for ExtraAPIInfo in TFModel to find replication_specs.*.container_id * feat: Initial /tenantUpgrade logic * refactor: Fix zoneName default for legacy schema * address PR comments part 1 * use explicit code instead of comments Co-authored-by: Leo Antoli <[email protected]> * chore: remove comments and fix suggested change commit * chore: remove comment * address PR comments 2 * test: hard code extra container response --------- Co-authored-by: Leo Antoli <[email protected]> * build(deps): bump go.mongodb.org/atlas-sdk (#2856) Co-authored-by: lantoli <[email protected]> * update Go and linter (#2857) * chore: Ensures that MoveState works in all supported TF versions (#2858) * rename adv schema files * run MoveState matrix in GH * run MoveState tests only if TF version is at least 1.8.0 * revert change * clarify doc * only if above 1.8 * extract acc.CheckExistsCluster and use it in both cluster and adv_cluster (#2860) * chore: Updates repository to use supported Terraform versions (#2861) Co-authored-by: maastha <[email protected]> * chore: Enables all tests for TPF (#2862) * ConvertToTPFAttrsMap * use ConvertToTPFAttrsMap * move TPF test help funcs to the same file * acc.ConvertToTPFAttrsMap returns the attrs instead of mutating the input * ConvertToTPFAttrsSet * delete all SkipIfAdvancedClusterV2Schema except the ones already tried * adjust datasource checks * use ConvertAdvancedClusterToTPF( * refactor attrNameToSchemaV2 * skip some tests * skip more tests * add use_replication_spec_per_shard to data source schema * more tests skipped * don't use dynamic blocks so it can work in TPF as well * missing quotes * fix dynamic block extract * enable mig tests * skip specific mig tests * fix mig tests * skip TestMigAdvancedCluster_asymmetricShardedNewSchema * chore: Adds equivalent CRUD logic for Advanced Cluster TPF (#2855) * chore: remove immediate TODOs from schema * feat: Support retainBackups usage * refactor: Update API info handling and remove legacy schema references * feat: Enhance legacy ID handling in replication specs and update related functions * feat: Add validation for oplog_size_mb attribute in AdvancedConfigurationSchema * remove more todos * test: deleted unused diff files * feat: Support only updating advanced_configuration in update * feat: Add validation for MongoDB version compatibility in advanced configuration * chore: fix comment location * feat: support partial updates and fix advanced_config updates * perf: Support re-using /containers response based on cloud provider * refactor: Remove all UseStateForUnknown * refactor: Always read advanced_configuration, even when there are no changes. Even though plan has no changes with state, we cannot be sure that something has changed externally, better to ensure state always have the latest values * refactor: improve schema validation and plan modifiers * fix: address PR comments * fix: pause set on create * fix: set default value for changeStreamOptionsPreAndPostImagesExpireAfterSeconds to -1 when unset by user and handle `null` reponse from API * Revert "refactor: Always read advanced_configuration, even when there are no changes. Even though plan has no changes with state, we cannot be sure that something has changed externally, better to ensure state always have the latest values" This reverts commit c73d938542126586ea124431346ad4777c875f1c. * feat: Adds new `advanced_configuration.0.default_max_time_ms` attribute to `mongodbatlas_advanced_cluster` resource and data sources (#2825) * chore: Updates CHANGELOG.md for #2825 * chore: Updates Atlas Go SDK (#2870) * build(deps): bump go.mongodb.org/atlas-sdk * fix breaking changes --------- Co-authored-by: lantoli <[email protected]> * chore: Enables paused on create test (#2867) * feat: Support `pinned_fcv` attribute in advanced_cluster resource and data sources (#2789) * wip * support pinning with and without expiration date * add support for unpinning on update * commented code for handling validation * make expiration date required * add waiting before continueing with other updates * handle fcv during creation * add support for singular data source * add in plural data source * add changelog entry * add in cluster tpf schema * include docs for fcv * adding warning to provide reduce possibility of re-applying fcv * adding acceptance test * adjust changelog entry file * specify date format in docs * add step to verify incorrect format * add skipping in advanced_cluster tpf * add tpf limited implementation * adjust test and fix in plural data source to capture upgrade and downgrade * handle warning when expiration date has passed * add knowledge hub article reference * adding example * fix example formatting * add changelog for mongo_db_major_version fix * applying doc review changes * adding link to new docs page * applying doc review changes * pr review comments * extract checks into unified function * minor refactors * chore: Updates CHANGELOG.md for #2789 * chore: Supports setting `retain_backups_enabled` in adv_cluster TPF (#2866) * chore: Refactor advanced cluster tests and enhance compatibility handling for RetainBackupsEnabled * chore: Skip Migration tests and adjust checks to be compatible * chore: Update disk IOPS attribute handling for TPF compatibility and expose AttrNameToSchemaV2 * Update internal/testutil/acc/advanced_cluster_schema_v2.go Co-authored-by: Leo Antoli <[email protected]> * chore: Fix formatting in AttrNameToSchemaV2 function for consistency * chore: Rename function to better reflect its purpose in handling attribute state --------- Co-authored-by: Leo Antoli <[email protected]> * doc: Updates Terraform Compatibility Matrix documentation (#2837) Co-authored-by: maastha <[email protected]> * feat: Support `pinned_fcv` in attribute in cluster resource and data sources (#2817) * add resource and data source implementations * apply docs changes * reuse checks from advanced cluster test for fcv pinning * simplify if * chore: Updates CHANGELOG.md for #2817 * chore: Bump golang.org/x/crypto from 0.29.0 to 0.31.0 (#2881) Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.29.0 to 0.31.0. - [Commits](https://github.com/golang/crypto/compare/v0.29.0...v0.31.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Updates repository to use supported Terraform versions (#2883) Co-authored-by: maastha <[email protected]> * chore: Makes test checks valid for SDKv2 and TPF (#2882) * enable data source tests removing calls to AdvancedClusterV2Schema * schemav2 helper check funcs * skip data sources checks in tpf * rename funcs to use schemav2 naming * implement check funcs for schema v2 * testCheckFuncAlwaysPass * move ConvertAdvancedClusterToSchemaV2 to config funcs * avoid relying on resource id and instead on attribute directly --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: Oriol Arbusi <[email protected]> Co-authored-by: Leo Antoli <[email protected]> Co-authored-by: carriecwk <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: cveticm <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: Sérgio Silva <[email protected]> * include clarifying comments for when older API versions are used * remove redundant new line * revert ordering changes in tpf schema model --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: cveticm <[email protected]> Co-authored-by: Oriol <[email protected]> Co-authored-by: svc-apix-Bot <[email protected]> Co-authored-by: wtrocki <[email protected]> Co-authored-by: Leo Antoli <[email protected]> Co-authored-by: carriecwk <[email protected]> Co-authored-by: svc-apix-bot <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Melanija Cvetic <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: Zuhair Ahmed <[email protected]> Co-authored-by: maastha <[email protected]> Co-authored-by: Melissa Plunkett <[email protected]> Co-authored-by: kanchana-mongodb <[email protected]> Co-authored-by: Marco Suma <[email protected]> Co-authored-by: Aastha Mahendru <[email protected]> Co-authored-by: AgustinBettati <[email protected]> Co-authored-by: lmkerbey-mdb <[email protected]> Co-authored-by: Espen Albert <[email protected]> Co-authored-by: Sérgio Silva <[email protected]>
Description
Link to any related issue(s): CLOUDP-283841
Update: CLOUDP-269950 has been fixed and backported into prod.
Implementation is based off of advanced_cluster #2789 using same conversion and warning detection functions.
Details of how both warnings are displayed from users point of view can be found in the technical design document.
Type of change:
Required Checklist:
Further comments