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

Add Rule for Deprecated partition_key_path in azurerm_cosmosdb_sql_container #356

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

kierzo89
Copy link

This pull request introduces a new custom rule to detect the use of the deprecated partition_key_path attribute in the azurerm_cosmosdb_sql_container resource. The rule warns users to replace partition_key_path with the updated partition_key_paths attribute, which will be required in future versions of the AzureRM provider.

Key Changes:
New Rule: azurerm_cosmosdb_sql_container_deprecated_partition_key_path:
Added a rule to identify the deprecated partition_key_path in azurerm_cosmosdb_sql_container Terraform resources.
The rule emits a warning when partition_key_path is found, suggesting to update to partition_key_paths.

Test Coverage:
Added test cases to validate that the rule correctly detects partition_key_path and emits the appropriate warning.
Ensured that valid configurations using partition_key_paths pass without any issues.

Benefits:
Ensures Terraform configurations are updated according to the latest AzureRM provider requirements.
Helps users avoid breaking changes in future AzureRM versions by warning about deprecated attributes.

Next Steps:
Users are encouraged to update their Terraform configurations by replacing partition_key_path with partition_key_paths in affected resources.

@wata727
Copy link
Member

wata727 commented Oct 5, 2024

Thank you for opening this PR.

I think rules to warn about deprecations like this would be useful, but I'm not sure if they should be done in TFLint.
Terraform already has a feature for notifying users of deprecated attributes, so using that would probably be the most reliable way to inform users of the deprecation.
https://developer.hashicorp.com/terraform/plugin/framework/deprecations#provider-attribute-rename

Please let me know if there is a reason why you can't use this or why TFLint is a better choice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants