Skip to content
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

doc: Terraform Versioning Guidance #1627

Merged
merged 6 commits into from
Nov 22, 2023
Merged

Conversation

Zuhairahmed
Copy link
Collaborator

@Zuhairahmed Zuhairahmed commented Nov 15, 2023

Description

Please include a summary of the fix/feature/change, including any relevant motivation and context.
Updated versioning guidance related to customer request for clarifications on what are minimum Terraform versions to consume with our Provider.

Link to any related issue(s): INTMDB-1148

Type of change:

  • Bug fix (non-breaking change which fixes an issue). Please, add the "bug" label to the PR.
  • New feature (non-breaking change which adds functionality). Please, add the "enhancement" label to the PR.
  • Breaking change (fix or feature that would cause existing functionality to not work as expected). Please, add the "breaking change" label to the PR.
  • This change requires a documentation update
  • Documentation fix/enhancement

Required Checklist:

  • I have signed the MongoDB CLA
  • I have read the contribution guidelines
  • I have added tests that prove my fix is effective or that my feature works per HashiCorp requirements
  • I have added any necessary documentation (if appropriate)
  • I have run make fmt and formatted my code
  • If changes include deprecations or removals, I defined an isolated PR with a relevant title as it will be used in the auto-generated changelog.

Further comments

@Zuhairahmed Zuhairahmed requested a review from a team as a code owner November 15, 2023 04:42
@Zuhairahmed Zuhairahmed changed the title Terraform Versioning Guidance [doc] Terraform Versioning Guidance Nov 15, 2023
@Zuhairahmed Zuhairahmed changed the title [doc] Terraform Versioning Guidance doc: Terraform Versioning Guidance Nov 15, 2023
README.md Outdated
@@ -17,8 +17,8 @@ Bugs should be filed under the Issues section of this repo.
Feature requests can be submitted at https://feedback.mongodb.com/forums/924145-atlas - just select the Terraform plugin as the category or vote for an already suggested feature.

## Requirements
- [Terraform](https://www.terraform.io/downloads.html) 1.0+
- [Go](https://golang.org/doc/install) 1.21 (to build the provider plugin)
- [Terraform Version](https://www.terraform.io/downloads.html) Minimum of 1.0 (as we have migrated to [Plugin Protocol Version 6](https://developer.hashicorp.com/terraform/plugin/terraform-plugin-protocol#protocol-version-6)), however for your saftey we strongly recondmend only consuming versions of Terraform that are currently receiving Security/Maintenance Updates. For latest supported versions see: https://endoflife.date/terraform
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [Terraform Version](https://www.terraform.io/downloads.html) Minimum of 1.0 (as we have migrated to [Plugin Protocol Version 6](https://developer.hashicorp.com/terraform/plugin/terraform-plugin-protocol#protocol-version-6)), however for your saftey we strongly recondmend only consuming versions of Terraform that are currently receiving Security/Maintenance Updates. For latest supported versions see: https://endoflife.date/terraform
- [Terraform Version](https://www.terraform.io/downloads.html) Minimum of 1.0 (as we have migrated to [Plugin Protocol Version 6](https://developer.hashicorp.com/terraform/plugin/terraform-plugin-protocol#protocol-version-6)), however for your saftey we strongly recommend only consuming versions of Terraform that are currently receiving Security/Maintenance Updates. For latest supported versions see: https://endoflife.date/terraform

Copy link
Collaborator

@marcosuma marcosuma Nov 15, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if we should change this and stop putting a number like minimum of 1.0. What if we said that we only actively support the supported terraform versions? This way:

  • it becomes a statement that will be true "forever", we'll never have to update it anymore (e.g. in 1 year we'll have to change this to 1.2 - just throwing a number there...)
  • it is stricter yes but it doesn't mean it won't work for previous versions, it just means we don't actively support any bugs with such combinations
  • if customers are particularly important yes, we can make exceptions

Then we can add a "Why" section and you can explain that it's for security reasons like you said.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated as discussed off sync, also just FYI will update again to move minimum version to HashiCorp Terraform v1.3+ in Q2 2024 (this is when several large customers are planning to migrate off Terraform v1.0+).

Copy link
Contributor

@kyuan-mongodb kyuan-mongodb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Copy link
Contributor

Code Coverage

Package Line Rate Health
github.com/mongodb/terraform-provider-mongodbatlas/mongodbatlas 3%
github.com/mongodb/terraform-provider-mongodbatlas/mongodbatlas/framework/validator 68%
github.com/mongodb/terraform-provider-mongodbatlas/mongodbatlas/testutils 46%
github.com/mongodb/terraform-provider-mongodbatlas/mongodbatlas/util 17%
Summary 3% (328 / 10459)

@Zuhairahmed Zuhairahmed merged commit e5d8934 into master Nov 22, 2023
28 checks passed
@Zuhairahmed Zuhairahmed deleted the Terraform-Versioning-Guidance branch November 22, 2023 19:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants