From 0f1efcfd15cf8265f07283aa95ed15a7fedad9ba Mon Sep 17 00:00:00 2001 From: Boy132 Date: Thu, 13 Nov 2025 19:05:04 +0100 Subject: [PATCH] Remove old update command (#1898) --- app/Console/Commands/UpgradeCommand.php | 196 ------------------------ lang/en/commands.php | 14 -- 2 files changed, 210 deletions(-) delete mode 100644 app/Console/Commands/UpgradeCommand.php diff --git a/app/Console/Commands/UpgradeCommand.php b/app/Console/Commands/UpgradeCommand.php deleted file mode 100644 index 83627ea58..000000000 --- a/app/Console/Commands/UpgradeCommand.php +++ /dev/null @@ -1,196 +0,0 @@ -option('skip-download'); - if (!$skipDownload) { - $this->output->warning(trans('commands.upgrade.integrity')); - $this->output->comment(trans('commands.upgrade.source_url')); - $this->line($this->getUrl()); - } - - $user = 'www-data'; - $group = 'www-data'; - if ($this->input->isInteractive()) { - if (!$skipDownload) { - $skipDownload = !$this->confirm(trans('commands.upgrade.skipDownload'), true); - } - - if (is_null($this->option('user'))) { - $userDetails = function_exists('posix_getpwuid') ? posix_getpwuid(fileowner('public')) : []; - $user = $userDetails['name'] ?? 'www-data'; - - $message = trans('commands.upgrade.webserver_user', ['user' => $user]); - if (!$this->confirm($message, true)) { - $user = $this->anticipate( - trans('commands.upgrade.name_webserver'), - [ - 'www-data', - 'nginx', - 'apache', - ] - ); - } - } - - if (is_null($this->option('group'))) { - $groupDetails = function_exists('posix_getgrgid') ? posix_getgrgid(filegroup('public')) : []; - $group = $groupDetails['name'] ?? 'www-data'; - - $message = trans('commands.upgrade.group_webserver', ['group' => $user]); - if (!$this->confirm($message, true)) { - $group = $this->anticipate( - trans('commands.upgrade.group_webserver_question'), - [ - 'www-data', - 'nginx', - 'apache', - ] - ); - } - } - - if (!$this->confirm(trans('commands.upgrade.are_your_sure'))) { - $this->warn(trans('commands.upgrade.terminated')); - - return; - } - } - - ini_set('output_buffering', '0'); - $bar = $this->output->createProgressBar($skipDownload ? 9 : 10); - $bar->start(); - - if (!$skipDownload) { - $this->withProgress($bar, function () { - $this->line("\$upgrader> curl -L \"{$this->getUrl()}\" | tar -xzv"); - $process = Process::fromShellCommandline("curl -L \"{$this->getUrl()}\" | tar -xzv"); - $process->run(function ($type, $buffer) { - $this->{$type === Process::ERR ? 'error' : 'line'}($buffer); - }); - }); - } - - $this->withProgress($bar, function () { - $this->line('$upgrader> php artisan down'); - $this->call('down'); - }); - - $this->withProgress($bar, function () { - $this->line('$upgrader> chmod -R 755 storage bootstrap/cache'); - $process = new Process(['chmod', '-R', '755', 'storage', 'bootstrap/cache']); - $process->run(function ($type, $buffer) { - $this->{$type === Process::ERR ? 'error' : 'line'}($buffer); - }); - }); - - $this->withProgress($bar, function () { - $command = ['composer', 'install', '--no-ansi']; - if (config('app.env') === 'production' && !config('app.debug')) { - $command[] = '--optimize-autoloader'; - $command[] = '--no-dev'; - } - - $this->line('$upgrader> ' . implode(' ', $command)); - $process = new Process($command); - $process->setTimeout(10 * 60); - $process->run(function ($type, $buffer) { - $this->line($buffer); - }); - }); - - /** @var Application $app */ - $app = require __DIR__ . '/../../../bootstrap/app.php'; - /** @var Kernel $kernel */ - $kernel = $app->make(Kernel::class); - $kernel->bootstrap(); - $this->setLaravel($app); - - $this->withProgress($bar, function () { - $this->line('$upgrader> php artisan view:clear'); - $this->call('view:clear'); - }); - - $this->withProgress($bar, function () { - $this->line('$upgrader> php artisan config:clear'); - $this->call('config:clear'); - }); - - $this->withProgress($bar, function () { - $this->line('$upgrader> php artisan migrate --force --seed'); - $this->call('migrate', ['--force' => true, '--seed' => true]); - }); - - $this->withProgress($bar, function () use ($user, $group) { - $this->line("\$upgrader> chown -R {$user}:{$group} *"); - $process = Process::fromShellCommandline("chown -R {$user}:{$group} *", $this->getLaravel()->basePath()); - $process->setTimeout(10 * 60); - $process->run(function ($type, $buffer) { - $this->{$type === Process::ERR ? 'error' : 'line'}($buffer); - }); - }); - - $this->withProgress($bar, function () { - $this->line('$upgrader> php artisan queue:restart'); - $this->call('queue:restart'); - }); - - $this->withProgress($bar, function () { - $this->line('$upgrader> php artisan up'); - $this->call('up'); - }); - - $this->newLine(2); - $this->info(trans('commands.upgrade.success')); - } - - protected function withProgress(ProgressBar $bar, Closure $callback): void - { - $bar->clear(); - $callback(); - $bar->advance(); - $bar->display(); - } - - protected function getUrl(): string - { - if ($this->option('url')) { - return $this->option('url'); - } - - return sprintf(self::DEFAULT_URL, $this->option('release') ? 'download/v' . $this->option('release') : 'latest/download'); - } -} diff --git a/lang/en/commands.php b/lang/en/commands.php index 7390103f2..a24222b3a 100644 --- a/lang/en/commands.php +++ b/lang/en/commands.php @@ -57,18 +57,4 @@ return [ 'error_message' => 'An error was encountered while processing Schedule: :schedules', ], ], - 'upgrade' => [ - 'integrity' => 'This command does not verify the integrity of downloaded assets. Please ensure that you trust the download source before continuing. If you do not wish to download an archive, please indicate that using the --skip-download flag, or answering "no" to the question below.', - 'source_url' => 'Download Source (set with --url=):', - 'php_version' => 'Cannot execute self-upgrade process. The minimum required PHP version required is 7.4.0, you have :current', - 'skipDownload' => 'Would you like to download and unpack the archive files for the latest version?', - 'webserver_user' => 'Your webserver user has been detected as [{:user}]: is this correct?', - 'name_webserver' => 'Please enter the name of the user running your webserver process. This varies from system to system, but is generally "www-data", "nginx", or "apache".', - 'group_webserver' => 'Your webserver group has been detected as [{:group}]: is this correct?', - 'group_webserver_question' => 'Please enter the name of the group running your webserver process. Normally this is the same as your user.', - 'are_your_sure' => 'Are you sure you want to run the upgrade process for your Panel?', - 'terminated' => 'Upgrade process terminated by user.', - 'success' => 'Panel has been successfully upgraded. Please ensure you also update any Daemon instances', - - ], ];