mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-03 04:12:31 +01:00
server: fix reset sshkey is broken in master/4.16 (#5390)
* server: fix reset sshkey is broken in master/4.16 * Revert "server: fix reset sshkey is broken in master/4.16" This reverts commit db278cf412f5ba4de2787e9511de75fc861097df. * update #5390 * server: fix another regression of #4819 and #5274 * update #5390
This commit is contained in:
parent
a755ecfce8
commit
b13930f946
@ -254,10 +254,6 @@ public class ConfigDriveNetworkElement extends AdapterBase implements NetworkEle
|
||||
|
||||
final boolean canHandle = canHandle(network.getTrafficType());
|
||||
|
||||
if (canHandle) {
|
||||
storePasswordInVmDetails(vm);
|
||||
}
|
||||
|
||||
return canHandle;
|
||||
}
|
||||
|
||||
|
||||
@ -856,7 +856,6 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
|
||||
throw new InvalidParameterValueException("unable to find a virtual machine by id" + cmd.getId());
|
||||
}
|
||||
|
||||
_vmDao.loadDetails(userVm);
|
||||
VMTemplateVO template = _templateDao.findByIdIncludingRemoved(userVm.getTemplateId());
|
||||
|
||||
// Do parameters input validation
|
||||
@ -886,16 +885,14 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
|
||||
throw new CloudRuntimeException("Failed to reset SSH Key for the virtual machine ");
|
||||
}
|
||||
|
||||
removeEncryptedPasswordFromUserVmVoDetails(userVm);
|
||||
removeEncryptedPasswordFromUserVmVoDetails(vmId);
|
||||
|
||||
_vmDao.loadDetails(userVm);
|
||||
return userVm;
|
||||
}
|
||||
|
||||
protected void removeEncryptedPasswordFromUserVmVoDetails(UserVmVO userVmVo) {
|
||||
Map<String, String> details = userVmVo.getDetails();
|
||||
details.remove(VmDetailConstants.ENCRYPTED_PASSWORD);
|
||||
userVmVo.setDetails(details);
|
||||
_vmDao.saveDetails(userVmVo);
|
||||
protected void removeEncryptedPasswordFromUserVmVoDetails(long vmId) {
|
||||
userVmDetailsDao.removeDetail(vmId, VmDetailConstants.ENCRYPTED_PASSWORD);
|
||||
}
|
||||
|
||||
private boolean resetVMSSHKeyInternal(Long vmId, String sshPublicKey) throws ResourceUnavailableException, InsufficientCapacityException {
|
||||
|
||||
@ -558,17 +558,4 @@ public class UserVmManagerImplTest {
|
||||
Mockito.when(newRootDiskOffering.getName()).thenReturn("OfferingName");
|
||||
return newRootDiskOffering;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void validateRemoveEncryptedPasswordFromUserVmVoDetails(){
|
||||
Map<String, String> detailsMock = Mockito.mock(HashMap.class);
|
||||
|
||||
Mockito.doReturn(detailsMock).when(userVmVoMock).getDetails();
|
||||
Mockito.doNothing().when(userVmDao).saveDetails(userVmVoMock);
|
||||
userVmManagerImpl.removeEncryptedPasswordFromUserVmVoDetails(userVmVoMock);
|
||||
|
||||
Mockito.verify(detailsMock, Mockito.times(1)).remove(VmDetailConstants.ENCRYPTED_PASSWORD);
|
||||
Mockito.verify(userVmVoMock, Mockito.times(1)).setDetails(detailsMock);
|
||||
Mockito.verify(userVmDao, Mockito.times(1)).saveDetails(userVmVoMock);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user