@@ -15,6 +15,7 @@ import (
1515 "github.com/hashicorp/go-azure-helpers/resourcemanager/commonids"
1616 "github.com/hashicorp/go-azure-helpers/resourcemanager/commonschema"
1717 "github.com/hashicorp/go-azure-helpers/resourcemanager/location"
18+ "github.com/hashicorp/go-azure-helpers/resourcemanager/resourceids"
1819 "github.com/hashicorp/go-azure-sdk/resource-manager/web/2023-12-01/appserviceplans"
1920 "github.com/hashicorp/terraform-provider-azurerm/internal/sdk"
2021 "github.com/hashicorp/terraform-provider-azurerm/internal/services/appservice/helpers"
@@ -26,14 +27,21 @@ import (
2627 "github.com/hashicorp/terraform-provider-azurerm/internal/tf/validation"
2728)
2829
30+ //go:generate go run ../../tools/generator-tests resourceidentity -resource-name service_plan -service-package-name appservice -properties "resource_group_name,name" -known-values "subscription_id:data.Subscriptions.Primary"
31+
2932type ServicePlanResource struct {}
3033
3134var (
3235 _ sdk.ResourceWithUpdate = ServicePlanResource {}
3336 _ sdk.ResourceWithStateMigration = ServicePlanResource {}
3437 _ sdk.ResourceWithCustomizeDiff = ServicePlanResource {}
38+ _ sdk.ResourceWithIdentity = ServicePlanResource {}
3539)
3640
41+ func (r ServicePlanResource ) Identity () resourceids.ResourceId {
42+ return & commonids.AppServicePlanId {}
43+ }
44+
3745type OSType string
3846
3947const (
@@ -214,6 +222,9 @@ func (r ServicePlanResource) Create() sdk.ResourceFunc {
214222 }
215223
216224 metadata .SetID (id )
225+ if err := pluginsdk .SetResourceIdentityData (metadata .ResourceData , & id ); err != nil {
226+ return err
227+ }
217228
218229 return nil
219230 },
@@ -283,6 +294,10 @@ func (r ServicePlanResource) Read() sdk.ResourceFunc {
283294 state .Tags = pointer .From (model .Tags )
284295 }
285296
297+ if err := pluginsdk .SetResourceIdentityData (metadata .ResourceData , id ); err != nil {
298+ return err
299+ }
300+
286301 return metadata .Encode (& state )
287302 },
288303 }
0 commit comments