Log In
Log In
Places
All Projects
Status Monitor
Collapse sidebar
matrix-synapse:testing
matrix-synapse
matrix-synapse-proper-paths.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File matrix-synapse-proper-paths.patch of Package matrix-synapse
From 55ff63215b5da392ae523b256735fe37c438358f Mon Sep 17 00:00:00 2001 From: Oleg Girko <ol@infoserver.lv> Date: Wed, 25 Nov 2015 01:32:19 +0000 Subject: [PATCH] Use proper paths for uploads, database, pid and log files. Signed-off-by: Oleg Girko <ol@infoserver.lv> --- synapse/config/_base.py | 21 +++++++++++++++++++++ synapse/config/database.py | 4 ++-- synapse/config/logger.py | 2 +- synapse/config/repository.py | 2 +- synapse/config/server.py | 4 ++-- tests/config/test_database.py | 4 ++-- tests/config/test_generate.py | 3 ++- 7 files changed, 31 insertions(+), 9 deletions(-) diff --git a/synapse/config/_base.py b/synapse/config/_base.py index adce34c03a..ac0bce67b4 100644 --- a/synapse/config/_base.py +++ b/synapse/config/_base.py @@ -254,6 +254,27 @@ class Config: def abspath(file_path: str) -> str: return os.path.abspath(file_path) if file_path else file_path + @staticmethod + def runpath(file_path: str) -> str: + if file_path: + return os.path.join("/var/run/synapse", file_path) + else: + return file_path + + @staticmethod + def varpath(file_path: str) -> str: + if file_path: + return os.path.join("/var/lib/synapse", file_path) + else: + return file_path + + @staticmethod + def logpath(file_path: str) -> str: + if file_path: + return os.path.join("/var/log/synapse", file_path) + else: + return file_path + @classmethod def path_exists(cls, file_path: str) -> bool: return path_exists(file_path) diff --git a/synapse/config/database.py b/synapse/config/database.py index c4ca63a1fa..5f795b235d 100644 --- a/synapse/config/database.py +++ b/synapse/config/database.py @@ -131,7 +131,7 @@ class DatabaseConfig(Config): def generate_config_section(self, data_dir_path: str, **kwargs: Any) -> str: return DEFAULT_CONFIG % { - "database_path": os.path.join(data_dir_path, "homeserver.db") + "database_path": self.varpath("homeserver.db") } def read_arguments(self, args: argparse.Namespace) -> None: @@ -162,7 +162,7 @@ class DatabaseConfig(Config): def set_databasepath(self, database_path: str) -> None: if database_path != ":memory:": - database_path = self.abspath(database_path) + database_path = self.varpath(database_path) self.databases[0].config["args"]["database"] = database_path diff --git a/synapse/config/logger.py b/synapse/config/logger.py index fca0b08d6d..1e3ae8ea3f 100644 --- a/synapse/config/logger.py +++ b/synapse/config/logger.py @@ -191,7 +191,7 @@ class LoggingConfig(Config): def generate_files(self, config: Dict[str, Any], config_dir_path: str) -> None: log_config = config.get("log_config") if log_config and not os.path.exists(log_config): - log_file = self.abspath("homeserver.log") + log_file = self.logpath("homeserver.log") print( "Generating log config file %s which will log to %s" % (log_config, log_file) diff --git a/synapse/config/repository.py b/synapse/config/repository.py index 97ce6de528..1a05c99186 100644 --- a/synapse/config/repository.py +++ b/synapse/config/repository.py @@ -278,5 +278,5 @@ class ContentRepositoryConfig(Config): def generate_config_section(self, data_dir_path: str, **kwargs: Any) -> str: assert data_dir_path is not None - media_store = os.path.join(data_dir_path, "media_store") + media_store = self.varpath("media_store") return f"media_store_path: {media_store}" diff --git a/synapse/config/server.py b/synapse/config/server.py index fd52c0475c..798f38cca9 100644 --- a/synapse/config/server.py +++ b/synapse/config/server.py @@ -306,7 +306,7 @@ class ServerConfig(Config): except ValueError as e: raise ConfigError(str(e)) - self.pid_file = self.abspath(config.get("pid_file")) + self.pid_file = self.runpath(config.get("pid_file")) self.soft_file_limit = config.get("soft_file_limit", 0) self.daemonize = bool(config.get("daemonize")) self.print_pidfile = bool(config.get("print_pidfile")) @@ -799,7 +799,7 @@ class ServerConfig(Config): bind_port = 8448 unsecure_port = 8008 - pid_file = os.path.join(data_dir_path, "homeserver.pid") + pid_file = self.runpath("homeserver.pid") secure_listeners = [] unsecure_listeners = [] diff --git a/tests/config/test_database.py b/tests/config/test_database.py index b46519f84a..2052c84f33 100644 --- a/tests/config/test_database.py +++ b/tests/config/test_database.py @@ -28,12 +28,12 @@ from tests import unittest class DatabaseConfigTestCase(unittest.TestCase): def test_database_configured_correctly(self) -> None: conf = yaml.safe_load( - DatabaseConfig().generate_config_section(data_dir_path="/data_dir_path") + DatabaseConfig().generate_config_section(data_dir_path="/var/lib/synapse") ) expected_database_conf = { "name": "sqlite3", - "args": {"database": "/data_dir_path/homeserver.db"}, + "args": {"database": "/var/lib/synapse/homeserver.db"}, } self.assertEqual(conf["database"], expected_database_conf) diff --git a/tests/config/test_generate.py b/tests/config/test_generate.py index 5ab96e16e1..2a3be04d3a 100644 --- a/tests/config/test_generate.py +++ b/tests/config/test_generate.py @@ -27,6 +27,7 @@ from contextlib import redirect_stdout from io import StringIO from synapse.config.homeserver import HomeServerConfig +from synapse.config._base import Config from tests import unittest @@ -60,7 +61,7 @@ class ConfigGenerationTestCase(unittest.TestCase): self.assert_log_filename_is( os.path.join(self.dir, "lemurs.win.log.config"), - os.path.join(os.getcwd(), "homeserver.log"), + Config.logpath("homeserver.log"), ) def assert_log_filename_is(self, log_config_file: str, expected: str) -> None: -- 2.46.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Contact
Support
@OBShq
The Open Build Service is an
openSUSE project
.
Log In
Places
Places
All Projects
Status Monitor