Upgrade 2.7.0.beta8 -> 2.8.0.beta2 failed, rebuild failed

AI-generated summary

The upgrade from Discourse 2.7.0.beta8 to 2.8.0.beta2 failed due to an error with the Garmin Connect Onebox plugin, which is causing an uninitialized constant Onebox. TallTrees tried rebuilding, but it also failed with the same error. ewan initially thought the plugin update would be straightforward, but after further investigation, found it to be more complicated and is unsure when they can resolve it. As a temporary solution, TallTrees removed the plugin and suggested marking it as #plugin:broken-plugin.

Morning!

I tried to upgrade my site via the admin console, but it failed with errors like this:

I, [2021-06-22T05:54:52.584458 #1776]  INFO -- : Refreshing Gem list
** PLUGIN FAILURE **

You are unable to build Discourse due to this error during plugin
initialization:

uninitialized constant Onebox

/var/www/discourse/plugins/garmin_connect_onebox/plugin.rb:6:in `activate!'
/var/www/discourse/lib/plugin/instance.rb:622:in `instance_eval'
/var/www/discourse/lib/plugin/instance.rb:622:in `activate!'
lib/discourse.rb:240:in `block in activate_plugins!'
lib/discourse.rb:237:in `each'
lib/discourse.rb:237:in `activate_plugins!'
/var/www/discourse/config/application.rb:313:in `block in <class:Application>'
/var/www/discourse/lib/plugin_initialization_guard.rb:5:in `plugin_initialization_guard'
/var/www/discourse/config/application.rb:312:in `<class:Application>'
/var/www/discourse/config/application.rb:73:in `<module:Discourse>'
/var/www/discourse/config/application.rb:72:in `<top (required)>'
/var/www/discourse/config/environment.rb:4:in `require'
/var/www/discourse/config/environment.rb:4:in `<top (required)>'
config.ru:7:in `require'
config.ru:7:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-2.2.3/lib/rack/builder.rb:125:in `instance_eval'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-2.2.3/lib/rack/builder.rb:125:in `initialize'
config.ru:1:in `new'
config.ru:1:in `<main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/unicorn-6.0.0/lib/unicorn.rb:54:in `eval'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/unicorn-6.0.0/lib/unicorn.rb:54:in `block in builder'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/unicorn-6.0.0/lib/unicorn/http_server.rb:826:in `build_app!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/unicorn-6.0.0/lib/unicorn/http_server.rb:140:in `start'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/unicorn-6.0.0/bin/unicorn:128:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bin/unicorn:23:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/bin/unicorn:23:in `<main>'

That left the site displaying the “Opps…” message, and then inaccessible after a “launcher restart”.

So I tried rebuilding (to tests-passed), but that also fails with the same Onebox errors.

I’m assuming all is not good in ‘tests-passed’, so have rebuilt to the hash I was running previously to recover the site without upgrade :frowning:

I got some full logs, but I’m hoping the above is enough for a dev to be able fix this wrinkle?

Okay - so I’m guessing this is the Garmin connect onebox plugin which needs updating for recent Onebox changes… paging @ewan ?

I’ll have a look, straightforward plugin so should update easily. Please ping me again next week if I’ve not updated, have some free time then I will be able to work on it.

Ok - great! I’ll keep an eye out and retest once I see an update.

Thank you!

I had a look at this and the strava one box plugin. Unsure at the moment how to resolve, not as straightforward as I thought it would be. Not sure when I can next look at.

Okay - that’s a shame, but thanks for looking. I’ve removed the plugin for now.

Perhaps the plugin should be marked #plugin:broken-plugin in the mean time :frowning: