La dernière mise à jour ne compile pas avec les erreurs suivantes. Échec de la mise à jour de l’interface utilisateur et de l’interface de ligne de commande.
ÉCHEC
--------------------
Pups::ExecError : cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate' a échoué avec le retour #<Process::Status: pid 921 exit 1>
Emplacement de l'échec : /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec a échoué avec les paramètres {"cd"=>"$home", "tag"=>"migrate", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap a échoué avec le code de sortie 1
** ÉCHEC DU BOOTSTRAP ** veuillez faire défiler vers le haut et rechercher les messages d'erreur précédents, il peut y en avoir plus d'un.
./discourse-doctor peut aider à diagnostiquer le problème.
f7f7afc677212ddcaaa8e1979af5ddef79b3accffe118da6c9542682c104bc27
==================== FIN DU JOURNAL DE RECONSTRUCTION ====================
Échec de la reconstruction de l'application.
Cela semble lié à ceci
I, [2024-07-03T21:28:32.470814 #1] INFO -- : > cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate'
2024-07-03 21:28:41.149 UTC [982] discourse@discourse ERREUR : la colonne llm_models.url n'existe pas au caractère 47
2024-07-03 21:28:41.149 UTC [982] discourse@discourse INSTRUCTION : SELECT "llm_models".* FROM "llm_models" WHERE "llm_models"."url" = 'https://vllm.shadowed-by-srv.invalid' LIMIT 1
** ÉCHEC DU PLUGIN **
Vous ne pouvez pas démarrer Discourse en raison de cette erreur lors de l'initialisation du plugin :
PG::UndefinedColumn : ERREUR : la colonne llm_models.url n'existe pas
LINE 1 : SELECT "llm_models".* FROM "llm_models" WHERE "llm_models"."...
^
J’ai ajouté DISCOURSE_MAXMIND_ACCOUNT_ID: 0000 dans app.yml (avec l’ID de compte réel) et il continue de générer une erreur avec Zlib::BufError: buffer error (Zlib::BufError)
Cela a permis de le construire comme solution de contournement, mais je n’arrive pas à le construire avec.
Est-ce que l’ordre dans lequel DISCOURSE_MAXMIND_ACCOUNT_ID est listé dans la configuration a de l’importance ? Je vais le reconstruire à un moment donné en testant s’il est placé au-dessus de la clé de licence.
Uncaught SyntaxError: Unexpected identifier '#t'
Uncaught SyntaxError: Unexpected identifier '#t' at discourse-cakeday-14…0c79d9ecda.br.js:67
Uncaught SyntaxError: Unexpected identifier '#a' at discourse-gamificati…aa953738d0.br.js:26
Uncaught SyntaxError: Unexpected identifier '#a' at discourse-gamificati…cc07ea7ef08.br.js:3
Uncaught SyntaxError: Unexpected identifier '#t' at discourse-lazy-video…b8ed6127f2.br.js:10
Uncaught SyntaxError: Unexpected identifier '#s' at discourse-presence-f…3c0d7b6fc3.br.js:12
Uncaught SyntaxError: Unexpected identifier '#t' at discourse-reactions-…901cb11c9e5.br.js:9
Uncaught SyntaxError: Unexpected identifier '#t' at docker_manager_admin…d28929dca4.br.js:11
Uncaught SyntaxError: Unexpected identifier '#e' at poll-796d99d66969f1b…fe7802fab0d.br.js:4
Uncaught SyntaxError: Unexpected identifier '#r' at admin-67b2706032147c…37109c4686.br.js:79
Uncaught SyntaxError: Unexpected identifier '#t' at 39e5219……a6253fbac792b5.js:9
Uncaught SyntaxError: Unexpected identifier '#c' at 8e35ecd……431326f726d28.js:14
Uncaught SyntaxError: Unexpected identifier '#t' at 80f289f……3ae3799840269e.js:7
Uncaught SyntaxError: Unexpected identifier '#e' at 0ca3731……0183b04205b2c7.js:5
chunk.2e73082f9f5aebde95db.d41d8cd9.br.js:65 ℹ️ Discourse v3.3.0.beta4-dev — https://github.com/discourse/discourse/commits/70fc39211b — Ember v5.5.0
Failed to load resource: the server responded with a status of 429 ()
mini-profiler-resources/results:1
Failed to load resource: the server responded with a status of 429 ()
mini-profiler-resources/results:1
Failed to load resource: the server responded with a status of 429 ()
mini-profiler-resources/results:1
Failed to load resource: the server responded with a status of 429 ()
mini-profiler-resources/results:1
Failed to load resource: the server responded with a status of 429 ()
mini-profiler-resources/results:1
Failed to load resource: the server responded with a status of 429 ()
mini-profiler-resources/results:1
Failed to load resource: the server responded with a status of 429 ()
vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9 Uncaught (in promise) Error: There is no route named admin
at P.handlersFor (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:384138)
at o.isActiveForRoute (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:183474)
at ue.isActiveForState (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:22532)
at get isActive (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:21552)
at get class (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:20303)
at Te (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:76425)
at vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:266639
at vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:266302
at e.track (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:345848)
at d (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:266281)
at vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:302259
at vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:266302
at e.track (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:345848)
at d (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:266281)
at Je (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:302493)
at Qe.flush (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:301801)
at Object.evaluate (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:295357)
at Object.evaluate (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:282821)
at It.evaluateSyscall (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:318887)
at It.evaluateInner (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:318579)
at It.evaluateOuter (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:318500)
at Wt.next (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:328385)
at Wt._execute (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:328263)
at Wt.execute (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:328209)
at Qt.sync (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:328863)
at hr.render (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:51968)
at vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:55529
at Nt (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:317369)
at gr._renderRoots (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:55447)
at gr._renderRootsTransaction (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:55807)
at gr._renderRoot (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:55324)
at gr._appendDefinition (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:54370)
at gr.appendOutletView (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:54024)
at invoke (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:358138)
at h.flush (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:357215)
at p.flush (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:358978)
at B._end (vendor.696635918446fec08b0d1b3ff71b7e07-5130d00d5db8931b806390ef7c3a55b4e60b44924d23e28410b820d9541895fd.br.js:9:364061)
Semble provenir d’ici : class l extends t.default{static#e=(()=\u003edt7948.g(this.prototype,"collapsed",[n.tracked],(function(){return!1})))()#r=(()=\u003e{dt7948.i(this,"collapsed")})()}
Ma principale question était de savoir pourquoi cela ne se produit que lors de la mise à jour d’un plugin déjà installé et non lors de l’installation d’un nouveau plugin. La réponse est que le cœur attrape les exceptions PG::UndefinedTable mais pas PG:UndefinedColumn. Si le plugin est déjà installé, l’exception est la dernière, si le plugin est tout neuf, c’est la première.