diff libervia/web/server/server.py @ 1612:ebd538cb26cb

server, pages (files/view): use new `use_local_shared_tmp` option.
author Goffi <goffi@goffi.org>
date Wed, 12 Jun 2024 23:11:08 +0200
parents 4a9679369856
children
line wrap: on
line diff
--- a/libervia/web/server/server.py	Wed Jun 12 23:09:49 2024 +0200
+++ b/libervia/web/server/server.py	Wed Jun 12 23:11:08 2024 +0200
@@ -223,6 +223,8 @@
         if not self.options["port_https_ext"]:
             self.options["port_https_ext"] = self.options["port_https"]
 
+        self.local_shared_path: Path|None = None
+
         self._cleanup = []
 
         self.sessions = {}  # key = session value = user
@@ -455,6 +457,15 @@
         self.media_dir = await self.bridge_call("config_get", "", "media_dir")
         self.local_dir = await self.bridge_call("config_get", "", "local_dir")
         self.cache_root_dir = os.path.join(self.local_dir, C.CACHE_DIR)
+
+        use_local_shared_tmp = C.bool(config.config_get(
+            self.main_conf, "", "use_local_shared_tmp", C.BOOL_FALSE
+        ))
+        if use_local_shared_tmp:
+            C.LOCAL_SHARED_DIR = "_SHARED_TMP"
+            self.local_shared_path = self.cache_root_dir / Path(C.LOCAL_SHARED_DIR)
+            self.local_shared_path.mkdir(0o700, parents=True, exist_ok=True)
+
         self.renderer = template.Renderer(self, self._front_url_filter)
         sites_names = list(self.renderer.sites_paths.keys())