Hola, escribí un plugin muy básico que añade un token JWT después de que un usuario inicia sesión, y ha estado funcionando bien durante casi un año. Hoy nuestro foro se cayó porque de alguna manera el certificado expiró (lo cual es curioso en sí mismo), así que intenté un ./launcher app rebuild, y la reconstrucción falla debido a un error en el plugin.
I, [2022-01-27T00:16:48.616458 #1] INFO -- :
> cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate'
** FALLO DEL PLUGIN **
No puedes reconstruir Discourse debido a este error durante la inicialización del plugin:
uninitialized constant Auth::DefaultCurrentUserProvider
/var/www/discourse/plugins/discourse-jwt-session/lib/jwt_current_user_provider.rb:3:in `<main>'
La línea relevante en el plugin es solo:
class JwtCurrentUserProvider < Auth::DefaultCurrentUserProvider
No puedo imaginar por qué esto dejaría de funcionar de repente, ya que no parece haber ningún cambio relevante en lib/auth/current_user_provider.rb, por lo que esa constante debería existir. ¿A menos que haya habido un cambio en el orden en que se cargan las bibliotecas y los plugins?
Comentar el plugin en mi app.yaml permite que la reconstrucción se complete con éxito. Descomentarlo hace que falle de nuevo.
Como contexto, estamos ejecutando la versión 2.8.0beta4. ¿Alguna idea de lo que podría estar pasando de repente?