diff --git a/docs/guides/release_note_0.2.xx.md b/docs/guides/release_note_0.2.xx.md index dfc9136..1e0331b 100644 --- a/docs/guides/release_note_0.2.xx.md +++ b/docs/guides/release_note_0.2.xx.md @@ -7,6 +7,13 @@ description: |- # Release Notes for v0.2.xx +## Release Notes for v0.2.16 +**release date** : January 2nd, 2025 + +### Fix +* fix `mist_org_wlan.dynamic_vlan.default_vlan_ids` and `mist_site_wlan.dynamic_vlan.default_vlan_ids` issue when converting the value from the Go SDK to Terraform. + + ## Release Notes for v0.2.15 **release date** : December 27th, 2024 diff --git a/internal/commons/api_response/vlan_id_with_variable.go b/internal/commons/api_response/vlan_id_with_variable.go index 04d01db..a5378a7 100644 --- a/internal/commons/api_response/vlan_id_with_variable.go +++ b/internal/commons/api_response/vlan_id_with_variable.go @@ -27,3 +27,13 @@ func GatewayVlanAsString(vlanId models.GatewayPortVlanIdWithVariable) basetypes. return types.StringNull() } } + +func WlanDynamicVlanAsString(vlanId models.WlanDynamicVlanDefaultVlanId) basetypes.StringValue { + if v, ok := vlanId.AsString(); ok { + return types.StringValue(*v) + } else if v, ok := vlanId.AsNumber(); ok { + return types.StringValue(fmt.Sprint(*v)) + } else { + return types.StringNull() + } +} diff --git a/internal/resource_org_wlan/sdk_to_terraform_dynamic_vlan.go b/internal/resource_org_wlan/sdk_to_terraform_dynamic_vlan.go index 0a43b1f..70a8807 100644 --- a/internal/resource_org_wlan/sdk_to_terraform_dynamic_vlan.go +++ b/internal/resource_org_wlan/sdk_to_terraform_dynamic_vlan.go @@ -3,6 +3,7 @@ package resource_org_wlan import ( "context" + mist_api "github.com/Juniper/terraform-provider-mist/internal/commons/api_response" mist_transform "github.com/Juniper/terraform-provider-mist/internal/commons/utils" "github.com/tmunzer/mistapi-go/mistapi/models" @@ -24,7 +25,8 @@ func dynamicVlanSdkToTerraform(ctx context.Context, diags *diag.Diagnostics, d * var items []attr.Value var items_type attr.Type = basetypes.StringType{} for _, item := range d.DefaultVlanIds { - items = append(items, types.StringValue(item.String())) + vlan_id := mist_api.WlanDynamicVlanAsString(item) + items = append(items, vlan_id) } r, e := types.ListValue(items_type, items) diags.Append(e...) diff --git a/internal/resource_site_wlan/sdk_to_terraform_dynamic_vlan.go b/internal/resource_site_wlan/sdk_to_terraform_dynamic_vlan.go index 2aa03ae..2ce523b 100644 --- a/internal/resource_site_wlan/sdk_to_terraform_dynamic_vlan.go +++ b/internal/resource_site_wlan/sdk_to_terraform_dynamic_vlan.go @@ -3,6 +3,7 @@ package resource_site_wlan import ( "context" + mist_api "github.com/Juniper/terraform-provider-mist/internal/commons/api_response" mist_transform "github.com/Juniper/terraform-provider-mist/internal/commons/utils" "github.com/tmunzer/mistapi-go/mistapi/models" @@ -24,7 +25,8 @@ func dynamicVlanSdkToTerraform(ctx context.Context, diags *diag.Diagnostics, d * var items []attr.Value var items_type attr.Type = basetypes.StringType{} for _, item := range d.DefaultVlanIds { - items = append(items, types.StringValue(item.String())) + vlan_id := mist_api.WlanDynamicVlanAsString(item) + items = append(items, vlan_id) } r, e := types.ListValue(items_type, items) diags.Append(e...) diff --git a/templates/guides/release_note_0.2.xx.md b/templates/guides/release_note_0.2.xx.md index dfc9136..1e0331b 100644 --- a/templates/guides/release_note_0.2.xx.md +++ b/templates/guides/release_note_0.2.xx.md @@ -7,6 +7,13 @@ description: |- # Release Notes for v0.2.xx +## Release Notes for v0.2.16 +**release date** : January 2nd, 2025 + +### Fix +* fix `mist_org_wlan.dynamic_vlan.default_vlan_ids` and `mist_site_wlan.dynamic_vlan.default_vlan_ids` issue when converting the value from the Go SDK to Terraform. + + ## Release Notes for v0.2.15 **release date** : December 27th, 2024