Errore durante l'aggiornamento

Oggi ricevo questo errore durante l’aggiornamento:

FAILED -------------------- Pups::ExecError: cd /var/www/discourse & su discourse -c ‘bundle exec rake db:migrate’ fallito con ritorno #<Process::Status: pid 1494 exit 1> Posizione del fallimento: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn’ exec fallito con i parametri {“cd”=>“$home”, “hook”=>“db_migrate”, “cmd”=>[“su discourse -c ‘bundle exec rake db:migrate’”]} bootstrap fallito con codice di uscita 1 ** IMPOSSIBILE ESEGUIRE IL BOOTSTRAP ** si prega di scorrere verso l’alto e cercare messaggi di errore precedenti, potrebbero essercene più di uno. ./discourse-doctor può aiutare a diagnosticare il problema. 77d614688bcd29bc5bb4ee1b28ed08423dea795d5f25b985e245390dd5707ad9

Potresti scorrere verso l’alto e vedere quali messaggi di errore hai ricevuto e condividerli qui?

Ho cercato nel log l’errore e ho trovato questo:

ERRORE: la violazione del vincolo di unicità della chiave duplicata “index_badges_on_name” 2022-11-24 14:43:25.194 UTC [1522] discourse@discourse DETTAGLIO: La chiave (name)=(First Reaction) esiste già. 2022-11-24 14:43:25.194 UTC [1522] discourse@discourse ISTRUZIONE: UPDATE badges IMPOSTA name = ‘First Reaction’, description = NULL, long_description = NULL DOVE name = ‘Primera reacción’ rake aborted! StandardError: Si è verificato un errore, questa e tutte le migrazioni successive sono state annullate: ERRORE: la violazione del vincolo di unicità della chiave duplicata “index_badges_on_name” DETTAGLIO: La chiave (name)=(First Reaction) esiste già.

Oh, questo deve essere correlato a FIX: Use generic, static name for badge · discourse/discourse-reactions@c648af5 · GitHub.

Non ho tenuto conto del fatto che esista già un badge “First Reaction”. In precedenza, il plugin creava un nuovo badge ogni volta che la traduzione cambiava, quindi la possibilità di avere più badge. Correggerò la migrazione…

Grazie! Dovremmo aspettare una correzione e poi ricompilare l’app?

Sì, sto attualmente testando una soluzione. Non dovrebbe volerci molto…

È stato corretto. Prova a ricompilare.

Ciao, da oggi ho anche alcuni problemi quando provo a clonare e compilare.
Tenta di scaricare un’immagine di base da agosto, il comando docker pull mi restituisce un errore:
“ERRO[0001] Metadata for targets expired”
Altrimenti ottengo:
“Pups::ExecError: cd /var/www/discourse && su discourse -c ‘bundle exec rake themes:update assets:precompile’ failed with return #<Process::Status: pid 1298 exit 1>”

“exec failed with the params {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c ‘bundle exec rake themes:update assets:precompile’"]}”

“Sprockets::FileNotFound: couldn’t find file ‘/var/www/discourse/plugins/docker_manager/assets/javascripts/upgrade-header.js.handlebars’ with type ‘application/javascript’”

Potresti aiutarmi? Non ho ancora trovato altro.

Ho avuto lo stesso problema. Ho rimosso la riga
- git clone https://github.com/discourse/docker_manager.git
dal mio app.yml per poterlo ricostruire per ora.

Quel problema sembra risolto, ma ora ottengo:

FAILED --------------------
Pups::ExecError: cd /var/www/discourse & su discourse -c ‘bundle exec rake themes:update assets:precompile’ fallito con ritorno #<Process::Status: pid 1513 exit 1>
Posizione del fallimento: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn’
exec fallito con i parametri {“cd”=>“$home”, “hook”=>“assets_precompile”, “cmd”=>[“su discourse -c ‘bundle exec rake themes:update assets:precompile’”]}
bootstrap fallito con codice di uscita 1
** FAILED TO BOOTSTRAP ** si prega di scorrere verso l’alto e cercare messaggi di errore precedenti, potrebbero essercene più di uno.
./discourse-doctor potrebbe aiutare a diagnosticare il problema.

Grazie @Peter_G60 @spirobel @undasein - questo errore è stato causato da qualcosa di totalmente separato dal problema delle reazioni menzionato sopra da @gerhard. Ho appena unito una correzione a docker_manager - puoi provare ad aggiornare di nuovo? Mi scuso per l’interruzione!

Grazie per il tuo lavoro. Non funziona per me, potrebbe essere correlato a themes:update?

Fantastico! :grinning: :+1: Grazie per la rapida correzione! Ho riaggiunto il docker_manager e ora funziona di nuovo. Ottimo che abbiamo trovato l’errore!

Grazie @david, stavolta è andato tutto bene. Ho bisogno di tempo per controllare tutto, ma è un buon segno che sia tornato online. Apprezzo molto la rapida soluzione!

./launcher rebuild app?

Puoi condividere l’errore originale dal log? Dovrai scorrere verso l’alto dalla riga di riepilogo “Failed------” che hai condiviso in precedenza.

Inoltre, puoi condividere un elenco dei plugin che hai installato?

Ok, il problema era il plugin discourse-signatures. Scusa per il ritardo, stavo rimuovendo i plugin uno per uno :upside_down_face:

Aha - grazie mille per averlo rintracciato @undasein! Ecco una PR per risolvere: FIX: Remove register_asset call for `.hbs` file by davidtaylorhq · Pull Request #34 · discourse/discourse-signatures · GitHub

Farò un’altra ricerca in tutti i nostri plugin ufficiali per vedere se altri hanno lo stesso problema :occhi:

Anche a me è successo questo

La correzione delle firme è ora unita.

Ho trovato un paio di altri plugin non ufficiali che hanno lo stesso problema: PR aperti su discourse-nationalflags (cc @ebs) e browser_history (cc @sam).

Ho anche aggiunto un messaggio di errore più utile nel core in modo che sia più facile identificare il problema se ci sono altri plugin con il problema.