From 3e29ae4276f53058f0e5371735839f311484c950 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 27 Dec 2022 10:05:13 +0800 Subject: [PATCH] Add config option to change the server name. Ref #2149 --- conf/gns3_server.conf | 3 +++ gns3server/controller/__init__.py | 3 ++- gns3server/schemas/config.py | 3 +++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/conf/gns3_server.conf b/conf/gns3_server.conf index 0b628b4b..fe15c335 100644 --- a/conf/gns3_server.conf +++ b/conf/gns3_server.conf @@ -15,6 +15,9 @@ default_admin_password = admin [Server] +; Server name, default is what is returned by socket.gethostname() +name = GNS3_Server + ; What protocol the server uses (http or https) protocol = http diff --git a/gns3server/controller/__init__.py b/gns3server/controller/__init__.py index 113e712e..21c05b9d 100644 --- a/gns3server/controller/__init__.py +++ b/gns3server/controller/__init__.py @@ -65,6 +65,7 @@ class Controller: self._load_base_files() server_config = Config.instance().settings.Server Config.instance().listen_for_config_changes(self._update_config) + name = server_config.name host = server_config.host port = server_config.port @@ -86,7 +87,7 @@ class Controller: try: self._local_server = await self.add_compute( compute_id="local", - name=f"{socket.gethostname()} (controller)", + name=name, protocol=protocol, host=host, console_host=console_host, diff --git a/gns3server/schemas/config.py b/gns3server/schemas/config.py index b09be55a..99202c48 100644 --- a/gns3server/schemas/config.py +++ b/gns3server/schemas/config.py @@ -14,6 +14,8 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import socket + from enum import Enum from pydantic import BaseModel, Field, SecretStr, FilePath, DirectoryPath, validator from typing import List @@ -123,6 +125,7 @@ class BuiltinSymbolTheme(str, Enum): class ServerSettings(BaseModel): local: bool = False + name: str = f"{socket.gethostname()} (controller)" protocol: ServerProtocol = ServerProtocol.http host: str = "0.0.0.0" port: int = Field(3080, gt=0, le=65535)