db:migrate gives ArgumentError: Missing required arguments: aws_secret_access_key
db:migrate gives ArgumentError: Missing required arguments: aws_secret_access_key
每次我尝试 运行 db:migrate
或 heroku run console
,我得到 ArgumentError: Missing required arguments: aws_secret_access_key
我已经为 AWS_ACCESS_KEY_ID
和 AWS_SECRET_ACCESS_KEY. Afterwards I run heroku config and see those two and the
S3_BUCKETcorrect. Then I run
heroku 运行 console 完成了 heroku config:set
,我得到了错误。
我还使用了我的 IAM management 控制台,并为我的用户提供了 AmazonS3FullAccess
策略。虽然这没有任何作用。
我也在使用 figaro
gem 中的 config/application.yml
来存储我的密钥,但这也没有什么不同。
我不知道如何解决这个问题,有人知道该知道什么吗?
carrierwave.rb:
if Rails.env.production?
CarrierWave.configure do |config|
config.root = Rails.root.join('tmp') # adding these...
config.cache_dir = 'carrierwave' # ...two lines
config.fog_credentials = {
# Configuration for Amazon S3
:provider => 'AWS',
:aws_access_key_id => ENV['S3_ACCESS_KEY'],
:aws_secret_access_key => ENV['S3_SECRET_KEY'],
:region => 'us-west-2',
:host => 's3.example.com',
:endpoint => 'https://s3.example.com:8080'
}
config.fog_directory = ENV['S3_BUCKET']
config.fog_public = false # optional, defaults to true
config.fog_attributes = {'Cache-Control'=>'max-age=315576000'} # optional, defaults to {}
end
end
您已设置环境变量 AWS_ACCESS_KEY_ID
和 AWS_SECRET_ACCESS_KEY
,但您的应用程序读取 S3_ACCESS_KEY
和 S3_SECRET_KEY
环境变量。
每次我尝试 运行 db:migrate
或 heroku run console
,我得到 ArgumentError: Missing required arguments: aws_secret_access_key
我已经为 AWS_ACCESS_KEY_ID
和 AWS_SECRET_ACCESS_KEY. Afterwards I run heroku config and see those two and the
S3_BUCKETcorrect. Then I run
heroku 运行 console 完成了 heroku config:set
,我得到了错误。
我还使用了我的 IAM management 控制台,并为我的用户提供了 AmazonS3FullAccess
策略。虽然这没有任何作用。
我也在使用 figaro
gem 中的 config/application.yml
来存储我的密钥,但这也没有什么不同。
我不知道如何解决这个问题,有人知道该知道什么吗?
carrierwave.rb:
if Rails.env.production?
CarrierWave.configure do |config|
config.root = Rails.root.join('tmp') # adding these...
config.cache_dir = 'carrierwave' # ...two lines
config.fog_credentials = {
# Configuration for Amazon S3
:provider => 'AWS',
:aws_access_key_id => ENV['S3_ACCESS_KEY'],
:aws_secret_access_key => ENV['S3_SECRET_KEY'],
:region => 'us-west-2',
:host => 's3.example.com',
:endpoint => 'https://s3.example.com:8080'
}
config.fog_directory = ENV['S3_BUCKET']
config.fog_public = false # optional, defaults to true
config.fog_attributes = {'Cache-Control'=>'max-age=315576000'} # optional, defaults to {}
end
end
您已设置环境变量 AWS_ACCESS_KEY_ID
和 AWS_SECRET_ACCESS_KEY
,但您的应用程序读取 S3_ACCESS_KEY
和 S3_SECRET_KEY
环境变量。