【发布时间】:2020-06-06 20:06:50
【问题描述】:
所以我正在处理其他人的 Rails 项目。我克隆了 repo 并点击了 bundle install 但是当我使用命令 rails db:migrate 或 rake db:migrate 或 rails s 时。我得到一长串错误堆栈。它看起来像这样(请阅读最后一行错误,尤其是结束位):
Traceback (most recent call last):
58: from bin/rails:4:in `<main>'
57: from bin/rails:4:in `require'
56: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands.rb:17:in `<top (required)>'
55: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
54: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/commands_tasks.rb:75:in `server'
53: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/commands_tasks.rb:75:in `tap'
52: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/commands_tasks.rb:80:in `block in server'
51: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/server.rb:78:in `start'
50: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/server.rb:139:in `log_to_stdout'
49: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/server.rb:337:in `wrapped_app'
48: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/commands/server.rb:61:in `app'
47: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/server.rb:209:in `app'
46: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/server.rb:300:in `build_app_and_options_from_config'
45: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/builder.rb:40:in `parse_file'
44: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/builder.rb:49:in `new_from_string'
43: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/builder.rb:49:in `eval'
42: from /Users/macbook/Desktop/develop/rails-projects/audiogon-staging/config.ru:in `<main>'
41: from /Users/macbook/Desktop/develop/rails-projects/audiogon-staging/config.ru:in `new'
40: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/builder.rb:55:in `initialize'
39: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-1.6.13/lib/rack/builder.rb:55:in `instance_eval'
38: from /Users/macbook/Desktop/develop/rails-projects/audiogon-staging/config.ru:3:in `block in <main>'
37: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:274:in `require'
36: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:240:in `load_dependency'
35: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:274:in `block in require'
34: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:274:in `require'
33: from /Users/macbook/Desktop/develop/rails-projects/audiogon-staging/config/environment.rb:15:in `<top (required)>'
32: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/railtie.rb:194:in `method_missing'
31: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/railtie.rb:194:in `public_send'
30: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/application.rb:352:in `initialize!'
29: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/initializable.rb:54:in `run_initializers'
28: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:205:in `tsort_each'
27: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:226:in `tsort_each'
26: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `each_strongly_connected_component'
25: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `call'
24: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `each'
23: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:349:in `block in each_strongly_connected_component'
22: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:415:in `each_strongly_connected_component_from'
21: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:415:in `call'
20: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/initializable.rb:44:in `tsort_each_child'
19: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/initializable.rb:44:in `each'
18: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:421:in `block in each_strongly_connected_component_from'
17: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:431:in `each_strongly_connected_component_from'
16: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:422:in `block (2 levels) in each_strongly_connected_component_from'
15: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
14: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/2.6.0/tsort.rb:228:in `block in tsort_each'
13: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/initializable.rb:55:in `block in run_initializers'
12: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/initializable.rb:30:in `run'
11: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/initializable.rb:30:in `instance_exec'
10: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/engine.rb:615:in `block in <class:Engine>'
9: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/engine.rb:615:in `each'
8: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/engine.rb:616:in `block (2 levels) in <class:Engine>'
7: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/engine.rb:651:in `load_config_initializer'
6: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/notifications.rb:166:in `instrument'
5: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-4.2.11/lib/rails/engine.rb:652:in `block in load_config_initializer'
4: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:268:in `load'
3: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:240:in `load_dependency'
2: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:268:in `block in load'
1: from /Users/macbook/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/activesupport-4.2.11/lib/active_support/dependencies.rb:268:in `load'
/Users/macbook/Desktop/develop/rails-projects/audiogon-staging/config/initializers/aws.rb:3:in `<top (required)>': Must set AWS_ACCESS_KEY_ID environment variable (RuntimeError)
所以我必须像错误所说的那样设置AWS_ACCESS_KEY_ID environment variable。
所以项目的config/initializers/aws.rb 文件如下所示:
Aws.config.update({
region: 'us-east-1',
access_key_id: (ENV['AWS_ACCESS_KEY_ID'] or raise "Must set AWS_ACCESS_KEY_ID environment variable"),
secret_access_key: (ENV['AWS_SECRET_ACCESS_KEY'] or raise "Must set AWS_SECRET_ACCESS_KEY environment variable")
})
他们的 config/enviroments/production.rb 有这个:
config.zaius_aws_access_key_id = 'SomeLongStringOFkey'
config.zaius_aws_secret_access_key = 'TheseAreNotRealJustExamples'
将这些复制到 config/enviroments/development.rb 可以完成这项工作吗?
我不想将密钥存储在我的 bash/linux 环境中,我想在我的 rails 项目中设置它们,那么我将密钥/凭据放在哪里(在项目中)。我还不错使用rails,但我对配置和设置的经验很少。我只是想让项目运行起来,这样我就可以继续工作了。
谢谢你
【问题讨论】:
-
正在查看是否有 Audiogon API 的文档并偶然发现了您的问题。是否存在此类信息?
标签: ruby-on-rails amazon-web-services configuration environment-variables