mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Fix root disk resize (don't allow) when service offering has root disk size, only allow through service offering change (#9428)
This commit is contained in:
parent
0fae0c021f
commit
ebaf064d92
@ -126,8 +126,6 @@ import com.cloud.agent.api.ModifyTargetsCommand;
|
||||
import com.cloud.agent.api.to.DataTO;
|
||||
import com.cloud.agent.api.to.DiskTO;
|
||||
import com.cloud.api.ApiDBUtils;
|
||||
import com.cloud.api.query.dao.ServiceOfferingJoinDao;
|
||||
import com.cloud.api.query.vo.ServiceOfferingJoinVO;
|
||||
import com.cloud.configuration.Config;
|
||||
import com.cloud.configuration.ConfigurationManager;
|
||||
import com.cloud.configuration.Resource.ResourceType;
|
||||
@ -275,8 +273,6 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic
|
||||
@Inject
|
||||
private ServiceOfferingDetailsDao _serviceOfferingDetailsDao;
|
||||
@Inject
|
||||
private ServiceOfferingJoinDao serviceOfferingJoinDao;
|
||||
@Inject
|
||||
private UserVmDao _userVmDao;
|
||||
@Inject
|
||||
private UserVmDetailsDao userVmDetailsDao;
|
||||
@ -1399,8 +1395,7 @@ public class VolumeApiServiceImpl extends ManagerBase implements VolumeApiServic
|
||||
boolean isNotIso = format != null && format != ImageFormat.ISO;
|
||||
boolean isRoot = Volume.Type.ROOT.equals(volume.getVolumeType());
|
||||
|
||||
ServiceOfferingJoinVO serviceOfferingView = serviceOfferingJoinDao.findById(diskOffering.getId());
|
||||
boolean isOfferingEnforcingRootDiskSize = serviceOfferingView != null && serviceOfferingView.getRootDiskSize() > 0;
|
||||
boolean isOfferingEnforcingRootDiskSize = diskOffering.isComputeOnly() && diskOffering.getDiskSize() > 0;
|
||||
|
||||
return isOfferingEnforcingRootDiskSize && isRoot && isNotIso;
|
||||
}
|
||||
|
||||
@ -84,7 +84,6 @@ import org.mockito.junit.MockitoJUnitRunner;
|
||||
import org.springframework.test.util.ReflectionTestUtils;
|
||||
|
||||
import com.cloud.api.query.dao.ServiceOfferingJoinDao;
|
||||
import com.cloud.api.query.vo.ServiceOfferingJoinVO;
|
||||
import com.cloud.configuration.Resource;
|
||||
import com.cloud.configuration.Resource.ResourceType;
|
||||
import com.cloud.dc.DataCenterVO;
|
||||
@ -1365,10 +1364,8 @@ public class VolumeApiServiceImplTest {
|
||||
|
||||
when(volume.getTemplateId()).thenReturn(1l);
|
||||
DiskOfferingVO diskOffering = Mockito.mock(DiskOfferingVO.class);
|
||||
|
||||
ServiceOfferingJoinVO serviceOfferingJoinVO = Mockito.mock(ServiceOfferingJoinVO.class);
|
||||
when(serviceOfferingJoinVO.getRootDiskSize()).thenReturn(rootDisk);
|
||||
when(serviceOfferingJoinDao.findById(anyLong())).thenReturn(serviceOfferingJoinVO);
|
||||
when(diskOffering.isComputeOnly()).thenReturn(true);
|
||||
when(diskOffering.getDiskSize()).thenReturn(rootDisk);
|
||||
|
||||
VMTemplateVO template = Mockito.mock(VMTemplateVO.class);
|
||||
when(template.getFormat()).thenReturn(imageFormat);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user