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 <[email protected]>
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);
- }
}