Error during upgrade to 14.0.1

Nextcloud version 14.0.1
Operating system and version Ubuntu 18.04.1
Apache or nginx version Apache 2.4.29)
PHP version 7.2.10

The issue you are facing:
While attempting to update to 14.0.1 I get a message that states “an error has occurred, click here to reload the page.” Site is still in Maintenance Mode so I get a maintenance mode message. If I go into the config file and turn off maintenance mode I start back at the update page. I’m stuck in a loop at this point.

The output of the details on the update error page:

Preparing update
Set log level to debug
Turned on maintenance mode
Updating database schema
Updated database
Checking for update of app "cloud_federation_api" in appstore
An error occurred.

Is this the first time you’ve seen this error?
Yes

The output of your Nextcloud log in Admin > Logging:
I can’t access the web UI. I’ll be happy to post logs if anyone tells me were to grab them from.

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):
I have made no special changes to this, it’s generic.

<?php
$CONFIG = array (
  'instanceid' => 'NO',
  'passwordsalt' => 'NO',
  'secret' => 'DOUBLE NO',
  'trusted_domains' => 
  array (
    0 => 'DOMAIN NAME',
  ),
  'datadirectory' => 'SERVER PATH',
  'overwrite.cli.url' => 'DOMAIN NAME',
  'dbtype' => 'mysql',
  'version' => '13.0.6.1',
  'dbname' => 'NOPE',
  'dbhost' => 'SOME MORE NOPE',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => 'NO',
  'dbpassword' => 'NO,
  'installed' => true,
  'maintenance' => true,
  'theme' => '',
  'loglevel' => 0,
Preparing update
Set log level to debug
Turned on maintenance mode
Updating database schema
Updated database
Checking for update of app "cloud_federation_api" in appstore
An error occurred.  'updater.release.channel' => 'stable',
  'updater.secret' => 'NAH',
);

I attempted the upgrade via CLI, here is the output to that:

Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Set log level to debug
Updating database schema
Updated database
Checking for update of app cloud_federation_api in appstore
An unhandled exception has been thrown:
Error: Call to undefined method GuzzleHttp\Client::request() in /srv/XXXXXX/html/lib/private/Http/Client/Client.php:161
Stack trace:
#0 /srv/XXXXXX/html/lib/private/App/AppStore/Fetcher/Fetcher.php(106): OC\Http\Client\Client->get('https://apps.ne...', Array)
#1 /srv/XXXXXX/html/lib/private/App/AppStore/Fetcher/AppFetcher.php(80): OC\App\AppStore\Fetcher\Fetcher->fetch('', '')
#2 /srv/XXXXXX/html/lib/private/App/AppStore/Fetcher/Fetcher.php(170): OC\App\AppStore\Fetcher\AppFetcher->fetch('', '')
#3 /srv/XXXXXX/html/lib/private/Installer.php(385): OC\App\AppStore\Fetcher\Fetcher->get()
#4 /srv/XXXXXX/html/lib/private/Updater.php(445): OC\Installer->isUpdateAvailable('cloud_federatio...')
#5 /srv/XXXXXX/html/lib/private/Updater.php(256): OC\Updater->upgradeAppStoreApps(Array)
#6 /srv/XXXXXX/html/lib/private/Updater.php(126): OC\Updater->doUpgrade('14.0.1.1', '13.0.6.1')
#7 /srv/XXXXXX/html/core/Command/Upgrade.php(262): OC\Updater->upgrade()
#8 /srv/XXXXXX/html/3rdparty/symfony/console/Command/Command.php(251): OC\Core\Command\Upgrade->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#9 /srv/XXXXXX/html/3rdparty/symfony/console/Application.php(946): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#10 /srv/XXXXXX/html/3rdparty/symfony/console/Application.php(248): Symfony\Component\Console\Application->doRunCommand(Object(OC\Core\Command\Upgrade), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#11 /srv/XXXXXX/html/3rdparty/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 /srv/XXXXXX/html/lib/private/Console/Application.php(213): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /srv/XXXXXX/html/console.php(96): OC\Console\Application->run()
#14 /srv/XXXXXX/html/occ(11): require_once('/srv/XXXXXX/html/c...')

You can try to disable the app and do the upgrade again. If it does not help, try to disable app for app and try again. Painful, but this helped me to do the upgrade. I recommend to do an occ app:list before disabling every app.

Are you suggesting that I disable every app?

I’ve already tried disabling the offending app, but apparently cloud_federation_api can’t be disabled.

Yes, unfortunately.

I disabled the apps one by one and attempted the update after each app disabled. I got a new message after disabling files_external, it complained about missing files for files_external_gdrive. So I disabled files_external_gdrive as well. and then the upgrade completed.

Now that I am able to login to the web UI. I see that Files_External is not compatible with Server version 14. For some reason the app was not disabled when the upgrade process started. which is why I had the problem.

I would try to disable and re-enable it and afterwards look if an update for the app is available.