更新旧安装失败

我刚刚尝试更新一个较旧版本(2.x)的安装,但一直失败。

以下是我在 /var/discourse 目录下执行 ./launcher rebuild app 后收到的错误信息:

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle install --deployment --retry 3 --jobs 4 --verbose --without test development' 失败,返回 #<Process::Status: pid 342 exit 5>
故障位置:/pups/lib/pups/exec_command.rb:112:in `spawn'
执行失败,参数为 {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle install --deployment --retry 3 --jobs 4 --verbose --without test development'"]}
a45e890ca3c9eacab4eb37560638252189690d4fa1a6fea78e6b33cf6f192236

我不确定出了什么问题——从失败前的控制台输出中,我看不到任何有用的信息。我只注意到在检出时 Discourse pups 处于分离 HEAD 状态,但不确定这是否是个问题……

来自 https://github.com/discourse/pups
   17f04ec..e0ff889  master     -> origin/master
 * [新分支]      main       -> origin/main
 * [新标签]         v1.1.1     -> v1.1.1
 * [新标签]         v1.1.0     -> v1.1.0
更新 17f04ec..e0ff889
快进
 .github/workflows/ci.yml     |  29 ++++++
 .github/workflows/lint.yml   |  27 +++++
 .rubocop.yml                 |   3 +
 Gemfile                      |   2 +
 Guardfile                    |   4 +-
 README.md                    |  21 ++++
 Rakefile                     |  14 +--
 bin/pups                     |   8 +-
 lib/pups.rb                  |  32 ++++--
 lib/pups/cli.rb              |  92 ++++++++++-------
 lib/pups/command.rb          |  25 +++--
 lib/pups/config.rb           | 240 +++++++++++++++++++++++--------------------
 lib/pups/docker.rb           |  69 +++++++++++++
 lib/pups/exec_command.rb     | 182 ++++++++++++++++----------------
 lib/pups/file_command.rb     |  60 +++++------
 lib/pups/merge_command.rb    |  94 ++++++++---------
 lib/pups/replace_command.rb  |  70 +++++++------
 lib/pups/runit.rb            |  47 +++++----
 lib/pups/version.rb          |   4 +-
 pups.gemspec                 |  37 ++++---
 test/cli_test.rb             | 102 +++++++++++++++---
 test/config_test.rb          | 215 ++++++++++++++++++++++++++++----------
 test/docker_test.rb          | 157 ++++++++++++++++++++++++++++
 test/exec_command_test.rb    |  62 ++++++-----
 test/file_command_test.rb    |  17 ++-
 test/merge_command_test.rb   |  64 ++++++------
 test/replace_command_test.rb |  86 ++++++++--------
 test/test_helper.rb          |   2 +
 28 个文件已更改,1158 处插入(+),607 处删除(-)
创建模式 100644 .github/workflows/ci.yml
创建模式 100644 .github/workflows/lint.yml
创建模式 100644 .rubocop.yml
创建模式 100644 lib/pups/docker.rb
创建模式 100644 test/docker_test.rb
注意:正在检出 'v1.0.3'。

你处于“分离 HEAD”状态。你可以四处查看,进行实验性
更改并提交它们,并且你可以通过执行另一次检出来丢弃在此
状态下进行的任何提交,而不会影响任何分支。

如果你想创建一个新分支来保留你创建的提交,你可以
现在或稍后再次使用带 -b 的 checkout 命令来做到这一点。例如:

  git checkout -b <新分支名>

HEAD 我的更新中出现了错误

```ruby
api_key = "a quick brown fox"
fetch("https://api.example.com/data", headers: { 'Authorization' => api_key })

请帮我修复它。taller.rb:233:in block in ensure_specs_are_compatible!' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:165:in each’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/spec_set.rb:165:in each' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:231:in ensure_specs_are_compatible!’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:83:in block in run' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:12:in block in lock’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:9:in open' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/process_lock.rb:9:in lock’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:71:in run' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/installer.rb:23:in install’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli/install.rb:62:in run' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:261:in block in install’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/settings.rb:131:in temporary' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:260:in install’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/command.rb:27:in run' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in invoke_command’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor.rb:392:in dispatch' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:34:in dispatch’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/base.rb:485:in start' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/cli.rb:28:in start’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/exe/bundle:45:in block in <top (required)>' /usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/lib/bundler/friendly_errors.rb:117:in with_friendly_errors’
/usr/local/lib/ruby/gems/2.7.0/gems/bundler-2.4.13/exe/bundle:33:in <top (required)>' /usr/local/bin/bundle:23:in load’
/usr/local/bin/bundle:23:in <main>' I, [2023-09-28T09:40:10.049549 #1] INFO -- : 正在使用 bundler 2.4.13 运行 bundle install --deployment --jobs 4 --retry 3 --verbose --without “test” “development”`
已冻结,使用 lockfile 中的解析结果
定义中缺少依赖项,无法在本地解析和安装 (GitHub - rails/sprockets: Rack-based asset packaging system · GitHub (位于 3.x@f4d3dae) 尚未检出)

也许可以尝试升级你的 Ruby 安装?

你是在升级过程中途停止的吗?

这是来自构建过程。我没有(而且认为不需要)在本地运行任何 ruby,是吗?

不,它似乎是由于一个问题而被终止的。

不确定。我只确定的是,某个版本的 Ruby 似乎已过时。