diff --git a/functions.php b/functions.php
index 84e8759..b7e9a94 100644
--- a/functions.php
+++ b/functions.php
@@ -12,6 +12,28 @@ function ping_redis() {
else return false;
}
+function check_install() {
+
+ global $REDIS_HOST;
+
+ $redis = new Redis();
+ $redis->connect($REDIS_HOST);
+ if ($redis->ping()) {
+ $members = $redis->sMembers("web_in"); // redis-cli -h redis-server smembers $group
+ print_r($members);
+
+ $in_progress=0;
+ foreach ($members as $member) {
+ echo substr($member,0,7);
+ if (substr($member,0,7)=="install") {
+ $in_progress=$member;
+ break;
+ }
+ }
+ return $in_progress;
+ }
+}
+
function check_redis($group="scheduler_in", $key="") {
global $REDIS_HOST;
diff --git a/install.php b/install.php
index c25502e..9991796 100644
--- a/install.php
+++ b/install.php
@@ -31,9 +31,15 @@ $json = json_encode($_POST, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
// TODO preview about selected options?
// TODO - new install in progress? INSTALL_STATUS=0
-$key = "install:".date("YmdHis");
-redis_set($key,$json);
-//$key = "install:20240816101849"; // DEBUG
+if ($key=check_install()) {
+ $header_text="Install has already started.
Please wait and do not start a new one...";
+}
+else {
+ $header_text="Installing in progress... Please wait...";
+ $key = "install:".date("YmdHis");
+ redis_set($key,$json);
+ //$key = "install:20240816101849"; // DEBUG
+}
/*
put_install_envs();
@@ -62,7 +68,7 @@ echo "
".$output."";