업그레이드 후 부트스트랩 실패

최신 패치 세트를 적용한 후 부트스트랩 실패가 발생하고 있습니다…

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 1581 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.

로그에는 다음과 같이 표시됩니다…

I, [2023-09-27T09:27:53.120283 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
Gem::LoadError: can't activate ffi-1.15.5, already activated ffi-1.16.2
/var/www/discourse/lib/plugin_gem.rb:25:in `load'
/var/www/discourse/lib/plugin/instance.rb:825:in `gem'
/var/www/discourse/plugins/discourse-migratepassword/plugin.rb:28:in `activate!'
/var/www/discourse/lib/plugin/instance.rb:722:in `instance_eval'
/var/www/discourse/lib/plugin/instance.rb:722:in `activate!'
/var/www/discourse/lib/discourse.rb:347:in `block in activate_plugins!'
/var/www/discourse/lib/discourse.rb:344:in `each'
/var/www/discourse/lib/discourse.rb:344:in `activate_plugins!'
/var/www/discourse/config/application.rb:227:in `block in <class:Application>'
/var/www/discourse/lib/plugin.rb:6:in `initialization_guard'
/var/www/discourse/config/application.rb:227:in `<class:Application>'
/var/www/discourse/config/application.rb:75:in `<module:Discourse>'
/var/www/discourse/config/application.rb:74:in `<top (required)>'
<internal:/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:38:in `require'
<internal:/usr/local/lib/ruby/site_ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:38:in `require'
/var/www/discourse/Rakefile:7:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.2.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>'
(See full trace by running task with --trace)

현재 포럼을 정상적으로 복구하기 위해 다양한 방법을 시도하고 있습니다.

이 문제는 migratepassword 플러그인과 관련이 있는 것으로 보입니다. 모든 플러그인을 비활성화한 상태로 포럼을 재빌드할 수는 있지만, migratepassword 플러그만 활성화한 채로 재빌드를 시도하면 부트스트랩 실패가 발생합니다.

더 많이 알고 있을 수도 있는 @RGJ에게 작은 핑을 보내겠습니다. :crossed_fingers:

네, 코어(core)의 의존성 업데이트로 인해 어제부터 문제가 발생했습니다. 해당 PR은 이미 제 할 일 목록에 있으며, 오늘 늦게나 내일 제공될 예정입니다.

긴급 해결 방법:
옵션 1: 문제 발생 직전의 커밋인 Discourse 91c94f로 체크아웃하세요.
옵션 2: 플러그인의 gem 'ffi', '1.15.5', require: false를 gem 'ffi', '1.16.2', require: false로 변경하세요.

이 두 가지 방법 중 어느 쪽을 해야 하는지 잘 모르겠습니다. app.yml에 "version: 91c94f"를 넣어보았지만 효과가 없었으니, 아마 제가 잘못된 방법을 시도한 것 같습니다.

PR이 준비될 때까지는 플러그인 없이 실행하겠습니다. 사용자의 대부분은 이미 기존 비밀번호에서 마이그레이션을 완료했지만, 몇 년 전부터 사라졌다가 매주 1~2명의 '레거시 사용자’가 다시 나타나는 경우가 있습니다.

이것에 대한 명령어는 무엇이며, 이 값을 변경하기 위해 파일을 어디에서 찾을 수 있나요?

이 경우 콘솔, 즉 실행할 cmd에서 어떻게 해야 하는지 궁금합니다.

이미 곧 패치가 제공될 것이라고 말했기 때문에 같은 질문을 두 번 할 이유는 없습니다.

discourse-migratepassword의 새 버전이 이제 사용 가능합니다.
재빌드만 하시면 됩니다.

수정해 주셔서 감사합니다, Richard. 이제 오류 없이 재빌드되었습니다 :grinning:

여전히 동일한 문제가 발생하고 있으며, 내 플러그인에 discourse-migratepassword가 없습니다.

플러그인에 discourse-migratepassword가 있나요? 재빌드를 시도해 보았지만 여전히 같은 문제가 발생하고 있습니다.

es:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 42
2023-09-27 16:50:33.227 UTC [42] LOG:  received fast shutdown request
I, [2023-09-27T16:50:33.227763 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 111
111:signal-handler (1695833433) Received SIGTERM scheduling shutdown...
2023-09-27 16:50:33.252 UTC [42] LOG:  aborting any active transactions
2023-09-27 16:50:33.262 UTC [42] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2023-09-27 16:50:33.265 UTC [46] LOG:  shutting down
2023-09-27 16:50:33.282 UTC [42] LOG:  database system is shut down
111:M 27 Sep 2023 16:50:33.282 # User requested shutdown...
111:M 27 Sep 2023 16:50:33.283 * Saving the final RDB snapshot before exiting.
111:M 27 Sep 2023 16:50:33.295 * DB saved on disk
111:M 27 Sep 2023 16:50:33.296 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle config --local deployment true' failed with return #<Process::Status: pid 539 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle config --local deployment true'", "su discourse -c 'bundle config --local without \"development test\"'", "su discourse -c 'bundle install --retry 3 --jobs 4'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
92863be4bda311c642a83b1afd97e58a64e9044ea2dc0e23f245fafb086851f7

그가 말한 대로 그에게는 해당 플러그인이 있습니다.
만약 없다면, 당신이 시작한 주제에서 계속 진행하여 전체 오류 메시지를 공유해 주세요.