From 1f1b2dbcf6cb9645eede68ac674fd8f76c43b099 Mon Sep 17 00:00:00 2001 From: Terranom674 Date: Thu, 20 Aug 2026 10:50:47 +0200 Subject: [PATCH] Remove legacy connector diagnose tool --- nc-connector-diagnose.php | 110 -------------------------------------- 1 file changed, 110 deletions(-) delete mode 100644 nc-connector-diagnose.php diff --git a/nc-connector-diagnose.php b/nc-connector-diagnose.php deleted file mode 100644 index f3a6751..0000000 --- a/nc-connector-diagnose.php +++ /dev/null @@ -1,110 +0,0 @@ -#!/usr/bin/env php -\n"); - exit(1); -} - -$connectionId = (int)$argv[1]; -$configPath = '/etc/bratonien-tools/nc-connector/connection-'.$connectionId.'.conf'; -$runtime = '/opt/piwigo-sync/sync.sh'; -$legacyTimer = 'piwigo-sync.timer'; -$legacyService = 'piwigo-sync.service'; - -function runCommand(array $command, $allowFailure = false) -{ - $spec = array( - 0 => array('file', '/dev/null', 'r'), - 1 => array('pipe', 'w'), - 2 => array('pipe', 'w'), - ); - $process = proc_open($command, $spec, $pipes); - if (!is_resource($process)) - { - throw new RuntimeException('Prozess konnte nicht gestartet werden: '.implode(' ', $command)); - } - $stdout = stream_get_contents($pipes[1]); - $stderr = stream_get_contents($pipes[2]); - fclose($pipes[1]); - fclose($pipes[2]); - $exit = proc_close($process); - if ($exit !== 0 && !$allowFailure) - { - throw new RuntimeException('Befehl fehlgeschlagen: '.implode(' ', $command)); - } - return array('exit'=>$exit, 'stdout'=>(string)$stdout, 'stderr'=>(string)$stderr); -} - -$timerWasEnabled = false; - -try -{ - if (!is_readable($configPath)) - { - throw new RuntimeException('Connector-Konfiguration fehlt oder ist nicht lesbar: '.$configPath.'. Fuehre zuerst den Cutover-Versuch mindestens einmal aus, damit die Laufzeitkonfiguration erzeugt wird.'); - } - if (!is_executable($runtime)) - { - throw new RuntimeException('Sync-Runtime fehlt: '.$runtime); - } - - $enabled = runCommand(array('systemctl', 'is-enabled', $legacyTimer), true); - $timerWasEnabled = $enabled['exit'] === 0; - - echo "Stoppe Legacy-Timer fuer die Diagnose...\n"; - runCommand(array('systemctl', 'stop', $legacyTimer), true); - - $deadline = time() + 120; - while (true) - { - $active = runCommand(array('systemctl', 'is-active', '--quiet', $legacyService), true); - if ($active['exit'] !== 0) - { - break; - } - if (time() >= $deadline) - { - throw new RuntimeException('Ein laufender Legacy-Sync wurde nach 120 Sekunden nicht beendet.'); - } - sleep(2); - } - - echo "Fuehre Connector-Lauf im Diagnosemodus aus...\n\n"; - $result = runCommand(array('env', 'PIWIGO_CONFIG='.$configPath, 'bash', '-x', $runtime), true); - - echo "===== STDOUT =====\n"; - echo trim($result['stdout'])."\n"; - echo "===== STDERR / TRACE =====\n"; - echo trim($result['stderr'])."\n"; - echo "===== ENDE =====\n"; - echo 'Exit-Code: '.$result['exit']."\n"; -} -catch (Throwable $e) -{ - fwrite(STDERR, 'Diagnose fehlgeschlagen: '.$e->getMessage()."\n"); -} -finally -{ - if ($timerWasEnabled) - { - runCommand(array('systemctl', 'enable', '--now', $legacyTimer), true); - } - else - { - runCommand(array('systemctl', 'start', $legacyTimer), true); - } - echo "Legacy-Timer wurde nach der Diagnose wieder aktiviert/gestartet.\n"; -}