Upgrade-Seite leer

Ich habe heute eine Benachrichtigung über ein Upgrade erhalten, aber wenn ich zur Upgrade-Seite navigiere, ist diese leer:

Ich sehe, dass es mehrere Threads dazu gibt, und der Konsens scheint zu sein, manuell neu zu erstellen. Aber die Sache ist, dass ich erst vor zwei Tagen manuell neu erstellt habe, als ich ein benutzerdefiniertes Onebox-Plugin installiert habe, das ich gerade geschrieben habe:

https://github.com/bokeh/discourse-bokeh-onebox

Ich möchte verstehen, warum diese leere Seite auftritt. Ist etwas mit meinem trivialen Plugin schiefgelaufen, das dies verursacht hat, oder das ich ändern muss? Hängt es nicht mit dem Plugin zusammen, und wenn ja, was kann ich tun, um diese Situation in Zukunft zu vermeiden?

Tritt das Problem auf, wenn Sie die Plugins im abgesicherten Modus deaktivieren? Das könnte helfen, das Problem einzugrenzen.

[YourSite]/safe-mode

Der /upgrade-Link ist auf der Safe-Mode-/admin-Seite nicht mehr vorhanden und der Versuch, dorthin manuell zu navigieren, funktioniert nicht

Ups! Diese Seite existiert nicht oder ist privat.

Wenn Sie ‘Alle Plugins deaktivieren’ deaktivieren, die anderen beiden jedoch aktiviert lassen, ist es vorhanden. :+1: Das Deaktivieren der offiziellen Plugins deaktiviert docker-manager, aber Sie sollten immer noch Themen und inoffizielle Plugins überprüfen können, falls das hilft?

Gibt es rote Warnungen in der Konsole, wenn Sie auf der Upgrade-Seite F12 eingeben?

@JammyDodger Ah, danke. Nein, das hilft nicht, die Upgrade-Seite ist komplett leer, selbst im abgesicherten Modus, wenn Themes und inoffizielle Plugins deaktiviert sind.

@Steven Ja, das ist im JS-Konsolenprotokoll

1 „Gefällt mir“

Zusammenfassend lässt sich sagen, dass die Seite aufgrund eines HTTP-Fehlers 500 bei einer AJAX-Anfrage an

https://discourse.bokeh.org/admin/docker/repos

leer ist. Gibt es eine bekannte Erklärung dafür? Gibt es Korrekturmaßnahmen, die über einen manuellen Neuaufbau hinausgehen?

Wenn ein 500-Fehler auftritt, sollte ein entsprechender Eintrag unter /logs vorhanden sein.

@Falco Danke, ich war mir dieses Endpunkts nicht bewusst. Der Fehler ist

NoMethodError (undefined method downcase' for nil:NilClass) lib/middleware/omniauth_bypass_middleware.rb:71:in call’ lib/content_security_policy/middleware.rb:12:in `call’ lib/middleware/anonymous_c

plugins/docker_manager/app/controllers/docker_manager/admin_controller.rb:40:in `block in repos'
plugins/docker_manager/app/controllers/docker_manager/admin_controller.rb:29:in `map!'
plugins/docker_manager/app/controllers/docker_manager/admin_controller.rb:29:in `repos'
actionpack (6.1.4.1) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (6.1.4.1) lib/abstract_controller/base.rb:228:in `process_action'
actionpack (6.1.4.1) lib/action_controller/metal/rendering.rb:30:in `process_action'
actionpack (6.1.4.1) lib/abstract_controller/callbacks.rb:42:in `block in process_action'
activesupport (6.1.4.1) lib/active_support/callbacks.rb:106:in `run_callbacks'
actionpack (6.1.4.1) lib/abstract_controller/callbacks.rb:41:in `process_action'
actionpack (6.1.4.1) lib/action_controller/metal/rescue.rb:22:in `process_action'
actionpack (6.1.4.1) lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
activesupport (6.1.4.1) lib/active_support/notifications.rb:203:in `block in instrument'
activesupport (6.1.4.1) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (6.1.4.1) lib/active_support/notifications.rb:203:in `instrument'
actionpack (6.1.4.1) lib/action_controller/metal/instrumentation.rb:33:in `process_action'
actionpack (6.1.4.1) lib/action_controller/metal/params_wrapper.rb:249:in `process_action'
activerecord (6.1.4.1) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (6.1.4.1) lib/abstract_controller/base.rb:165:in `process'
actionview (6.1.4.1) lib/action_view/rendering.rb:39:in `process'
rack-mini-profiler (2.3.3) lib/mini_profiler/profiling_methods.rb:85:in `block in profile_method'
actionpack (6.1.4.1) lib/action_controller/metal.rb:190:in `dispatch'
actionpack (6.1.4.1) lib/action_controller/metal.rb:254:in `dispatch'
actionpack (6.1.4.1) lib/action_dispatch/routing/route_set.rb:50:in `dispatch'
actionpack (6.1.4.1) lib/action_dispatch/routing/route_set.rb:33:in `serve'
actionpack (6.1.4.1) lib/action_dispatch/routing/mapper.rb:19:in `block in <class:Constraints>'
actionpack (6.1.4.1) lib/action_dispatch/routing/mapper.rb:49:in `serve'
actionpack (6.1.4.1) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (6.1.4.1) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (6.1.4.1) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (6.1.4.1) lib/action_dispatch/routing/route_set.rb:842:in `call'
railties (6.1.4.1) lib/rails/engine.rb:539:in `call'
railties (6.1.4.1) lib/rails/railtie.rb:207:in `public_send'
railties (6.1.4.1) lib/rails/railtie.rb:207:in `method_missing'
actionpack (6.1.4.1) lib/action_dispatch/routing/mapper.rb:20:in `block in <class:Constraints>'
actionpack (6.1.4.1) lib/action_dispatch/routing/mapper.rb:49:in `serve'
actionpack (6.1.4.1) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (6.1.4.1) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (6.1.4.1) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (6.1.4.1) lib/action_dispatch/routing/route_set.rb:842:in `call'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
rack (2.2.3) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.3) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.3) lib/rack/head.rb:12:in `call'
actionpack (6.1.4.1) lib/action_dispatch/http/permissions_policy.rb:22:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:356:in `call'
rack (2.2.3) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.3) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/cookies.rb:689:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (6.1.4.1) lib/active_support/callbacks.rb:98:in `run_callbacks'
actionpack (6.1.4.1) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/actionable_exceptions.rb:18:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
logster (2.9.8) lib/logster/middleware/reporter.rb:43:in `call'
railties (6.1.4.1) lib/rails/rack/logger.rb:37:in `call_app'
railties (6.1.4.1) lib/rails/rack/logger.rb:28:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/request_id.rb:26:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
rack (2.2.3) lib/rack/method_override.rb:24:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.3) lib/rack/sendfile.rb:110:in `call'
actionpack (6.1.4.1) lib/action_dispatch/middleware/host_authorization.rb:92:in `call'
rack-mini-profiler (2.3.3) lib/mini_profiler/profiler.rb:249:in `call'
message_bus (3.3.6) lib/message_bus/rack/middleware.rb:61:in `call'
lib/middleware/request_tracker.rb:198:in `call'
railties (6.1.4.1) lib/rails/engine.rb:539:in `call'
railties (6.1.4.1) lib/rails/railtie.rb:207:in `public_send'
railties (6.1.4.1) lib/rails/railtie.rb:207:in `method_missing'
rack (2.2.3) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.3) lib/rack/urlmap.rb:58:in `each'
rack (2.2.3) lib/rack/urlmap.rb:58:in `call'
unicorn (6.0.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.0.0) lib/unicorn/http_server.rb:732:in `worker_loop'
unicorn (6.0.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.0.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.0.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/2.7.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/2.7.0/bin/unicorn:25:in `<main>'
1 „Gefällt mir“

Eines der von Ihnen installierten Plugins hat irgendwie einen nil-Namen

Sie können DockerManager::GitRepo.find_all in einer Rails-Konsole ausführen, um zu überprüfen, woher dies kommt.

@Falco Nun, ich schätze (nehme an), das wäre mein Onebox-Plugin, obwohl ich mir nicht sicher bin, warum die Dinge auch im abgesicherten Modus nicht funktionierten. Auf jeden Fall habe ich diese eine Datei aus Teilen zusammengeschustert, da ich noch nie zuvor Ruby geschrieben habe. Wenn Sie zufällig wissen, wie/wo ich den „Namen“ angeben sollte, wäre das eine Hilfe:

https://github.com/bokeh/discourse-bokeh-onebox/blob/main/plugin.rb

Vielleicht einem Beispiel folgen wie

1 „Gefällt mir“

:open_mouth: Ich habe mehrere Beispiele konsultiert, ich hätte nie erraten, dass der Name aus einem Kommentar extrahiert und nicht als tatsächliche Daten/Code konfiguriert wurde. Ich werde mein Plugin aktualisieren und neu erstellen, danke.

1 „Gefällt mir“

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