This beta rolls up every change merged from the 1.x line since v2.0.0-beta2 — see the 1.288.0 and 1.289.0 sections of CHANGELOG.md — plus the v2-only changes below.
FEATURES:
- Terraform Plugin Framework: the provider binary now serves a
terraform-plugin-frameworkprovider alongside the existingterraform-plugin-sdk/v2one, muxed behindtf5muxserver. Protocol version, provider address and provider schema are unchanged; new resources and data sources can be authored framework-native, and the framework-only concept types (ephemeral resources, provider functions, list resources, actions) become available for the first time. - New Data Source:
alicloud_ims_default_domain— the default domain of the Alibaba Cloud account, backed by the ImsGetDefaultDomainAPI. Served by the framework provider. - New Function:
arn_build— builds an Alibaba Cloud Resource Name (ARN) of the formacs:<service>:<region>:<account_id>:<resource>from its constituent parts, invoked asprovider::alicloud::arn_build(service, region, account_id, resource). Mirrors the AWS provider'sarn_buildfunction. Requires Terraform 1.8+ with the provider declared inrequired_providers. - New Function:
arn_parse— parses an Alibaba Cloud Resource Name (ARN) of the formacs:<service>:<region>:<account_id>:<resource>into an object withservice,region,account_idandresourceattributes, invoked asprovider::alicloud::arn_parse(arn). The attributes are the arguments ofarn_build, so the two compose. Any colons beyond the fourth belong to the resource and are kept as part of it. Unlikearn_build, which formats whatever it is given,arn_parsereports an error for a string that is not an ARN. Mirrors the AWS provider'sarn_parsefunction. Requires Terraform 1.8+ with the provider declared inrequired_providers.
ENHANCEMENTS:
- deps: bump
golang.org/x/cryptoto 0.52.0 andgoogle.golang.org/grpcto 1.82.1.
BUG FIXES:
- provider: close the partial-state window before the success return in resource/alicloud_reserved_instance and resource/alicloud_cs_kubernetes_node_pool. SDK v2 deleted the
d.SetPartialwhitelist thatd.Partial(true)filtered against, inverting the flag's meaning from "persist only these keys" to "persist nothing", so a window still open at a successful return wrote prior state instead of whatd.Setstaged: analicloud_reserved_instanceattribute update was discarded, and analicloud_cs_kubernetes_node_poolscale-down reported success while leaving the oldnode_countin state and re-planning the same diff. ElevenPartialcalls that cannot affect any outcome have also been removed. (#10210)