Wie man Plugins neu kompiliert und Discourse NICHT neu kompiliert

Wie ist es möglich, das Plugin neu zu kompilieren, ohne Discourse neu zu kompilieren (also ohne ein Update auf die neueste Version)? Ich habe ein Problem, dass Discourse sehr häufige Updates erhält. Oft machen Updates Plugins unbrauchbar. Ich möchte das Plugin neu kompilieren, ohne Discourse zu aktualisieren. Ist das möglich?

1 „Gefällt mir“

Lieber @Ed_Bobkov,

Sie können das „Wesentliche

4 „Gefällt mir“

Vielen Dank für die sehr detaillierte Antwort! Es ist kein einfacher Ausweg. Es ist seltsam, dass es keinen Befehl gibt, um neu zu kompilieren, ohne das Discourse-Update zu prüfen.

1 „Gefällt mir“

Hallo @Ed_Bobkov

Es könnte durchaus eine andere Methode geben, die mir nicht bekannt ist :slight_smile: Das überlasse ich gerne anderen.

Ich habe vor einiger Zeit mehrere Tage lang daran gearbeitet, und dies war das Beste, was ich nach vielen Versuchen und Irrtümern herausfinden konnte.

Wenn es einen einfacheren Weg gibt, würde ich mich sehr freuen, davon zu hören; aber es ergibt Sinn, wenn man viel mit Docker arbeitet.

Zunächst muss das Image erstellt werden. Discourse startet mit einem Basis-Image und modifiziert es. Wenn Sie in der Produktion (Docker) neue Plugins hinzufügen, müssen Sie den Container in der Regel neu erstellen. Daher meine Antwort oben.

Es gibt hier viele Leute, die auf dem Gebiet der Discourse-Systemadministration klüger sind als ich. Vielleicht hat jemand anderes eine bessere Idee, die dem entspricht, wonach Sie suchen.

Viele Grüße!

4 „Gefällt mir“

Wenn es Ihnen nur darum geht, ein Plugin zu aktualisieren, ohne die Discourse-Version zu ändern, verwenden Sie einfach die Upgrade-Konsole des Docker-Managers, die über das Online-Dashboard erreichbar ist, und klicken Sie auf die entsprechende Upgrade-Schaltfläche für das jeweilige Plugin, z. B.:

https://your-site/admin/upgrade

Hinweis 1: Ich gehe davon aus, dass dies nur mit öffentlichen Assets funktioniert, z. B. Open-Source-Plugins. Für private Assets, auf die über in das Build-Skript eingebettete Deploy-Schlüssel zugegriffen wird, müssen Sie möglicherweise das gesamte Projekt neu erstellen.
Hinweis 2: Viele Plugin-Updates werden bereitgestellt, um Kompatibilität mit der neuesten Discourse-Version herzustellen. In den meisten Fällen ist es sinnvoll, beides auf die neueste Version zu aktualisieren, da einige Updates die Kompatibilität mit älteren Discourse-Versionen unterbrechen können. Dies hängt jedoch von Ihrem konkreten Anwendungsfall ab.

11 „Gefällt mir“