O motor "yarn" é incompatível com este módulo. Versão esperada "please-use-pnpm".Obtido "1.22.19"

Após receber uma notificação de que uma atualização estava disponível, entrei na interface web como de costume e cliquei no botão de atualização.

No estilo clássico do Discourse, a instalação agora se autodestruiu e não consigo mais compilar as imagens para executar.

Estou executando imagens separadas de dados e web, todas via docker.

Meu script de reconstrução manual que normalmente corrige isso é:

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

Ao executar isso, ele explode com:

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

Não consigo encontrar nenhuma correspondência para este erro, e qualquer tipo de reset / pull da imagem discourse-base não parece fazer diferença - tudo morre aqui.

Existe alguma maneira de fazer as coisas voltarem a funcionar?

1 curtida

Para constar, parece que a atualização em discourse/base:2.0.20250129-0720 parece ter corrigido isso.

Olá @CRCinAU, sou relativamente novo no discourse. Você pode me dar um pouco mais de informação sobre onde precisamos atualizar a mudança?

Obrigado.

[quote=“CRCinAU, post:1, topic:350557”]
Meu script de reconstrução manual que normalmente corrige isso é:

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

[/quote]Você deve garantir que também está baixando a cópia mais recente do discourse_docker em /var/discourse. O comando ./launcher rebuild usado na instalação padrão cuida disso automaticamente. Mas se você estiver usando um script personalizado, precisará fazer isso sozinho.

[quote=“Zecos22, post:3, topic:350557, username:Abinav_22”]
Você pode me dar um pouco mais de informação sobre onde precisamos atualizar a mudança?
[/quote]Você está vendo o mesmo erro? Se sim, por favor, nos diga quais passos você está seguindo e qual erro você está vendo.

Sim - tive que fazer um git pull em /var/discourse/

A reconstrução para mim não pareceu fazer um git pull, então ainda estava usando os antigos builders, etc.

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