From f77ab62377a9d9216dcbe2d0f360f9435a159bb4 Mon Sep 17 00:00:00 2001 From: Nicolas Vazquez Date: Fri, 23 Dec 2022 10:50:00 -0300 Subject: [PATCH] Backport PR#6919 last commit (#218) --- .../consoleproxy/ConsoleAccessManager.java | 3 +-- .../consoleproxy/ConsoleAccessManagerImpl.java | 15 +++------------ 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/api/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManager.java b/api/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManager.java index c7e7f4371c8..b1bd198309a 100644 --- a/api/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManager.java +++ b/api/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManager.java @@ -18,9 +18,8 @@ package org.apache.cloudstack.consoleproxy; import com.cloud.utils.component.Manager; import org.apache.cloudstack.api.command.user.consoleproxy.ConsoleEndpoint; -import org.apache.cloudstack.framework.config.Configurable; -public interface ConsoleAccessManager extends Manager, Configurable { +public interface ConsoleAccessManager extends Manager { ConsoleEndpoint generateConsoleEndpoint(Long vmId, String extraSecurityToken, String clientAddress); diff --git a/server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java b/server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java index ce1aa64fa61..b6522d4edc7 100644 --- a/server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java +++ b/server/src/main/java/org/apache/cloudstack/consoleproxy/ConsoleAccessManagerImpl.java @@ -47,7 +47,6 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import org.apache.cloudstack.api.command.user.consoleproxy.ConsoleEndpoint; import org.apache.cloudstack.context.CallContext; -import org.apache.cloudstack.framework.config.ConfigKey; import org.apache.cloudstack.framework.security.keys.KeysManager; import org.apache.commons.codec.binary.Base64; import org.apache.commons.lang3.StringUtils; @@ -207,13 +206,14 @@ public class ConsoleAccessManagerImpl extends ManagerBase implements ConsoleAcce throw new CloudRuntimeException(msg); } - if (vm.getHostId() == null) { + Long hostId = vm.getState() != VirtualMachine.State.Migrating ? vm.getHostId() : vm.getLastHostId(); + if (hostId == null) { msg = "VM " + vmUuid + " lost host info, sending blank response for console access request"; s_logger.warn(msg); throw new CloudRuntimeException(msg); } - HostVO host = managementServer.getHostBy(vm.getHostId()); + HostVO host = managementServer.getHostBy(hostId); if (host == null) { msg = "VM " + vmUuid + "'s host does not exist, sending blank response for console access request"; s_logger.warn(msg); @@ -465,13 +465,4 @@ public class ConsoleAccessManagerImpl extends ManagerBase implements ConsoleAcce } } - @Override - public String getConfigComponentName() { - return ConsoleAccessManagerImpl.class.getSimpleName(); - } - - @Override - public ConfigKey[] getConfigKeys() { - return new ConfigKey[] {}; - } }