1 Commits
1.0.3 ... 1.0.4

Author SHA1 Message Date
6af1e18298 upgrade changes
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2025-05-16 08:52:20 +00:00
4 changed files with 58 additions and 22 deletions

View File

@@ -155,27 +155,35 @@ function get_updates() {
});
}
function check_upgrade() {
var url = 'scan.php?op=check_upgrade';
function check_upgrade(service) {
var url = 'scan.php?op=check_upgrade&service='+service;
jQuery.get(url, function(data) {
console.log('check_upgrade: '+data);
if (data=="WAIT" || data=="") {
setTimeout(check_upgrade, 1000);
console.log('check_upgrade '+service+': '+data);
if (data!="") {
jQuery("#status_"+service).html(data);
}
if (data!="OK") {
setTimeout(check_upgrade, 1000, service);
}
else {
// TODO
console.log('upgrade end: '+service);
jQuery("#status_"+service).html('Upgrade has finished');
//get_updates();
}
});
}
function upgrade(service) {
var url = 'scan.php?op=upgrade&service='+service;
jQuery("#status_"+service).html('Upgrade has started');
console.log('upgrade start: '+service);
jQuery.get(url, function(data) {
console.log('upgrade end: '+service);
console.log('check_upgrade '+service+': '+data);
if (data=="OK") {
setTimeout(check_upgrade, 1000);
setTimeout(check_upgrade, 1000, service);
}
else jQuery("#status_"+service).html(data);
});
}

View File

@@ -148,7 +148,7 @@ function show_service_update($name, $update, $uptodate, $error) {
if (!empty($update)) {
$arr = explode(" ",$update);
foreach ($arr as $container) {
$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td>UPDATE AVAILABLE</td><td><a href=\"#\" onclick=\"upgrade('{$name}')\">UPDATE</a></td></tr>";
$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td><div id=\"status_".$name."\">UPDATE AVAILABLE</div></td><td><a href=\"javascript:void(0)\" onclick=\"upgrade('{$name}')\">UPDATE</a></td></tr>";
}
}
@@ -156,7 +156,7 @@ function show_service_update($name, $update, $uptodate, $error) {
if (!empty($uptodate)) {
$arr = explode(" ",$uptodate);
foreach ($arr as $container) {
$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td>Already up to date</td><td><a href=\"#\" onclick=\"upgrade('{$name}')\">FORCE UPDATE</a></td></tr>";
$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td><div id=\"status_".$name."\">Already up to date</div></td><td><a href=\"javacript:void(0)\" onclick=\"upgrade('{$name}')\">FORCE UPDATE</a></td></tr>";
}
}
@@ -165,7 +165,7 @@ function show_service_update($name, $update, $uptodate, $error) {
$arr = explode(" ",$error);
foreach ($arr as $container) {
//$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td>N/A</td><td></td></tr>";
$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td>N/A</td><td><a href=\"#\" onclick=\"upgrade('{$name}')\">TRY UPDATE</a></td></tr>";
$str .= "<tr><td>&nbsp;</td><td>".$container."</td><td><div id=\"status_".$name."\">N/A</div></td><td><a href=\"javascript:void(0)\" onclick=\"upgrade('{$name}')\">TRY UPDATE</a></td></tr>";
}
}

View File

@@ -152,6 +152,6 @@
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.14.6/dist/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.2.1/dist/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
<script src="common.js?t=1"></script>
<script src="common.js?t=3"></script>
</body>
</html>

View File

@@ -380,23 +380,51 @@ switch ($_GET["op"]) {
echo $text;
break;
case "check_upgrade":
$arr = check_response("upgrade");
if (!empty($arr)) {
$arr = check_deploy($_GET["service"]);
if (!empty($arr)) { // deployment in progress
foreach ($arr as $key=>$data) {
if ($key=="upgrade") {
var_dump($arr);
//remove_response("$key");
if ($key=="deploy-".$_GET["service"]) {
if ($data["STATUS"]=="1") {
echo "Install in progress... You can't uninstall while in progress...";
}
elseif ($data["STATUS"]=="2") {
echo "Install has finished... You can upgrade now.";
//echo "<script>get_deployments();</script>";
remove_response("$key");
}
}
}
}
else echo "WAIT";
else { // no upgrade in progress -> upgrade
$key = "upgrade-".$_GET["service"];
$arr = check_response($key);
if (!empty($arr)) {
$data = $arr[$key];
if ($data["STATUS"]=="1") {
echo "Upgrade in progress... Please wait... ".date("Y-m-d H:i:s");
}
elseif ($data["STATUS"]=="2") {
echo "OK";
remove_response("$key");
}
}
else echo "Upgrade in progress... Please wait...";
}
break;
case "upgrade":
$arr = array("NAME" => $_GET["service"], "ACTION" => "upgrade");
$json = json_encode($arr, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
if ($key=check_deploy($_GET["service"])) {
$text="Deploy/uninstall of {$_GET["service"]} has started. Please wait...";
}
else {
//$text="Deploy/uninstall of {$_GET["service"]} in progress... Please wait...";
if (set_output("upgrade",$json)) echo "OK";
else echo "ERROR";
$arr = array("NAME" => $_GET["service"], "ACTION" => "upgrade");
$json = json_encode($arr, JSON_UNESCAPED_SLASHES|JSON_PRETTY_PRINT);
if (set_output("upgrade",$json)) $text = "OK";
else $text = "ERROR";
}
echo $text;
break;
case "repositories":
$arr = array("STATUS" => 0);