-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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
"TypedSDK": Fix the issue with the removedInNextMajorVersion
tag causing data loss in Decode
#23564
"TypedSDK": Fix the issue with the removedInNextMajorVersion
tag causing data loss in Decode
#23564
Conversation
TypedSDK
: fix removedInNextMajorVersion
tag cause decode issue lost dataremovedInNextMajorVersion
tag causing data loss in Decode
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 - thanks for this @wuxu92
@@ -57,6 +58,7 @@ func decodeReflectedType(input interface{}, stateRetriever stateRetriever, debug | |||
debugLogger.Infof("Field", field) | |||
|
|||
if val, exists := field.Tag.Lookup("tfschema"); exists { | |||
val = strings.TrimSuffix(val, ",removedInNextMajorVersion") |
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 fine for now, but I think we want to add a parseStructTag
method which returns a struct to ultimately solve this - however I'm going to do that in a separate PR since that also needs to be handled in the Set too.
<Actions> <action id="4a39167e811ac038e4a588362092472c27cfbe9e4929ae61d035f708a093a669"> <h3>Bump Terraform `azurerm` provider version</h3> <details id="1d9343c012f5434ac9fe8a98135bae3667b399259be16d9b14302ea3bd424a24"> <summary>Update Terraform lock file</summary> <p>"hashicorp/azurerm" updated from "3.76.0" to "3.77.0" in file ".terraform.lock.hcl"</p> <details> <summary>3.77.0</summary> <pre>Changelog retrieved from:
	https://github.com/hashicorp/terraform-provider-azurerm/releases/tag/v3.77.0
FEATURES:

* New Resources: `azurerm_application_load_balancer_frontend` ([#23411](hashicorp/terraform-provider-azurerm#23411 New Resources: `azurerm_dev_center` ([#23538](hashicorp/terraform-provider-azurerm#23538 New Resources: `azurerm_dev_center_project` ([#23538](https://github.com/hashicorp/terraform-provider-azurerm/issues/23538))

ENHANCEMENTS:

* dependencies: updating to `v0.62.0` of `github.com/hashicorp/go-azure-helpers` ([#23581](hashicorp/terraform-provider-azurerm#23581 dependencies: updating Kusto SDK from `2023-05-02` to `2023-08-15` ([#23598](hashicorp/terraform-provider-azurerm#23598 dependencies: updating nginx from `2022-08-01` to `2023-04-01` ([#23583](hashicorp/terraform-provider-azurerm#23583 `netapp`: updating to use API Version `2023-05-01` ([#23576](hashicorp/terraform-provider-azurerm#23576 `springcloud`: updating to use API Version `2023-09-01-preview` ([#23544](hashicorp/terraform-provider-azurerm#23544 `storage`: updating to use API Version `2023-01-01` ([#23543](hashicorp/terraform-provider-azurerm#23543 `internal/sdk`: fixing an issue where struct fields containing `removedInNextMajorVersion` wouldn't be decoded correctly ([#23564](hashicorp/terraform-provider-azurerm#23564 `internal/sdk`: struct tag parsing is now handled consistently during both encoding and decoding ([#23568](hashicorp/terraform-provider-azurerm#23568 provider: the `roll_instances_when_required` provider feature in the `virtual_machine_scale_set` block is now optional ([#22976](hashicorp/terraform-provider-azurerm#22976 Data Source: `azurerm_automation_account`: refactoring the remaining usage of `Azure/azure-sdk-for-go` to use `hashicorp/go-azure-sdk` ([#23555](hashicorp/terraform-provider-azurerm#23555 `azurerm_automation_account`: refactoring the remaining usage of `Azure/azure-sdk-for-go` to use `hashicorp/go-azure-sdk` ([#23555](hashicorp/terraform-provider-azurerm#23555 `azurerm_resource_deployment_script_azure_cli` - improve validation for the `version` property to support newer versions ([#23370](hashicorp/terraform-provider-azurerm#23370 `azurerm_resource_deployment_script_azure_power_shell` - improve validation for the `version` property to support newer versions ([#23370](hashicorp/terraform-provider-azurerm#23370 `azurerm_nginx_deployment` - support for the `capacity` and `email` properties ([#23596](https://github.com/hashicorp/terraform-provider-azurerm/issues/23596))

BUG FIXES:

* Data Source: `azurerm_virtual_hub_connection` - export the `inbound_route_map_id`, `outbound_route_map_id`, and `static_vnet_local_route_override_criteria` attributes in the `routing` block, and fix a bug where these attributes could not be set ([#23491](hashicorp/terraform-provider-azurerm#23491 `azurerm_cdn_frontdoor_rule` - the `url_filename_condition` properties `match_values` is now optional if `operator` is set to `Any` ([#23541](hashicorp/terraform-provider-azurerm#23541 `azurerm_shared_image_gallery` - added the `Private` and `Groups` options for the `sharing.permission` property ([#23570](hashicorp/terraform-provider-azurerm#23570 `azurerm_redis_cache` - fixed incorrect ssl values for `redis_primary_connection_string` and `secondary_connection_string` ([#23575](hashicorp/terraform-provider-azurerm#23575 `azurerm_monitor_activity_log_alert` - the `recommend_category` property now can be set to `HighAvailability` ([#23605](hashicorp/terraform-provider-azurerm#23605 `azurerm_recovery_services_vault` - the `encryption` property can now be used with the `cross_region_restore_enabled` property ([#23618](hashicorp/terraform-provider-azurerm#23618 `azurerm_storage_account_customer_managed_key` - prevent a panic when the keyvault id is empty ([#23599](https://github.com/hashicorp/terraform-provider-azurerm/issues/23599))


</pre> </details> </details> </action> </Actions> --- <table> <tr> <td width="77"> <img src="https://www.updatecli.io/images/updatecli.png" alt="Updatecli logo" width="50" height="50"> </td> <td> <p> Created automatically by <a href="https://www.updatecli.io/">Updatecli</a> </p> <details><summary>Options:</summary> <br /> <p>Most of Updatecli configuration is done via <a href="https://www.updatecli.io/docs/prologue/quick-start/">its manifest(s)</a>.</p> <ul> <li>If you close this pull request, Updatecli will automatically reopen it, the next time it runs.</li> <li>If you close this pull request and delete the base branch, Updatecli will automatically recreate it, erasing all previous commits made.</li> </ul> <p> Feel free to report any issues at <a href="https://github.com/updatecli/updatecli/issues">github.com/updatecli/updatecli</a>.<br /> If you find this tool useful, do not hesitate to star <a href="https://github.com/updatecli/updatecli/stargazers">our GitHub repository</a> as a sign of appreciation, and/or to tell us directly on our <a href="https://matrix.to/#/#Updatecli_community:gitter.im">chat</a>! </p> </details> </td> </tr> </table> Co-authored-by: Jenkins Infra Bot (updatecli) <60776566+jenkins-infra-bot@users.noreply.github.com>
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active contributions. |
#23415 does not work with decode method of typed resources which makes many AccTests failed when the tag
removedInNextMajorVersion
added.Failed Examples:
1.
2.
Passed in this PR: