@ -297,7 +297,7 @@ func resourceComputeCreate(ctx context.Context, d *schema.ResourceData, m interf
loaderType , loaderTypeOk := d . GetOk ( "loader_type" )
loaderType , loaderTypeOk := d . GetOk ( "loader_type" )
bootType , bootTypeOk := d . GetOk ( "boot_type" )
bootType , bootTypeOk := d . GetOk ( "boot_type" )
hotResize , hotResizeOk := d . GetOk ( "hot_resize" )
hotResize , hotResizeOk := d . GetOk Exists ( "hot_resize" )
networkInterfaceNaming , networkInterfaceNamingOk := d . GetOk ( "network_interface_naming" )
networkInterfaceNaming , networkInterfaceNamingOk := d . GetOk ( "network_interface_naming" )
if loaderTypeOk {
if loaderTypeOk {
@ -904,12 +904,12 @@ func resourceComputeUpdate(ctx context.Context, d *schema.ResourceData, m interf
// Note bene: numa_affinity, cpu_pin and hp_backed are not allowed to be changed for compute in STARTED tech status.
// Note bene: numa_affinity, cpu_pin and hp_backed are not allowed to be changed for compute in STARTED tech status.
// If STARTED, we need to stop it before update
// If STARTED, we need to stop it before update
var isStopRequired bool
var isStopRequired bool
if d . HasChanges ( "numa_affinity" , "cpu_pin" , "hp_backed" , "chipset" , "preferred_cpu" ) && d . Get ( "started" ) . ( bool ) {
if d . HasChanges ( "numa_affinity" , "cpu_pin" , "hp_backed" , "chipset" , "preferred_cpu" , "hot_resize" ) && d . Get ( "started" ) . ( bool ) {
isStopRequired = true
isStopRequired = true
}
}
old , new := d . GetChange ( "cpu" )
old , new := d . GetChange ( "cpu" )
if old . ( int ) > new . ( int ) && d . Get ( "started" ) . ( bool ) {
if old . ( int ) > new . ( int ) && d . Get ( "started" ) . ( bool ) && d . Get ( "force_resize" ) . ( bool ) {
isStopRequired = true
isStopRequired = true
}
}
if isStopRequired {
if isStopRequired {
@ -1103,15 +1103,6 @@ func resourceComputeUpdate(ctx context.Context, d *schema.ResourceData, m interf
}
}
if len ( deletedDisks ) > 0 {
if len ( deletedDisks ) > 0 {
stopReq := compute . StopRequest {
ComputeID : computeRec . ID ,
Force : false ,
}
_ , err := c . CloudAPI ( ) . Compute ( ) . Stop ( ctx , stopReq )
if err != nil {
return diag . FromErr ( err )
}
for _ , disk := range deletedDisks {
for _ , disk := range deletedDisks {
diskConv := disk . ( map [ string ] interface { } )
diskConv := disk . ( map [ string ] interface { } )
@ -1132,14 +1123,7 @@ func resourceComputeUpdate(ctx context.Context, d *schema.ResourceData, m interf
return diag . FromErr ( err )
return diag . FromErr ( err )
}
}
}
}
req := compute . StartRequest {
ComputeID : computeRec . ID ,
AltBootID : 0 ,
}
_ , err = c . CloudAPI ( ) . Compute ( ) . Start ( ctx , req )
if err != nil {
return diag . FromErr ( err )
}
}
}
if len ( addedDisks ) > 0 {
if len ( addedDisks ) > 0 {