Reconstrução Falhou, por favor ajude!

Fiz uma reconstrução esta noite e falhou. Desativei todos os plugins e ainda está falhando, infelizmente. Parece que algumas das gems podem não estar atualizando corretamente. @pfaffman, posso precisar da sua ajuda com isso.

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle install --deployment --retry 3 --jobs 4 --verbose --without test development' failed with return #<Process::Status: pid 367 exit 5>
Location of failure: /usr/local/lib/ruby/gems/2.7.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 install --deployment --retry 3 --jobs 4 --verbose --without test development'"]}
bootstrap failed with exit code 5
** 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, [2022-09-26T00:37:54.244078 #1]  INFO -- : Terminating async processes
I, [2022-09-26T00:37:54.244262 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 41
2022-09-26 00:37:54.244 UTC [41] LOG:  received fast shutdown request
I, [2022-09-26T00:37:54.244884 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 102
102:signal-handler (1664152674) Received SIGTERM scheduling shutdown...
2022-09-26 00:37:54.247 UTC [41] LOG:  aborting any active transactions
2022-09-26 00:37:54.250 UTC [41] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
2022-09-26 00:37:54.253 UTC [45] LOG:  shutting down
102:M 26 Sep 2022 00:37:54.271 # User requested shutdown...
102:M 26 Sep 2022 00:37:54.271 * Saving the final RDB snapshot before exiting.
2022-09-26 00:37:54.274 UTC [41] LOG:  database system is shut down
102:M 26 Sep 2022 00:37:55.122 * DB saved on disk
102:M 26 Sep 2022 00:37:55.122 # Redis is now ready to exit, bye bye...
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/msgpack-1.5.6.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/image_size-3.1.0.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/logster-2.11.3.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/version_gem-1.1.0.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/msgpack-1.5.6.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/image_size-3.1.0.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/logster-2.11.3.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/stackprof-0.2.21.gem)
Retrying download gem from https://rubygems.org/ due to error (4/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/image_size-3.1.0.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/omniauth-1.9.2.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/oauth-tty-1.0.3.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/stackprof-0.2.21.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/loofah-2.19.0.gem)
Retrying download gem from https://rubygems.org/ due to error (2/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/css_parser-1.12.0.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/oauth-tty-1.0.3.gem)
Retrying download gem from https://rubygems.org/ due to error (4/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/stackprof-0.2.21.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/loofah-2.19.0.gem)
Retrying download gem from https://rubygems.org/ due to error (3/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/css_parser-1.12.0.gem)
Retrying download gem from https://rubygems.org/ due to error (4/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/oauth-tty-1.0.3.gem)
Retrying download gem from https://rubygems.org/ due to error (4/4): Gem::RemoteFetcher::FetchError Net::OpenTimeout: execution expired (https://rubygems.org/gems/loofah-2.19.0.gem)
Bundler::InstallError: Bundler::HTTPError: Could not download gem from https://rubygems.org/ due to underlying error <Net::OpenTimeout: execution expired (https://rubygems.org/gems/oauth-tty-1.0.3.gem)>
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/rubygems_integration.rb:497:in `rescue in download_gem'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/rubygems_integration.rb:469:in `download_gem'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/source/rubygems.rb:539:in `download_gem'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/source/rubygems.rb:488:in `fetch_gem'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/source/rubygems.rb:465:in `fetch_gem_if_possible'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/source/rubygems.rb:158:in `install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/installer/gem_installer.rb:54:in `install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/installer/gem_installer.rb:16:in `install_from_spec'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/installer/parallel_installer.rb:186:in `do_install'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/installer/parallel_installer.rb:177:in `block in worker_pool'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/worker.rb:62:in `apply_func'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/worker.rb:57:in `block in process_queue'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/worker.rb:54:in `loop'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/worker.rb:54:in `process_queue'
  /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.3.18/lib/bundler/worker.rb:91:in `block (2 levels) in create_threads'

Se as solicitações para o rubygems estiverem expirando, o problema provavelmente está do lado deles.

Você reiniciou com sucesso o contêiner existente?

Estou assumindo que outras solicitações DNS do servidor estão sendo bem-sucedidas?

2 curtidas

Não, eu não consegui iniciar o contêiner

Aqui está a minha saída de gem env para sua informação

RubyGems Environment:
  - RUBYGEMS VERSION: 2.5.2.1
  - RUBY VERSION: 2.3.1 (2016-04-26 patchlevel 112) [x86_64-linux-gnu]
  - INSTALLATION DIRECTORY: /var/lib/gems/2.3.0
  - USER INSTALLATION DIRECTORY: /root/.gem/ruby/2.3.0
  - RUBY EXECUTABLE: /usr/bin/ruby2.3
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - SPEC CACHE DIRECTORY: /root/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /var/lib/gems/2.3.0
     - /root/.gem/ruby/2.3.0
     - /usr/lib/x86_64-linux-gnu/rubygems-integration/2.3.0
     - /usr/share/rubygems-integration/2.3.0
     - /usr/share/rubygems-integration/all
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - /usr/local/sbin
     - /usr/local/bin
     - /usr/sbin
     - /usr/bin
     - /sbin
     - /bin
     - /usr/games
     - /usr/local/games
     - /snap/bin

E parece que está conectando:

root@community:/var/discourse# curl -O https://rubygems.org/gems/msgpack-1.5.6.gem
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 89600  100 89600    0     0   745k      0 --:--:-- --:--:-- --:--:--  741k

EDIT: Errado. Isso foi bizarro. Acontece que se você não seguir as instruções em Discourse FontAwesome Pro e clonar o plugin com os outros em vez de em uma seção after_code, você obterá esses erros. Não consigo explicar por que funcionou antes. Olhei as instruções novamente para ver se isso tinha mudado, mas não havia sido alterado recentemente.

2 curtidas

Eu não entendo o que você está dizendo, Jay, a maneira normal de instalar um plugin é cloná-lo em um bloco after_code?

Isso funciona para mim, estou curioso para saber como é a configuração ruim?

## Plugins vão aqui
## veja https://meta.discourse.org/t/19157 para detalhes
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-fontawesome-pro.git

2 curtidas

Agora estou realmente confuso. Eu nunca notei em qual bloco os plugins normalmente ficam. Mas eu juro que não funcionou com o plugin com todos os outros e então eu adicionei outro bloco after_code com o git clone e o script de instalação.

Vou ver se consigo quebrá-lo novamente. :confused: :crying_cat_face:

2 curtidas

Bem, pelo que posso dizer, foi apenas limitação de taxa do rubygems. Não tenho certeza de como o droplet recém-criado que configurei foi limitado, mas essa, ou um problema espúrio com o próprio rubygems, é a minha melhor explicação.

2 curtidas

Tente adicionar 127.0.0.1 ao DNS do host.
Isso funcionou para mim para este erro.