From 817dd802aaf0f369e84d523827fa8775885e1cac Mon Sep 17 00:00:00 2001 From: OpenXE <> Date: Wed, 14 Dec 2022 15:18:06 +0000 Subject: [PATCH] upgrade added info and -o option --- upgrade/upgrade.php | 27 +++++++++++++++++++-------- www/pages/content/upgrade.tpl | 17 +++++++++++++++-- www/pages/upgrade.php | 10 +++++----- 3 files changed, 39 insertions(+), 15 deletions(-) diff --git a/upgrade/upgrade.php b/upgrade/upgrade.php index 19cb2122..538e4045 100644 --- a/upgrade/upgrade.php +++ b/upgrade/upgrade.php @@ -91,6 +91,12 @@ if (php_sapi_name() == "cli") { $force = false; } + if (in_array('-o', $argv)) { + $origin = true; + } else { + $origin = false; + } + if (in_array('-connection', $argv)) { $connection = true; } else { @@ -121,7 +127,7 @@ if (php_sapi_name() == "cli") { } if ($check_git || $check_db || $do_git || $do_db) { - upgrade_main($directory,$verbose,$check_git,$do_git,$export_db,$check_db,$do_db,$force,$connection); + upgrade_main($directory,$verbose,$check_git,$do_git,$export_db,$check_db,$do_db,$force,$connection,$origin); } else { info(); } @@ -133,7 +139,7 @@ if (php_sapi_name() == "cli") { } // -------------------------------- END -function upgrade_main(string $directory,bool $verbose, bool $check_git, bool $do_git, bool $export_db, bool $check_db, bool $do_db, bool $force, bool $connection) { +function upgrade_main(string $directory,bool $verbose, bool $check_git, bool $do_git, bool $export_db, bool $check_db, bool $do_db, bool $force, bool $connection, bool $origin) { $mainfolder = dirname($directory); $datafolder = $directory."/data"; @@ -146,12 +152,16 @@ function upgrade_main(string $directory,bool $verbose, bool $check_git, bool $do //require_once($directory.'/../cronjobs/githash.php'); - $remote_info_contents = file_get_contents($remote_file_name); - if (!$remote_info_contents) { - abort("Unable to load $remote_file_name"); - return(-1); - } - $remote_info = json_decode($remote_info_contents, true); + if ($origin) { + $remote_info = array('host' => 'origin','branch' => 'master'); + } else { + $remote_info_contents = file_get_contents($remote_file_name); + if (!$remote_info_contents) { + abort("Unable to load $remote_file_name"); + return(-1); + } + $remote_info = json_decode($remote_info_contents, true); + } if ($check_git || $do_git) { @@ -463,6 +473,7 @@ function info() { echo_out("\t-do: execute all upgrades\n"); echo_out("\t-v: verbose output\n"); echo_out("\t-f: force override of existing files\n"); + echo_out("\t-o: update from origin instead of remote.json\n"); echo_out("\t-connection use connection.json in data folder instead of user.inc.php\n"); echo_out("\t-clean: (not yet implemented) create the needed SQL to remove items from the database not in the JSON\n"); echo_out("\n"); diff --git a/www/pages/content/upgrade.tpl b/www/pages/content/upgrade.tpl index 0bdca245..cd6439e8 100644 --- a/www/pages/content/upgrade.tpl +++ b/www/pages/content/upgrade.tpl @@ -10,6 +10,19 @@ -->
[MESSAGE] +
+
+
+
+
+ {|Info|} +Das Upgrade funktioniert in 2 Schritten: Dateien aktualisieren, Datenbank auffrischen. Wenn das Upgrade lange läuft, kann der Fortschritt in einem neuen Fenster mit "Anzeige auffrischen" angezeigt werden.

+Zum Start in der Konsole, im Unterordner "upgrade" diesen Befehl starten:
sudo -u www-data php upgrade.php -do
+
+
+
+
+
[FORMHANDLEREVENT]
@@ -54,11 +67,11 @@ {|Upgrade-Details anzeigen|}: - + {|Erzwingen (-f)|}: {|Datenbank-Details anzeigen|}: - +
diff --git a/www/pages/upgrade.php b/www/pages/upgrade.php index dd76180b..eb99e9e7 100644 --- a/www/pages/upgrade.php +++ b/www/pages/upgrade.php @@ -41,7 +41,7 @@ class upgrade { $this->app->Tpl->Set('UPGRADE_VISIBLE', "hidden"); $this->app->Tpl->Set('UPGRADE_DB_VISIBLE', "hidden"); - //function upgrade_main(string $directory,bool $verbose, bool $check_git, bool $do_git, bool $export_db, bool $check_db, bool $do_db, bool $force, bool $connection) + //function upgrade_main(string $directory,bool $verbose, bool $check_git, bool $do_git, bool $export_db, bool $check_db, bool $do_db, bool $force, bool $connection, bool $origin) { $directory = dirname(getcwd())."/upgrade"; @@ -49,21 +49,21 @@ class upgrade { case 'check_upgrade': $this->app->Tpl->Set('UPGRADE_VISIBLE', ""); unlink($logfile); - upgrade_main($directory,$verbose,true,false,false,true,false,$force,false); + upgrade_main($directory,$verbose,true,false,false,true,false,$force,false,false); break; case 'do_upgrade': unlink($logfile); - upgrade_main($directory,$verbose,true,true,false,true,true,$force,false); + upgrade_main($directory,$verbose,true,true,false,true,true,$force,false,false); break; case 'check_db': $this->app->Tpl->Set('UPGRADE_DB_VISIBLE', ""); unlink($logfile); - upgrade_main($directory,$db_verbose,false,false,false,true,false,$force,false); + upgrade_main($directory,$db_verbose,false,false,false,true,false,$force,false,false); break; case 'do_db_upgrade': $this->app->Tpl->Set('UPGRADE_DB_VISIBLE', ""); unlink($logfile); - upgrade_main($directory,$db_verbose,false,false,false,true,true,$force,false); + upgrade_main($directory,$db_verbose,false,false,false,true,true,$force,false,false); break; case 'refresh': break;