Reconstruction de l'application avortée en raison d'un plugin wizard personnalisé

une reconstruction avec la dernière version échoue avec une erreur FileNotFound :

...
I, [2021-12-01T07:30:27.434946 #670]  INFO -- : Writing /var/www/discourse/public/assets/locales/es-ae86f17b3afa4050566e8f73dc225848cb65e80cad4c295b582952dc77c7eaa0.js
I, [2021-12-01T07:30:27.614232 #670]  INFO -- : Writing /var/www/discourse/public/assets/locales/lv-9f2031c47ff7c4c4148613ed46bcc80db9f17d84b72a0c08fb5dbaf288008aad.js
I, [2021-12-01T07:30:27.822346 #670]  INFO -- : Writing /var/www/discourse/public/assets/locales/el-3c850821550e0cc516515732b7cde8b35cc68c29296abbc39a1c2831ad6ba962.js
I, [2021-12-01T07:30:28.032559 #670]  INFO -- : Writing /var/www/discourse/public/assets/locales/pl_PL-a4a808930b95183b4acb3fec1e8e3e1591cade54f05d4f943585be78e8eb82e5.js
I, [2021-12-01T07:30:28.241255 #670]  INFO -- : Writing /var/www/discourse/public/assets/locales/nb_NO-194012fc110e9b92bd6f406ed2a9eebff3e6dda2ad0bd4b33dfa084b0efb6b67.js
I, [2021-12-01T07:30:28.440104 #670]  INFO -- : Writing /var/www/discourse/public/assets/locales/nl-0bdaabfc71e0a96fef67da00c68f177c508da66854fab7511225dfd11d754aab.js
I, [2021-12-01T07:30:28.448192 #670]  INFO -- : Writing /var/www/discourse/public/assets/wizard-custom-guest-16c07e21721b356a3cf622bc07b3dbee79d53c0624b57562959140418b62a454.js
I, [2021-12-01T07:30:28.455716 #670]  INFO -- : Writing /var/www/discourse/public/assets/wizard-custom-globals-ceb8c5478df3f5ede82d275c13b9badd66fdce63559117914170ea33ab0ee3ba.js
rake aborted!
Sprockets::FileNotFound: impossible de trouver le fichier 'discourse/app/mixins/composer-upload' de type 'application/javascript'
Vérifié dans ces chemins :
  /var/www/discourse/app/assets/images
  /var/www/discourse/app/assets/javascripts
  /var/www/discourse/app/assets/stylesheets
  /var/www/discourse/vendor/assets/javascripts
  /var/www/discourse/vendor/assets/svg-icons
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/logster-2.10.0/vendor/assets/javascripts
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.6/vendor/assets/javascripts
  /var/www/discourse/vendor/bundle/ruby/2.7.0/lib/assets/compiled
  /var/www/discourse/config/locales
  /var/www/discourse/public/javascripts
...
FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' a échoué avec le retour #<Process::Status: pid 668 exit 1>
Emplacement de l'échec : /pups/lib/pups/exec_command.rb:112:in `spawn'
exec a échoué avec les paramètres {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
f094a27a808540af5c9dd844181fe50f8933cb184b8adf614dee1ecf669fd9cd
** ÉCHEC DU DÉMARRAGE ** 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.
==================== FIN DU JOURNAL DE RECONSTRUCTION ====================
Impossible de reconstruire l'application.

Avez-vous le plugin wizard personnalisé ? Ou d’autres plugins non standard ? Je suppose que c’est un problème avec Une nouvelle ère pour les téléversements de fichiers dans Discourse.

1 « J'aime »

oui, et oui plusieurs, je les vérifie un par un.
Quand je les ai tous désactivés, la reconstruction a fonctionné.

1 « J'aime »

Je l’ai identifié, le problème vient du plugin assistant personnalisé.
Je vais déplacer ce fil dans la catégorie des plugins.

@angus pour information, j’ai également créé un problème GitHub.

Ceci a été corrigé. Veuillez mettre à jour vers la dernière version du plugin (1.15.5).

2 « J'aime »

Merci beaucoup pour la correction rapide.
J’ai réussi à reconstruire avec la nouvelle version du plugin.

1 « J'aime »

I’m seeing what looks like a very similar error when trying to build 2.8.0.beta10 with latest discourse-custom-wizard, during bundle exec rake themes:update assets:precompile and I don’t know whether it’s really another manifestation of essentially the same problem.

Sprockets::FileNotFound: couldn't find file 'discourse/app/mixins/upload' with type 'application/javascript'

I can successfully build by removing discourse-custom-wizard from the list of plugins. The complete list I’m trying to build with (./launcher bootstrap app) is:

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-canned-replies.git
          - git clone https://github.com/discourse/discourse-tooltips.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-data-explorer.git
          - git clone https://github.com/discourse/discourse-assign
          - git clone https://github.com/gdpelican/retort.git
          - git clone https://github.com/discourse/discourse-checklist
          - git clone https://github.com/discourse/discourse-sitemap
          - git clone https://github.com/discourse/discourse-bcc
          - git clone https://github.com/discourse/discourse-math
          - git clone https://github.com/Ebsy/discourse-nationalflags.git
          - git clone https://github.com/discourse/discourse-voting.git
          - git clone https://github.com/cpradio/discourse-plugin-composer-help-button.git
          - git clone https://github.com/paviliondev/discourse-custom-wizard.git

It builds fine with that last line commented out, but repeatedly crashes when I try to build build with it in there.

The more complete error:

I, [2021-12-22T02:29:00.989134 #4965]  INFO -- : Writing /var/www/discourse/public/assets/wizard-custom-globals-ceb8c5478df3f5ede82d275c13b9badd66fdce63559117914170ea33ab0ee3ba.js
rake aborted!
Sprockets::FileNotFound: couldn't find file 'discourse/app/mixins/upload' with type 'application/javascript'
Checked in these paths: 
  /var/www/discourse/app/assets/images
  /var/www/discourse/app/assets/javascripts
  /var/www/discourse/app/assets/stylesheets
  /var/www/discourse/vendor/assets/javascripts
  /var/www/discourse/vendor/assets/svg-icons
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/logster-2.10.1/vendor/assets/javascripts
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/vendor/assets/javascripts
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionview-6.1.4.1/lib/assets/compiled
  /var/www/discourse/config/locales
  /var/www/discourse/public/javascripts
  /var/www/discourse/plugins/discourse-assign/auto_generated
  /var/www/discourse/plugins/discourse-assign/assets
  /var/www/discourse/plugins/discourse-assign/admin/assets
  /var/www/discourse/plugins/discourse-assign/test/javascripts
  /var/www/discourse/plugins/discourse-bcc/auto_generated
  /var/www/discourse/plugins/discourse-bcc/assets
  /var/www/discourse/plugins/discourse-bcc/admin/assets
  /var/www/discourse/plugins/discourse-bcc/test/javascripts
  /var/www/discourse/plugins/discourse-canned-replies/auto_generated
  /var/www/discourse/plugins/discourse-canned-replies/assets
  /var/www/discourse/plugins/discourse-canned-replies/admin/assets
  /var/www/discourse/plugins/discourse-canned-replies/test/javascripts
  /var/www/discourse/plugins/discourse-checklist/auto_generated
  /var/www/discourse/plugins/discourse-checklist/assets
  /var/www/discourse/plugins/discourse-checklist/admin/assets
  /var/www/discourse/plugins/discourse-checklist/test/javascripts
  /var/www/discourse/plugins/discourse-custom-wizard/assets/javascripts
  /var/www/discourse/plugins/discourse-custom-wizard/assets/stylesheets/wizard
  /var/www/discourse/plugins/discourse-custom-wizard/auto_generated
  /var/www/discourse/plugins/discourse-custom-wizard/assets
  /var/www/discourse/plugins/discourse-custom-wizard/admin/assets
  /var/www/discourse/plugins/discourse-custom-wizard/test/javascripts
  /var/www/discourse/plugins/discourse-data-explorer/auto_generated
  /var/www/discourse/plugins/discourse-data-explorer/assets
  /var/www/discourse/plugins/discourse-data-explorer/admin/assets
  /var/www/discourse/plugins/discourse-data-explorer/test/javascripts
  /var/www/discourse/plugins/discourse-details/auto_generated
  /var/www/discourse/plugins/discourse-details/assets
  /var/www/discourse/plugins/discourse-details/admin/assets
  /var/www/discourse/plugins/discourse-details/test/javascripts
  /var/www/discourse/plugins/discourse-local-dates/auto_generated
  /var/www/discourse/plugins/discourse-local-dates/assets
  /var/www/discourse/plugins/discourse-local-dates/admin/assets
  /var/www/discourse/plugins/discourse-local-dates/test/javascripts
  /var/www/discourse/plugins/discourse-math/auto_generated
  /var/www/discourse/plugins/discourse-math/assets
  /var/www/discourse/plugins/discourse-math/admin/assets
  /var/www/discourse/plugins/discourse-math/test/javascripts
  /var/www/discourse/plugins/discourse-narrative-bot/auto_generated
  /var/www/discourse/plugins/discourse-narrative-bot/assets
  /var/www/discourse/plugins/discourse-narrative-bot/admin/assets
  /var/www/discourse/plugins/discourse-narrative-bot/test/javascripts
  /var/www/discourse/plugins/discourse-nationalflags/auto_generated
  /var/www/discourse/plugins/discourse-nationalflags/assets
  /var/www/discourse/plugins/discourse-nationalflags/admin/assets
  /var/www/discourse/plugins/discourse-nationalflags/test/javascripts
  /var/www/discourse/plugins/discourse-plugin-composer-help-button/auto_generated
  /var/www/discourse/plugins/discourse-plugin-composer-help-button/assets
  /var/www/discourse/plugins/discourse-plugin-composer-help-button/admin/assets
  /var/www/discourse/plugins/discourse-plugin-composer-help-button/test/javascripts
  /var/www/discourse/plugins/discourse-presence/auto_generated
  /var/www/discourse/plugins/discourse-presence/assets
  /var/www/discourse/plugins/discourse-presence/admin/assets
  /var/www/discourse/plugins/discourse-presence/test/javascripts
  /var/www/discourse/plugins/discourse-sitemap/auto_generated
  /var/www/discourse/plugins/discourse-sitemap/assets
  /var/www/discourse/plugins/discourse-sitemap/admin/assets
  /var/www/discourse/plugins/discourse-sitemap/test/javascripts
  /var/www/discourse/plugins/discourse-solved/auto_generated
  /var/www/discourse/plugins/discourse-solved/assets
  /var/www/discourse/plugins/discourse-solved/admin/assets
  /var/www/discourse/plugins/discourse-solved/test/javascripts
  /var/www/discourse/plugins/discourse-tooltips/auto_generated
  /var/www/discourse/plugins/discourse-tooltips/assets
  /var/www/discourse/plugins/discourse-tooltips/admin/assets
  /var/www/discourse/plugins/discourse-tooltips/test/javascripts
  /var/www/discourse/plugins/discourse-voting/auto_generated
  /var/www/discourse/plugins/discourse-voting/assets
  /var/www/discourse/plugins/discourse-voting/admin/assets
  /var/www/discourse/plugins/discourse-voting/test/javascripts
  /var/www/discourse/plugins/docker_manager/auto_generated
  /var/www/discourse/plugins/docker_manager/assets
  /var/www/discourse/plugins/docker_manager/admin/assets
  /var/www/discourse/plugins/docker_manager/test/javascripts
  /var/www/discourse/plugins/lazy-yt/auto_generated
  /var/www/discourse/plugins/lazy-yt/assets
  /var/www/discourse/plugins/lazy-yt/admin/assets
  /var/www/discourse/plugins/lazy-yt/test/javascripts
  /var/www/discourse/plugins/poll/auto_generated
  /var/www/discourse/plugins/poll/assets
  /var/www/discourse/plugins/poll/admin/assets
  /var/www/discourse/plugins/poll/test/javascripts
  /var/www/discourse/plugins/retort/auto_generated
  /var/www/discourse/plugins/retort/assets
  /var/www/discourse/plugins/retort/admin/assets
  /var/www/discourse/plugins/retort/test/javascripts
  /var/www/discourse/plugins/styleguide/auto_generated
  /var/www/discourse/plugins/styleguide/assets
  /var/www/discourse/plugins/styleguide/admin/assets
  /var/www/discourse/plugins/styleguide/test/javascripts
  /var/www/discourse/tmp/ember-rails
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/discourse-ember-source-3.12.2.3/dist
  /var/www/discourse/vendor/bundle/ruby/2.7.0/gems/ember-data-source-3.0.2/dist/globals
/var/www/discourse/plugins/discourse-custom-wizard/assets/javascripts/wizard-custom.js:6
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/resolve.rb:65:in `resolve!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:399:in `resolve'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:207:in `process_require_directive'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:180:in `block in process_directives'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:178:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:178:in `process_directives'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:83:in `_call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb:68:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:75:in `call_processor'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:57:in `block in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:56:in `reverse_each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:56:in `call_processors'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:134:in `load_from_unloaded'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:60:in `block in load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:317:in `fetch_asset_from_dependency_cache'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:44:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/cached_environment.rb:20:in `block in initialize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/cached_environment.rb:47:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/bundle.rb:23:in `block in call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/utils.rb:200:in `dfs'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/bundle.rb:24:in `call'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:75:in `call_processor'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:57:in `block in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:56:in `reverse_each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb:56:in `call_processors'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:134:in `load_from_unloaded'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:60:in `block in load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:317:in `fetch_asset_from_dependency_cache'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/loader.rb:44:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/cached_environment.rb:20:in `block in initialize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/cached_environment.rb:47:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/base.rb:66:in `find_asset'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/base.rb:73:in `find_all_linked_assets'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/manifest.rb:134:in `block in find'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/manifest.rb:133:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/manifest.rb:133:in `find'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/sprockets/manifest.rb:186:in `compile'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-rails-3.4.2/lib/sprockets/rails/task.rb:67:in `block (3 levels) in define'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-3.7.2/lib/rake/sprocketstask.rb:147:in `with_logger'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/sprockets-rails-3.4.2/lib/sprockets/rails/task.rb:66:in `block (2 levels) in define'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => assets:precompile
(See full trace by running task with --trace)
I, [2021-12-22T02:29:01.062324 #1]  INFO -- : Updating 'discourse-groups-css-classes-in-body' for 'default'...
Updating 'discourse-units' for 'default'...
Updating 'discourse-image-annotator' for 'default'...



FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' failed with return #<Process::Status: pid 4963 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
758338f1df1e2e950fd7228c757bfb7dfbcf1e7742d6cb175e3aec7c9f52addb
1 « J'aime »

Merci pour le rapport. C’est maintenant résolu.

Juste pour information, nous travaillons sur un système automatisé de notification de compatibilité des plugins depuis un certain temps et nous le publierons avec d’importantes mises à jour de custom-wizard dans la nouvelle année.

Le système a détecté ce problème de compatibilité une heure après que le commit pertinent a été intégré dans discourse/discourse, et a envoyé un avertissement aux clients du plugin, que vous auriez vu dans votre tableau de bord d’administration avant de mettre à jour (la capture d’écran provient de notre instance de test ; cette fonctionnalité n’est pas encore publiée).

4 « J'aime »

Merci pour cette correction supplémentaire, qui (sans surprise) a résolu mon problème de compilation, et wow, cette alerte automatisée est une excellente idée ! :tada:

2 « J'aime »

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