修复因升级而破坏的openproject配置

时间:2019-08-21 20:20:48

标签: ruby-on-rails passenger openproject

我曾经使用apache2和postgres在ubuntu xenial上安装了本地版本的openproject 9。我让它工作了好几个星期,然后才肯接受所提供的软件包升级,这破坏了配置。

我尝试了“ openproject configure”,它似乎已成功完成,但没有解决问题。这是错误消息:

Missing `secret_key_base` for 'production' environment, set this string with `rails credentials:edit` (ArgumentError)
  /opt/openproject/vendor/bundle/ruby/2.6.0/gems/railties-5.2.2.1/lib/rails/application.rb:585:in `validate_secret_key_base'
  /opt/openproject/vendor/bundle/ruby/2.6.0/gems/railties-5.2.2.1/lib/rails/application.rb:432:in `secret_key_base'
  /opt/openproject/vendor/bundle/ruby/2.6.0/gems/railties-5.2.2.1/lib/rails/application.rb:176:in `key_generator'

我正在非常接近基于提供的conf文件的apache2虚拟服务器中运行乘客。我唯一的困惑是/ etc / openproject中的这些'include'* .conf文件,但是没有要包含的文件。

我可以看到/opt/openproject/.profile.d/ruby.sh中定义了一个环境变量SECRET_KEY_BASE,如果我在读取/ usr / bin / openproject shell文件中的profile.d之后插入命令'env',它确实会读取秘密密钥。

发生了什么事,我该如何解决?

1 个答案:

答案 0 :(得分:1)

您使用环境变量设置了secret_key,但是要求您将其设置在rails凭证上:edit。可能env是多余的,在这种情况下,唯一合适的位置是凭据。 只要您拥有master.key安全,就可以将其保存在凭证中。 如果已生成master.key,则传递该secret_key凭据。您可以通过EDITOR = vim rails凭证运行它:edit