From 1da8eeb6246efe22d0121b58063e7b98a527980b Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 28 Nov 2014 18:03:57 +0100 Subject: Wait for reboot to complete after restoring a configuration backup --- modules/backup.inc.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'modules/backup.inc.php') diff --git a/modules/backup.inc.php b/modules/backup.inc.php index e35aeed2..61964d47 100644 --- a/modules/backup.inc.php +++ b/modules/backup.inc.php @@ -78,7 +78,7 @@ class Page_Backup extends Page Message::addError('upload-failed', Util::uploadErrorString($_FILES['backupfile']['error'])); Util::redirect('?do=Backup'); } - $tempfile = '/tmp/bwlp-' . mt_rand(1, 100000) . '-' . crc32($_SERVER['REMOTE_HOST']) . '.tgz'; + $tempfile = '/tmp/bwlp-' . mt_rand(1, 100000) . '-' . crc32($_SERVER['REMOTE_ADDR']) . '.tgz'; if (!move_uploaded_file($_FILES['backupfile']['tmp_name'], $tempfile)) { Message::addError('error-write', $tempfile); Util::redirect('?do=Backup'); @@ -107,11 +107,22 @@ class Page_Backup extends Page $this->templateData['restoreid'] = $task['id']; $parent = $task['id']; } + // TODO: Trigger::rebuildAdModules(); + // Wait a bit + $task = Taskmanager::submit('SleepTask', array( + 'seconds' => 3, + 'parentTask' => $parent, + 'failOnParentFail' => false + )); + if (isset($task['id'])) + $parent = $task['id']; // Reboot $task = Taskmanager::submit('Reboot', array( 'parentTask' => $parent, 'failOnParentFail' => false )); + // Leave this comment so the i18n scanner finds it: + // Message::addSuccess('restore-done'); if (isset($task['id'])) $this->templateData['rebootid'] = $task['id']; } -- cgit v1.2.3-55-g7522