I use nextcloud on debian stable, “manually” installed from the tarballs (initially), then updated with the updater more or less smoothly every time.
For some reason the web based updater ended up failing at step “extracting”. Accessing from the browser led to a cryptic error message about git submodules. So I launched php /var/www/nextcloud/updater/updater.phar to try and recover from there but this is the output:
Nextcloud Updater - version: v27.1.0rc3-34-g94c444b dirty
Current version is 28.0.1.
Update to Nextcloud 28.0.3 available. (channel: "stable")
Following file will be downloaded automatically: https://download.nextcloud.com/server/releases/nextcloud-28.0.3.zip
Open changelog ↗
Steps that will be executed:
[ ] Check for expected files
[ ] Check for write permissions
[ ] Create backup
[ ] Downloading
[ ] Verify integrity
[ ] Extracting
[ ] Enable maintenance mode
[ ] Replace entry points
[ ] Delete old files
[ ] Move new files in place
[ ] Done
Start update? [y/N] y
Info: Pressing Ctrl-C will finish the currently running step and then stops the updater.
[✔] Check for expected files
[✔] Check for write permissions
[✔] Create backup
[✔] Downloading
[✔] Verify integrity
[ ] Extracting ...PHP Warning: require(/var/www/nextcloud/updater/../version.php): Failed to open stream: No such file or directory in phar:///var/www/nextcloud/updater/updater.phar/lib/Updater.php on line 694
PHP Fatal error: Uncaught Error: Failed opening required '/var/www/nextcloud/updater/../version.php' (include_path='.:/usr/share/php') in phar:///var/www/nextcloud/updater/updater.phar/lib/Updater.php:694
Stack trace:
#0 phar:///var/www/nextcloud/updater/updater.phar/lib/Updater.php(732): NC\Updater\Updater->getVersionByVersionFile()
#1 phar:///var/www/nextcloud/updater/updater.phar/lib/UpdateCommand.php(384): NC\Updater\Updater->extractDownload()
#2 phar:///var/www/nextcloud/updater/updater.phar/lib/UpdateCommand.php(237): NC\Updater\UpdateCommand->executeStep()
#3 phar:///var/www/nextcloud/updater/updater.phar/vendor/symfony/console/Command/Command.php(255): NC\Updater\UpdateCommand->execute()
#4 phar:///var/www/nextcloud/updater/updater.phar/vendor/symfony/console/Application.php(1021): Symfony\Component\Console\Command\Command->run()
#5 phar:///var/www/nextcloud/updater/updater.phar/vendor/symfony/console/Application.php(275): Symfony\Component\Console\Application->doRunCommand()
#6 phar:///var/www/nextcloud/updater/updater.phar/vendor/symfony/console/Application.php(149): Symfony\Component\Console\Application->doRun()
#7 phar:///var/www/nextcloud/updater/updater.phar/updater.php(10): Symfony\Component\Console\Application->run()
#8 /var/www/nextcloud/updater/updater.phar(14): require('...')
#9 {main}
thrown in phar:///var/www/nextcloud/updater/updater.phar/lib/Updater.php on line 694
So… is there any hope that I can recover from here or did the failed upgrade just nuked my installation? I have some fairly recent backups from the backup apps, but maybe all is not lost at this point?
Indeed, that’s a fatal error. Any idea why it could missing from your installation folder? It’s used both at install time and during every update attempt so if you’ve used the Updater successfully in the past it was certainly once there.
It should be located at /var/www/nextcloud/core/shipped.json.
What happens if you trigger a manual integrity check of your core installation (occ integrity:check-core)?
I reverted then launched the CLI upgrader so now I’m on 28.0.3, but I too would love to understand what went wrong. NC updates are less smooth than I hoped…