55 "context"
66 "errors"
77 "fmt"
8- ipamAPI "github.com/scaleway/scaleway-sdk-go/api/ipam/v1"
9- "github.com/scaleway/terraform-provider-scaleway/v2/internal/services/ipam"
108 "io"
119 "log"
1210 "strconv"
@@ -21,6 +19,7 @@ import (
2119 "github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
2220 block "github.com/scaleway/scaleway-sdk-go/api/block/v1alpha1"
2321 instanceSDK "github.com/scaleway/scaleway-sdk-go/api/instance/v1"
22+ ipamAPI "github.com/scaleway/scaleway-sdk-go/api/ipam/v1"
2423 "github.com/scaleway/scaleway-sdk-go/api/marketplace/v2"
2524 "github.com/scaleway/scaleway-sdk-go/scw"
2625 scwvalidation "github.com/scaleway/scaleway-sdk-go/validation"
@@ -33,6 +32,7 @@ import (
3332 "github.com/scaleway/terraform-provider-scaleway/v2/internal/meta"
3433 "github.com/scaleway/terraform-provider-scaleway/v2/internal/services/account"
3534 "github.com/scaleway/terraform-provider-scaleway/v2/internal/services/instance/instancehelpers"
35+ "github.com/scaleway/terraform-provider-scaleway/v2/internal/services/ipam"
3636 "github.com/scaleway/terraform-provider-scaleway/v2/internal/services/vpc"
3737 "github.com/scaleway/terraform-provider-scaleway/v2/internal/types"
3838 "github.com/scaleway/terraform-provider-scaleway/v2/internal/verify"
@@ -794,30 +794,35 @@ func ResourceInstanceServerRead(ctx context.Context, d *schema.ResourceData, m i
794794 return diag .FromErr (err )
795795 }
796796
797- var privateNICIDs []string
797+ privateNICIDs := []string ( nil )
798798 for _ , nic := range ph .privateNICsMap {
799799 privateNICIDs = append (privateNICIDs , nic .ID )
800800 }
801801
802- var allPrivateIPs []map [string ]interface {}
802+ allPrivateIPs := []map [string ]interface {}( nil )
803803 resourceType := ipamAPI .ResourceTypeInstancePrivateNic
804+
804805 region , err := zone .Region ()
805806 if err != nil {
806807 return diag .FromErr (err )
807808 }
809+
808810 for _ , nicID := range privateNICIDs {
809811 opts := & ipam.GetResourcePrivateIPsOptions {
810812 ResourceType : & resourceType ,
811813 ResourceID : & nicID ,
812814 }
815+
813816 privateIPs , err := ipam .GetResourcePrivateIPs (ctx , m , region , opts )
814817 if err != nil {
815818 return diag .FromErr (err )
816819 }
820+
817821 if privateIPs != nil {
818822 allPrivateIPs = append (allPrivateIPs , privateIPs ... )
819823 }
820824 }
825+
821826 _ = d .Set ("private_ips" , allPrivateIPs )
822827
823828 ////
0 commit comments