Skip to content

Commit ff9dbac

Browse files
committed
Avoid redundant volume resize if size matches after snapshot creation.
1 parent 3db6fa4 commit ff9dbac

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

cloudscale/resource_cloudscale_volume.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,10 +146,13 @@ func resourceCloudscaleVolumeCreate(d *schema.ResourceData, meta any) error {
146146

147147
if fromSnapshot {
148148
if v, ok := d.GetOk("size_gb"); ok {
149-
log.Printf("[INFO] Resizing volume %s to %d GB after creation from snapshot", volume.UUID, v.(int))
150-
updateReq := &cloudscale.VolumeUpdateRequest{SizeGB: v.(int)}
151-
if err := client.Volumes.Update(context.Background(), volume.UUID, updateReq); err != nil {
152-
return fmt.Errorf("Error resizing volume (%s) after creation from snapshot: %s", volume.UUID, err)
149+
sizeGB := v.(int)
150+
if sizeGB != volume.SizeGB {
151+
log.Printf("[INFO] Resizing volume %s to %d GB after creation from snapshot", volume.UUID, sizeGB)
152+
updateReq := &cloudscale.VolumeUpdateRequest{SizeGB: sizeGB}
153+
if err := client.Volumes.Update(context.Background(), volume.UUID, updateReq); err != nil {
154+
return fmt.Errorf("Error resizing volume (%s) after creation from snapshot: %s", volume.UUID, err)
155+
}
153156
}
154157
}
155158

0 commit comments

Comments
 (0)