Probleme beim Aktualisieren einer 10 Jahre alten Website

Hmmm. Ich glaube, ich stoße auf ein ähnliches Problem. Ich betreibe eine inzwischen 10 Jahre alte (!) Discourse-Instanz, die nie migriert wurde und deren Updates inkonsistent waren :slight_smile:

Ich habe heute versucht, Docker Manager über das Dashboard zu aktualisieren, und erhalte jetzt dies in der Browserkonsole, wenn ich versuche, die Admin-Einstellungen zu rendern (insbesondere den Customize-Link, der durch die Meldung “versuchen Sie, einige Frontend-Komponenten zu deaktivieren” generiert wird):

loader.js:247 Uncaught (in promise) Error: Could not find module `discourse/lib/decorators` imported from `discourse/plugins/docker_manager/discourse/routes/update`

Ich erhalte beim erneuten Erstellen über die CLI einen PUPS-Fehler:

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'yarn config set network-timeout 60000 -g' failed with return #<Process::Status: pid 280 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"yarn", "cmd"=>["if [ \"$version\" != \"tests-passed\" ]; then\n  rm -rf app/assets/javascripts/node_modules\nfi", "su discourse -c 'yarn config set network-timeout 60000 -g'", "su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.

Es gibt keine anderen offensichtlichen Fehler beim Bootstrap. Dies ist eine Single-Container-Installation… Irgendwelche Ideen, wie ich hier weiterkomme? Die Seite ist derzeit noch erreichbar, aber in einem ziemlich schlechten Zustand.

Oh warte, der PUPS-Fehler könnte von Folgendem herrühren:

error Das package.json dieses Projekts definiert "packageManager": "yarn@pnpm@9.15.5". Die aktuelle globale Version von Yarn ist jedoch 1.22.22.

Warum um alles in der Welt…

Konnten Sie Ihr Problem am Ende lösen? Das Wiederherstellen eines Backups auf einem neuen Server könnte Ihnen hier auch am besten dienen, anstatt sich mit einer alten Einrichtung herumzuschlagen.

Habe es herausgefunden! Wir hatten vor einem Jahr einen Commit ausgewählt, um etwas zu beheben, das im Hauptzweig kaputt war, und das Docker-Update-Manager-Plugin mochte das überhaupt nicht (es muss eine Prüfung für einen losgelösten Git-Kopf gehabt haben), was den Deploy-Vorgang unterbrochen hat. Ein git reset –hard && ./launcher rebuild app auf dem Server hat es am Ende behoben, aber es war zwischendurch sehr verwirrend :slight_smile:

4 „Gefällt mir“