CLOUDSTACK-4482: getVMPassword() API call does not return password for Vms that are deployed with password enabled templates.
Improving the error message saying no ssh key pair is assinged to VM to get the encrypted password and included a check for password enabled template Signed-off-by: Koushik Das <[email protected]> (cherry picked from commit 37d500d2a6b71c267af20a83208eb6049157f95f) Signed-off-by: animesh <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/1e3eeacf Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/1e3eeacf Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/1e3eeacf Branch: refs/heads/4.2 Commit: 1e3eeacf2de3e09d1495736d1d07c03cf561a933 Parents: daaba12 Author: Harikrishna Patnala <[email protected]> Authored: Tue Aug 27 11:46:26 2013 +0530 Committer: animesh <[email protected]> Committed: Tue Aug 27 12:54:52 2013 -0700 ---------------------------------------------------------------------- server/src/com/cloud/server/ManagementServerImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/1e3eeacf/server/src/com/cloud/server/ManagementServerImpl.java ---------------------------------------------------------------------- diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index d1e4e5f..b20bf48 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -3673,7 +3673,8 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe _userVmDao.loadDetails(vm); String password = vm.getDetail("Encrypted.Password"); if (password == null || password.equals("")) { - InvalidParameterValueException ex = new InvalidParameterValueException("No password for VM with specified id found."); + InvalidParameterValueException ex = new InvalidParameterValueException("No password for VM with specified id found. " + + "If VM is created from password enabled template and SSH keypair is assigned to VM then only password can be retrieved."); ex.addProxyObject(vm.getUuid(), "vmId"); throw ex; }
