Nextcloud - update from v27 to v28 failed (because of incompatible nextcloud apps)

My YunoHost server

Hardware: dedicated server bought online
YunoHost version: 11.2.9.1
I have access to my server : Through SSH
Are you in a special context or did you perform some particular tweaking on your YunoHost instance ? : no
If your request is related to an app, specify its name and version: Nextcloud 27.1.4~ynh1

Description of my issue

La mise à jour de Nextcloud (de v27.1 vers v28) à échoué et le rollback n’a pas fonctionné non plus.
D’après les logs, j’ai l’impression qu’un plugin de Nextcloud (Markdown Editor) empêche l’upgrade:

2024-01-12 06:32:17,032: DEBUG - + sudo -u nextcloud php8.2 --define apc.enable_cli=1 occ --no-interaction --no-ansi app:update --all
2024-01-12 06:32:17,321: DEBUG - documentserver_community new version available: 0.1.13
2024-01-12 06:32:41,669: DEBUG - Error: App "Community Document Server" cannot be installed because the following dependencies are not fulfilled: Server version 25 or lower is required.
2024-01-12 06:32:41,670: DEBUG - files_markdown new version available: 2.4.1
2024-01-12 06:32:42,358: DEBUG - Error: App "Markdown Editor" cannot be installed because the following dependencies are not fulfilled: Server version 27 or lower is required.
2024-01-12 06:32:42,427: DEBUG - + ynh_exit_properly
2024-01-12 06:32:42,428: DEBUG - + [[ upgrade =~ ^install$|^upgrade$|^restore$ ]]
2024-01-12 06:32:43,933: ERROR - Could not upgrade nextcloud: An error occurred inside the app upgrade script

J’aimerais donc le désactivé en console via SSH, puisque c’est le seul accès qu’il me reste.
Mes questions sont donc:

  • Pensez-vous que mon problème vient de là ?
  • Si oui, comment désactivé un plugin de Nextcloud en mode console ?

Merci pour l’aide que vous pourrez m’apporter.

Clairement l’application n’est pas compatible, ou pas à jour.

Pour la désactiver:

cd /var/www/nextcloud
yunohost app shell nextcloud
php8.2 occ apps:disable nom-de-l'application

(Commande de mémoire)

il semble que le setting install_dir ne soit pas défini.

root@yuno:/var/www/nextcloud# yunohost app shell nextcloud
+ echo '! Helper used in legacy mode !'
+ set +x
+ [[ ! /bin/bash =~ /?bash$ ]]
++ yunohost app list --output-as json --quiet
++ jq -r '.apps[].id'
+ installed_apps_list=('freshrss' 'nextcloud' 'wekan' 'wordpress' 'wordpress__2')
+ local installed_apps_list
+ [[  freshrss nextcloud wekan wordpress wordpress__2  != *\ \n\e\x\t\c\l\o\u\d\ * ]]
+ id -u nextcloud
++ ynh_app_setting_get --app=nextcloud --key=install_dir
++ local _globalapp=nextcloud
++ local legacy_args=ak
++ args_array=(['a']='app=' ['k']='key=')
++ local -A args_array
++ local app
++ local key
++ ynh_handle_getopts_args --app=nextcloud --key=install_dir
++ set +o xtrace
++ app=nextcloud
++ [[ install_dir =~ (unprotected|protected|skipped)_ ]]
++ ynh_app_setting get nextcloud install_dir
++ set +o xtrace
+ local install_dir=
+ '[' -z '' ']'
+ ynh_print_err '--message=nextcloud has no install_dir setting (does it use packaging format >=2?)'
+ local legacy_args=m
+ args_array=(['m']='message=')
+ local -A args_array
+ local message
+ ynh_handle_getopts_args '--message=nextcloud has no install_dir setting (does it use packaging format >=2?)'
+ set +o xtrace
+ ynh_print_log '[Error] nextcloud has no install_dir setting (does it use packaging format >=2?)'
+ echo -e '[Error] nextcloud has no install_dir setting (does it use packaging format >=2?)'
[Error] nextcloud has no install_dir setting (does it use packaging format >=2?)
+ exit 1

je me reply à moi-même :wink:

j’ai réussi à lister les app en passant directement avec “occ”, mais les app qui semblent poser problème sont déjà désactivé !
du coup, je suis un peu perdu là !

root@yuno:/var/www/nextcloud# sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ app:list
Enabled:
  - activity: 2.19.0
  - circles: 27.0.1
  - cloud_federation_api: 1.10.0
  - comments: 1.17.0
  - contactsinteraction: 1.8.0
  - dashboard: 7.7.0
  - dav: 1.27.0
  - federatedfilesharing: 1.17.0
  - federation: 1.17.0
  - files: 1.22.0
  - files_external: 1.19.0
  - files_pdfviewer: 2.8.0
  - files_reminders: 1.0.0
  - files_rightclick: 1.6.0
  - files_sharing: 1.19.0
  - files_texteditor: 2.15.1
  - files_trashbin: 1.17.0
  - files_versions: 1.20.0
  - firstrunwizard: 2.16.0
  - logreader: 2.12.0
  - lookup_server_connector: 1.15.0
  - nextcloud_announcements: 1.16.0
  - notifications: 2.15.0
  - oauth2: 1.15.1
  - onlyoffice: 8.2.4
  - password_policy: 1.17.0
  - photos: 2.3.0
  - privacy: 1.11.0
  - provisioning_api: 1.17.0
  - recommendations: 1.6.0
  - related_resources: 1.2.0
  - serverinfo: 1.17.0
  - settings: 1.9.0
  - sharebymail: 1.17.0
  - support: 1.10.0
  - survey_client: 1.15.0
  - systemtags: 1.17.0
  - text: 3.8.0
  - theming: 2.2.0
  - twofactor_backupcodes: 1.16.0
  - user_ldap: 1.17.0
  - user_status: 1.7.0
  - viewer: 2.1.0
  - weather_status: 1.7.0
  - workflowengine: 2.9.0
Disabled:
  - accessibility: 1.10.0
  - admin_audit: 1.17.0
  - bruteforcesettings: 2.7.0
  - documentserver_community: 0.1.12 (installed 0.1.12)
  - encryption: 2.15.0
  - files_markdown: 2.3.6 (installed 2.3.6)
  - files_videoplayer: 1.13.0
  - suspicious_login: 5.0.0
  - twofactor_totp: 9.0.0
  - updatenotification: 1.17.0 (installed 1.8.0)

j’avance encore un peu.
j’ai tenté d’upgrader manuellement, et je reproduit le problème.

root@yuno:/var/www/nextcloud# sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:update --all
documentserver_community new version available: 0.1.13
Error: App "Community Document Server" cannot be installed because the following dependencies are not fulfilled: Server version 25 or lower is required.
files_markdown new version available: 2.4.1
files_markdown updated

1 Like

j’ai finalement desinstallé l’app qui posait problème

root@yuno:/var/www/nextcloud# sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:remove documentserver_community

et j’ai relancé l’upgrade depuis l’admin yunohost et c’est passé.

1 Like

Edit : je n’avais pas vu que la commande était exécutée avec root. :upside_down_face:
Cela marche beaucoup mieux :ok_hand:
il faut donc utiliser la commande sudo su avant de commencer l’investigation

J’ai le même soucis, mais lorsque je lance la commande que tu as fournit, j’ai une erreur l'utilisateur n'est pas autorisé à exécuter << /usr/bin/php8.2 ....>>

la commande de mise à jour ne fonctionne pas

root@yuno:/home/mokujin# sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:update --all
contacts new version available: 5.5.1
contacts couldn't be updated
deck new version available: 1.11.2
deck couldn't be updated

J’ai donc deux app qui ne fonctionnent pas :

  • contacts 5.4.2 (new version 5.5.1)
  • deck 1.11.1 (new version 1.11.2)

j’ai désactivé les deux app

sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:disable contacts
sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:disable deck

J’ai lancé la mise à jour depuis l’interface admin yunohost, mais cela reste en erreur :melting_face:

j’ai donc enlever les app, comme l’a fait @an_t_oine

sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:remove contacts
contacts disabled
contacts 0 removed
sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:remove deck
deck disabled
deck 0 removed

environ 20 minutes d’attente à chaque lancement :anger:
Et après chaque restoration, à la fin de chaque mise à jour, nextcloud plante avec une erreur 500

J’ai RElancé la mise à jour depuis l’interface admin yunohost et encore une erreur :exploding_head:
Je suis donc allé voir les logs, et il restait une 3eme app désactivée à enlever, qui n’apparaissait pas dans la liste d’erreur lors de l’update des app (première commande du post)

2024-01-12 11:44:30,360: DEBUG - + sudo -u nextcloud php8.2 --define apc.enable_cli=1 occ --no-interaction --no-ansi app:update --all
2024-01-12 11:44:30,606: DEBUG - external new version available: 5.3.1
2024-01-12 11:46:24,276: DEBUG - external couldn't be updated
2024-01-12 11:46:24,425: DEBUG - + ynh_exit_properly

même chose, je la vire, et je relance l’update depuis l’interface yunohost

 sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:remove external
external disabled
external 0 removed

Enfin la mise à jour se fait depuis l’interface de yunohost :tada: mais je voudrais conserver mes apps.
Je vais dans l’interface admin de nextcloud, je tente d’installer contacts … ouf cela fonctionne, je retrouve mes petits.

En bref :

  • désactiver des app n’empèche pas la mise à jour de celle ci durant une maj de nextcloud.
  • enlever une app qui bloque la mise à jour de nextcloud est obligatoire.
  • impossible de faire cela sans SSH et les bonnes commande avec l’utilisateur root

Thank you very much. After the update, I have the same problem. Your thread helped me.

Merci, j’ai eu également un souci de mise à jour de Nextcloud 27 vers 28 aujourd’hui.
Grace à vos informations, en mettant à jour les applications Nextcloud avec la commande lancée comme root en ssh

sudo -u nextcloud /usr/bin/php8.2 --define apc.enable_cli=1 /var/www/nextcloud/occ --no-interaction --no-ansi app:update --all

puis en relançant la mise à jour 27/28 depuis l’interface yunohost tout est revenu dans l’ordre.

1 Like

Le script de mise à jour de Nextcloud a été sans doute actualisé (je crois par @Aleks ) car cela ne bloque plus le passage de la v27 à la v28.
Sur mon serveur, cela s’est passé sans souci, le script a mis à jour les applications non compatibles avant le passage à la v28.
Bravo les dev de Yunohost, c’est génial !

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.