Der Engine "yarn" ist inkompatibel mit diesem Modul. Erwartete Version "please-use-pnpm". Erhalten "1.22.19"

Nachdem ich eine Benachrichtigung erhalten hatte, dass ein Update verfügbar war, bin ich wie gewohnt in die Weboberfläche gesprungen und habe auf den Update-Button geklickt.

Im klassischen Discourse-Stil hat sich die Installation nun selbst zerstört und ich kann die Images nicht mehr neu erstellen, um sie auszuführen.

Ich verwende separate Daten- und Web-Images, alles über Docker.

Mein manuelles Skript zum Neuerstellen, das normalerweise dieses Problem behebt, lautet:

./launcher bootstrap discourse-web & && ./launcher destroy discourse-web & && ./launcher start discourse-web

Wenn ich dies ausführe, schlägt es fehl mit:

I, [2025-02-05T01:12:54.160568 #1]  INFO -- : > cd /var/www/discourse & && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2025-02-05T01:12:55.503875 #1]  INFO -- : Successfully installed bundler-2.5.18
1 gem installed

I, [2025-02-05T01:12:55.503987 #1]  INFO -- : > cd /var/www/discourse & && find /var/www/discourse ! -user discourse -exec chown discourse {} \;
I, [2025-02-05T01:12:56.681293 #1]  INFO -- :

I, [2025-02-05T01:12:56.681583 #1]  INFO -- : > cd /var/www/discourse & && if [ "beta" != "tests-passed" ]; then
  rm -rf app/assets/javascripts/node_modules
fi
I, [2025-02-05T01:12:56.685171 #1]  INFO -- :

I, [2025-02-05T01:12:56.685238 #1]  INFO -- : > cd /var/www/discourse & && su discourse -c 'yarn install --frozen-lockfile & && yarn cache clean'
error discourse@: The engine "yarn" is incompatible with this module. Expected version "please-use-pnpm". Got "1.22.19"
warning discourse@: The engine "pnpm" appears to be invalid.
error Found incompatible module.
I, [2025-02-05T01:12:57.086009 #1]  INFO -- : yarn install v1.22.19
info No lockfile found.
[1/5] Validating package.json...
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.



FAILED
--------------------
Pups::ExecError: cd /var/www/discourse & && su discourse -c 'yarn install --frozen-lockfile & && yarn cache clean' failed with return #<Process::Status: pid 202 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.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 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.
./discourse-doctor may help diagnose the problem.
d480e23784a1dd765d52d483ee94174d7d5cfad5ba8ccec61e76a48ac8ddf32a

Ich scheine keine Übereinstimmungen für diesen Fehler zu finden, und jede Art von Zurücksetzung / Pull des Discourse-Base-Images scheint keinen Unterschied zu machen - alles stirbt hier.

Gibt es eine Möglichkeit, die Dinge wieder zum Laufen zu bringen?

1 „Gefällt mir“

Zur Information: Es scheint, dass das Update in discourse/base:2.0.20250129-0720 dies behoben hat.

Hallo @CRCinAU, ich bin relativ neu bei Discourse. Können Sie mir bitte mehr Informationen geben, wo wir die Änderung aktualisieren müssen?

Vielen Dank.

[quote=“CRCinAU, post:1, topic:350557”]
Mein manuelles Wiederherstellungsskript, das dies normalerweise behebt, lautet:

./launcher bootstrap discourse-web && ./launcher destroy discourse-web && ./launcher start discourse-web

[/quote]Sie sollten sicherstellen, dass Sie auch die neueste Kopie von discourse_docker in /var/discourse herunterladen. Der Befehl ./launcher rebuild, der bei der Standardinstallation verwendet wird, kümmert sich automatisch darum. Aber wenn Sie ein benutzerdefiniertes Skript verwenden, müssen Sie dies selbst tun.

[quote=“Zecos22, post:3, topic:350557, username:Abinav_22”]
Können Sie mir etwas mehr Informationen darüber geben, wo wir die Änderung aktualisieren müssen?
[/quote]Sehen Sie denselben Fehler? Wenn ja, teilen Sie uns bitte mit, welche Schritte Sie befolgen und welchen Fehler Sie sehen.

Ja – ich musste einen git pull in /var/discourse/ ausführen.

Der Rebuild hat bei mir anscheinend keinen Git-Pull durchgeführt, sodass immer noch die alten Builder usw. verwendet wurden.

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