Reconstrucción de la aplicación abortada debido a un plugin de asistente personalizado

una reconstrucción con la última versión se aborta con un error de 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: no se pudo encontrar el archivo 'discourse/app/mixins/composer-upload' con el tipo 'application/javascript'
Buscado en estas rutas:
  /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' falló con el retorno #<Process::Status: pid 668 exit 1>
Ubicación del fallo: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec falló con los parámetros {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
f094a27a808540af5c9dd844181fe50f8933cb184b8adf614dee1ecf669fd9cd
** FALLÓ EL ARRANQUE ** por favor desplázate hacia arriba y busca mensajes de error anteriores, puede haber más de uno.
./discourse-doctor puede ayudar a diagnosticar el problema.
==================== FIN DEL REGISTRO DE RECOMPILACIÓN ====================
No se pudo reconstruir la aplicación.

¿Tienes el plugin de asistente personalizado? ¿O algún otro plugin no estándar? Supongo que es un problema con Una nueva era para las cargas de archivos en Discourse.

1 me gusta

sí, y sí, varios, solo los estoy revisando uno por uno.
Cuando los deshabilité todos, la reconstrucción funcionó.

1 me gusta

Lo he reducido, el problema es el plugin del asistente personalizado.
Moveré este hilo a la categoría de plugins.

@angus para tu información, también creé un problema en GitHub.

Esto se ha corregido. Por favor, actualiza a la última versión del plugin (1.15.5).

2 Me gusta

muchas gracias por la rápida solución.
Acabo de realizar con éxito la reconstrucción con la nueva versión del plugin.

1 me gusta

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 me gusta

Gracias por el informe. Ya está solucionado.

Solo una nota: hemos estado trabajando en un sistema automatizado de notificación de compatibilidad de plugins durante un tiempo y lo lanzaremos junto con algunas grandes actualizaciones de custom-wizard en el nuevo año.

El sistema detectó este problema de compatibilidad una hora después de que el commit relevante se incluyera en discourse/discourse, y envió una advertencia a los clientes del plugin, que habrías visto en tu panel de administración antes de actualizar (la captura de pantalla es de nuestra instancia de prueba; esta funcionalidad aún no se ha lanzado).

4 Me gusta

Gracias por esa corrección adicional, que (sin sorpresa) confirmo que solucionó mi compilación, ¡y vaya que esa advertencia automatizada es una gran idea! :tada:

2 Me gusta

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