This is an automated email from the ASF dual-hosted git repository. nvazquez pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/main by this push: new b13930f server: fix reset sshkey is broken in master/4.16 (#5390) b13930f is described below commit b13930f946727b298114a387b1dfb42d99a70929 Author: Wei Zhou <weiz...@apache.org> AuthorDate: Wed Sep 8 02:59:06 2021 +0200 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 --- .../cloud/network/element/ConfigDriveNetworkElement.java | 4 ---- server/src/main/java/com/cloud/vm/UserVmManagerImpl.java | 11 ++++------- .../src/test/java/com/cloud/vm/UserVmManagerImplTest.java | 13 ------------- 3 files changed, 4 insertions(+), 24 deletions(-) diff --git a/server/src/main/java/com/cloud/network/element/ConfigDriveNetworkElement.java b/server/src/main/java/com/cloud/network/element/ConfigDriveNetworkElement.java index 60e4dec..4f12325 100644 --- a/server/src/main/java/com/cloud/network/element/ConfigDriveNetworkElement.java +++ b/server/src/main/java/com/cloud/network/element/ConfigDriveNetworkElement.java @@ -254,10 +254,6 @@ public class ConfigDriveNetworkElement extends AdapterBase implements NetworkEle final boolean canHandle = canHandle(network.getTrafficType()); - if (canHandle) { - storePasswordInVmDetails(vm); - } - return canHandle; } diff --git a/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java b/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java index cac5bc9..2afc050 100644 --- a/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/main/java/com/cloud/vm/UserVmManagerImpl.java @@ -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 { diff --git a/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java b/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java index ae647f3..da59f07 100644 --- a/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java +++ b/server/src/test/java/com/cloud/vm/UserVmManagerImplTest.java @@ -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); - } }