Ei, tudo bem!
Um grande conflito no meu Discourse desde a mudança…
- Antes eu tinha :
- git clone https://github.com/discourse/discourse-question-answer
- Hoje eu quis adicionar :
- git clone https://github.com/discourse/discourse-question-answer
- git clone https://github.com/discourse/discourse-post-voting
Obtive um conflito entre os dois :
Resumo
I, [2022-12-09T10:13:26.139287 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
/var/www/discourse/plugins/discourse-question-answer/lib/question_answer/engine.rb:4: warning: constante QuestionAnswer::CREATE_AS_QA_DEFAULT já inicializada
/var/www/discourse/plugins/discourse-post-voting/lib/question_answer/engine.rb:4: warning: definição anterior de CREATE_AS_QA_DEFAULT estava aqui
/var/www/discourse/plugins/discourse-question-answer/app/controllers/question_answer/votes_controller.rb:75: warning: constante QuestionAnswer::VotesController::VOTERS_LIMIT já inicializada
/var/www/discourse/plugins/discourse-post-voting/app/controllers/question_answer/votes_controller.rb:75: warning: definição anterior de VOTERS_LIMIT estava aqui
/var/www/discourse/plugins/discourse-question-answer/app/models/question_answer_vote.rb:7: warning: constante QuestionAnswerVote::VOTABLE_TYPES já inicializada
/var/www/discourse/plugins/discourse-post-voting/app/models/question_answer_vote.rb:7: warning: definição anterior de VOTABLE_TYPES estava aqui
/var/www/discourse/plugins/discourse-question-answer/app/models/question_answer_comment.rb:7: warning: constante QuestionAnswerComment::COOKED_VERSION já inicializada
/var/www/discourse/plugins/discourse-post-voting/app/models/question_answer_comment.rb:7: warning: definição anterior de COOKED_VERSION estava aqui
/var/www/discourse/plugins/discourse-question-answer/app/models/question_answer_comment.rb:26: warning: constante QuestionAnswerComment::MARKDOWN_FEATURES já inicializada
/var/www/discourse/plugins/discourse-post-voting/app/models/question_answer_comment.rb:26: warning: definição anterior de MARKDOWN_FEATURES estava aqui
/var/www/discourse/plugins/discourse-question-answer/app/models/question_answer_comment.rb:31: warning: constante QuestionAnswerComment::MARKDOWN_IT_RULES já inicializada
/var/www/discourse/plugins/discourse-post-voting/app/models/question_answer_comment.rb:31: warning: definição anterior de MARKDOWN_IT_RULES estava aqui
/var/www/discourse/plugins/discourse-question-answer/extensions/topic_extension.rb:9: warning: constante Topic::QA_SUBTYPE já inicializada
/var/www/discourse/plugins/discourse-post-voting/extensions/topic_extension.rb:9: warning: definição anterior de QA_SUBTYPE estava aqui
rake aborted!
ArgumentError: Nome de rota inválido, já em uso: 'question_answer'
Você pode ter definido duas rotas com o mesmo nome usando a opção `:as`, ou pode estar sobrescrevendo uma rota já definida por um recurso com a mesma nomenclatura. Para este último caso, você pode restringir as rotas criadas com `resources` como explicado aqui:
https://guides.rubyonrails.org/routing.html#restricting-the-routes-created
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:587:in `add_route'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:1986:in `add_route'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:1957:in `decomposed_match'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:1921:in `block in map_match'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:1915:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:1915:in `map_match'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:1663:in `match'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:642:in `mount'
/var/www/discourse/plugins/discourse-question-answer/config/routes.rb:16:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:427:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:427:in `eval_block'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:434:in `block in finalize!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:434:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:434:in `finalize!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application/routes_reloader.rb:51:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application/routes_reloader.rb:51:in `finalize!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application/routes_reloader.rb:22:in `reload!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application/routes_reloader.rb:35:in `block in updater'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/file_update_checker.rb:83:in `execute'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application/routes_reloader.rb:10:in `execute'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application/finisher.rb:195:in `block in <module:Finisher>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application.rb:391:in `initialize!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/railtie.rb:207:in `public_send'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/railtie.rb:207:in `method_missing'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.9.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.9.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.9.4/lib/bootsnap/load_path_cache/loaded_features_index.rb:88:in `register'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.9.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.9.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/zeitwerk-2.6.0/lib/zeitwerk/kernel.rb:35:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/dependencies.rb:332:in `block in require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/dependencies.rb:299:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/dependencies.rb:332:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application.rb:367:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.1.6.1/lib/rails/application.rb:533:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => db:migrate => db:load_config => environment
(Veja o rastreamento completo executando a tarefa com --trace)
I, [2022-12-09T10:13:36.170591 #1] INFO -- : gem install rrule -v 0.4.4 -i /var/www/discourse/plugins/discourse-calendar/gems/2.7.6 --no-document --ignore-dependencies --no-user-install
rrule-0.4.4 instalado com sucesso
1 gem instalada
FALHOU
--------------------
- Depois eu removi o primeiro. A construção está ok, mas o app não está mais rodando :
- Recebi um HTTP 500
- Os logs de erro do nginx me mostram algo como :
root@slazvmeutp01:/opt/discourse# cat /var/opt/discourse/var-log/nginx/error.log 2022/12/09 10:47:34 [notice] 537#537: processo de sinal iniciado 2022/12/09 10:47:37 [error] 554#554: *2 connect() falhou (111: Conexão recusada) ao conectar com upstream, cliente: 18.156.156.214, servidor: _, requisição: "POST /message-bus/76e1bd78eedf43a5a337b6f44a8b88d0/poll?dlp=t HTTP/2.0", upstream: "http://127.0.0.1:3000/message-bus/76e1bd78eedf43a5a337b6f44a8b88d0/poll?dlp=t", host: "mydiscourse.domain.com", referrer: "https://mydiscourse.domain.com/admin/plugins" 2022/12/09 10:59:08 [crit] 554#554: *398 SSL_do_handshake() falhou (SSL: error:141CF06C:SSL routines:tls_parse_ctos_key_share:bad key share) durante o handshake SSL, cliente: 212.102.40.218, servidor: 0.0.0.0:443 2022/12/09 11:25:50 [notice] 530#530: processo de sinal iniciado
Notei que o repositório Git https://github.com/discourse/discourse-question-answer agora redireciona para o segundo https://github.com/discourse/discourse-post-voting.
Isso explicaria o conflito na primeira construção hoje.
Mas e agora? Ele menciona um erro TLS em vez de um erro de plugin…
Alguma ideia?





