summary refs log tree commit diff
diff options
context:
space:
mode:
authorEric Myhre <hash@exultant.us>2015-06-18 23:38:20 -0500
committerEric Myhre <hash@exultant.us>2015-06-18 23:38:20 -0500
commit9e5a353663c111cfe34b727f75eed3616201ef72 (patch)
tree042831c1ae4e96c57d606c09ece7ff502af6726b
parentFix bug where synapse was sending AS user queries incorrectly. (diff)
downloadsynapse-9e5a353663c111cfe34b727f75eed3616201ef72.tar.xz
Make upload dir a configurable path.
Fixes SYN-425.

Signed-off-by: Eric Myhre <hash@exultant.us>
-rwxr-xr-xsynapse/app/homeserver.py3
-rw-r--r--synapse/config/repository.py5
2 files changed, 6 insertions, 2 deletions
diff --git a/synapse/app/homeserver.py b/synapse/app/homeserver.py
index 95e9122d3e..9aec23d065 100755
--- a/synapse/app/homeserver.py
+++ b/synapse/app/homeserver.py
@@ -112,7 +112,7 @@ class SynapseHomeServer(HomeServer):
 
     def build_resource_for_content_repo(self):
         return ContentRepoResource(
-            self, self.upload_dir, self.auth, self.content_addr
+            self, self.config.uploads_path, self.auth, self.content_addr
         )
 
     def build_resource_for_media_repository(self):
@@ -375,7 +375,6 @@ def setup(config_options):
 
     hs = SynapseHomeServer(
         config.server_name,
-        upload_dir=os.path.abspath("uploads"),
         db_config=config.database_config,
         tls_context_factory=tls_context_factory,
         config=config,
diff --git a/synapse/config/repository.py b/synapse/config/repository.py
index adaf4e4bb2..6891abd71d 100644
--- a/synapse/config/repository.py
+++ b/synapse/config/repository.py
@@ -21,13 +21,18 @@ class ContentRepositoryConfig(Config):
         self.max_upload_size = self.parse_size(config["max_upload_size"])
         self.max_image_pixels = self.parse_size(config["max_image_pixels"])
         self.media_store_path = self.ensure_directory(config["media_store_path"])
+        self.uploads_path = self.ensure_directory(config["uploads_path"])
 
     def default_config(self, config_dir_path, server_name):
         media_store = self.default_path("media_store")
+        uploads_path = self.default_path("uploads")
         return """
         # Directory where uploaded images and attachments are stored.
         media_store_path: "%(media_store)s"
 
+        # Directory where in-progress uploads are stored.
+        uploads_path: "%(uploads_path)s"
+
         # The largest allowed upload size in bytes
         max_upload_size: "10M"