Skip to content

Commit d4a4afd

Browse files
committed
fix helper
1 parent 0702470 commit d4a4afd

File tree

2 files changed

+533
-556
lines changed

2 files changed

+533
-556
lines changed

internal/services/baremetal/helpers.go

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"context"
66
"errors"
77
"fmt"
8+
"github.com/scaleway/scaleway-sdk-go/validation"
89
"sort"
910
"time"
1011

@@ -238,8 +239,33 @@ func customDiffOffer() func(ctx context.Context, diff *schema.ResourceDiff, i in
238239
}
239240

240241
oldOffer, newOffer := diff.GetChange("offer")
242+
if oldOffer == newOffer {
243+
return nil
244+
}
245+
241246
newOfferID := regional.ExpandID(newOffer.(string))
242247
oldOfferID := regional.ExpandID(oldOffer.(string))
248+
if validation.IsUUID(oldOffer.(string)) {
249+
oldOfferInfo, err := api.GetOfferByName(&baremetal.GetOfferByNameRequest{
250+
OfferName: oldOffer.(string),
251+
Zone: zone.Zone,
252+
})
253+
if err != nil {
254+
return errors.New("can not find offer" + err.Error())
255+
}
256+
oldOfferID = regional.ExpandID(oldOfferInfo.ID)
257+
}
258+
259+
if validation.IsUUID(newOffer.(string)) {
260+
newOfferInfo, err := api.GetOfferByName(&baremetal.GetOfferByNameRequest{
261+
OfferName: newOffer.(string),
262+
Zone: zone.Zone,
263+
})
264+
if err != nil {
265+
return errors.New("can not find offer" + err.Error())
266+
}
267+
oldOfferID = regional.ExpandID(newOfferInfo.ID)
268+
}
243269

244270
oldOfferDetails, err := FindOfferByID(ctx, api, zone.Zone, oldOfferID.ID)
245271
if err != nil {

internal/services/baremetal/testdata/server-update-subscription-period.cassette.yaml

Lines changed: 507 additions & 556 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)