La migration a échoué lors de la mise à jour du plugin calendar au dernier commit

Salut,

J’utilise Discourse 2.8.8 sur Cloudron avec Discourse Calendar (commit FIX: Mobile style fix (#175) · discourse/discourse-calendar@1b9ef81 · GitHub). Lorsque je veux mettre à jour le plugin vers le dernier commit (FIX: Add translation entry for Indonesia (#319) · discourse/discourse-calendar@d3bcef6 · GitHub). Mais lorsque l’application démarre, j’obtiens cette erreur :

==> Migrating database
...
ArgumentError: Unknown migration version "7.0"; expected one of "4.2", "5.0", "5.1", "5.2", "6.0", "6.1"
...
/app/code/plugins/discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb:3:in `<main>'

Le code du fichier : discourse-calendar/db/migrate/20220604200919_create_disabled_holidays.rb at main · discourse/discourse-calendar · GitHub

Sur le forum, j’ai également trouvé ce message :

Mais je ne sais pas pourquoi, cela ne fonctionne pas (et je ne comprends pas quelle est la solution…)

Une idée pour résoudre ce problème ?

Selon le fichier .discourse-compatibility ici, vous ne devriez pas mettre à jour / ne pas pouvoir mettre à jour vers ce commit lorsque vous êtes sur la version stable 2.8.

Avez-vous un plugin:pull_compatible_all quelque part ? (Vous devriez l’avoir)

2 « J'aime »

Merci @RGJ. Je ne connaissais pas ce type de fichier. À l’avenir, je le vérifierai.

Avez-vous un plugin:pull_compatible_all quelque part ? (Vous devriez l’avoir)

Je ne sais pas ce que c’est. J’utilise une instance Cloudron pour déployer Discourse. Pour mettre à jour un plugin, je dois le supprimer et l’installer comme l’explique la documentation :

Mais je viens de voir que j’ai un fichier site_settings.yml pour ajouter des personnalisations supplémentaires. Devrais-je y configurer quelque chose avec plugin:pull_compatible_all ?

Vous voudrez peut-être signaler ce sujet aux gens de Cloudron car ils ne semblent pas avoir progressé au-delà de vous dire que c’est une faute de frappe de votre part, ou “êtes-vous même dans le bon répertoire ?”:rire:

Ils doivent mettre à jour leur documentation.

1 « J'aime »

Je n’ai jamais demandé à la communauté Cloudron et j’ouvrirai une discussion sur le forum Cloudron.

Pourquoi doivent-ils mettre à jour la documentation ?

Le problème ici est que vous utilisez une installation non prise en charge. Nous ne pouvons vraiment prendre en charge que l’installation standard. Les packages tiers se cassent tout le temps en raison des changements survenant dans Discourse lui-même - c’est pourquoi ils ne sont pas recommandés.

La version du plugin de calendrier que vous essayez d’installer n’est pas compatible avec la version de Discourse dans le package Cloudron. Cloudron a reconditionné Discourse et, par conséquent, n’utilise pas les moyens pris en charge pour installer des plugins. À moins que vous ne souhaitiez passer à une installation prise en charge, ils devront vous guider pour résoudre ce problème et mettre à jour leur documentation.

1 « J'aime »

Mes excuses. Quelqu’un d’autre a posé exactement la même question / a eu exactement le même problème il y a deux jours :

https://forum.cloudron.io/topic/7687/installing-a-discourse-plugin-on-cloudron

2 « J'aime »

Ok. Je vais rejoindre la discussion sur le forum Cloudron.
Merci pour vos réponses car je comprends mieux Discourse pour aider la communauté Cloudron et analyser les problèmes futurs.

1 « J'aime »