mirror of
https://github.com/GNS3/gns3-server.git
synced 2025-06-22 16:59:02 +00:00
Backport auxiliary console support for Qemu, Docker and Dynamips nodes
This commit is contained in:
@ -52,7 +52,9 @@ class Router(BaseNode):
|
||||
:param manager: Parent VM Manager
|
||||
:param dynamips_id: ID to use with Dynamips
|
||||
:param console: console port
|
||||
:param console_type: console type
|
||||
:param aux: auxiliary console port
|
||||
:param aux_type: auxiliary console type
|
||||
:param platform: Platform of this router
|
||||
"""
|
||||
|
||||
@ -61,9 +63,9 @@ class Router(BaseNode):
|
||||
2: "running",
|
||||
3: "suspended"}
|
||||
|
||||
def __init__(self, name, node_id, project, manager, dynamips_id=None, console=None, console_type="telnet", aux=None, platform="c7200", hypervisor=None, ghost_flag=False):
|
||||
def __init__(self, name, node_id, project, manager, dynamips_id=None, console=None, console_type="telnet", aux=None, aux_type="none", platform="c7200", hypervisor=None, ghost_flag=False):
|
||||
|
||||
super().__init__(name, node_id, project, manager, console=console, console_type=console_type, aux=aux, allocate_aux=aux)
|
||||
super().__init__(name, node_id, project, manager, console=console, console_type=console_type, aux=aux, aux_type=aux_type)
|
||||
|
||||
self._working_directory = os.path.join(self.project.module_working_directory(self.manager.module_name.lower()), self.id)
|
||||
try:
|
||||
@ -166,6 +168,7 @@ class Router(BaseNode):
|
||||
"console": self.console,
|
||||
"console_type": self.console_type,
|
||||
"aux": self.aux,
|
||||
"aux_type": self.aux_type,
|
||||
"mac_addr": self._mac_addr,
|
||||
"system_id": self._system_id}
|
||||
|
||||
@ -223,15 +226,14 @@ class Router(BaseNode):
|
||||
platform=self._platform,
|
||||
id=self._id))
|
||||
|
||||
if self._console:
|
||||
if self._console is not None:
|
||||
await self._hypervisor.send('vm set_con_tcp_port "{name}" {console}'.format(name=self._name, console=self._console))
|
||||
|
||||
if self.aux is not None:
|
||||
await self._hypervisor.send('vm set_aux_tcp_port "{name}" {aux}'.format(name=self._name, aux=self.aux))
|
||||
|
||||
# get the default base MAC address
|
||||
mac_addr = await self._hypervisor.send('{platform} get_mac_addr "{name}"'.format(platform=self._platform,
|
||||
name=self._name))
|
||||
mac_addr = await self._hypervisor.send('{platform} get_mac_addr "{name}"'.format(platform=self._platform, name=self._name))
|
||||
self._mac_addr = mac_addr[0]
|
||||
|
||||
self._hypervisor.devices.append(self)
|
||||
|
Reference in New Issue
Block a user