aboutsummaryrefslogtreecommitdiffstats
path: root/modules/restart.py
diff options
context:
space:
mode:
authorAarni Koskela <akx@iki.fi>2023-06-05 17:04:28 +0000
committerAarni Koskela <akx@iki.fi>2023-06-05 17:04:28 +0000
commit46a5bd64edece07f521409f0adace6cdd6f30a40 (patch)
tree8fc0025162e06ec47090477bf69b70eb7c22d643 /modules/restart.py
parent9781f31f74c1f6acf8e1260f076aeb7a71e2766f (diff)
downloadstable-diffusion-webui-gfx803-46a5bd64edece07f521409f0adace6cdd6f30a40.tar.gz
stable-diffusion-webui-gfx803-46a5bd64edece07f521409f0adace6cdd6f30a40.tar.bz2
stable-diffusion-webui-gfx803-46a5bd64edece07f521409f0adace6cdd6f30a40.zip
Restart: only do restart if running via the wrapper script
Diffstat (limited to 'modules/restart.py')
-rw-r--r--modules/restart.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/modules/restart.py b/modules/restart.py
new file mode 100644
index 00000000..18eacaf3
--- /dev/null
+++ b/modules/restart.py
@@ -0,0 +1,23 @@
+import os
+from pathlib import Path
+
+from modules.paths_internal import script_path
+
+
+def is_restartable() -> bool:
+ """
+ Return True if the webui is restartable (i.e. there is something watching to restart it with)
+ """
+ return bool(os.environ.get('SD_WEBUI_RESTART'))
+
+
+def restart_program() -> None:
+ """creates file tmp/restart and immediately stops the process, which webui.bat/webui.sh interpret as a command to start webui again"""
+
+ (Path(script_path) / "tmp" / "restart").touch()
+
+ stop_program()
+
+
+def stop_program() -> None:
+ os._exit(0)