ruby-on-rails - 在 `validate_options' 中:缺少必需的参数:aws_access_key_id、aws_secret_access_key (ArgumentError)
问题描述
一切都很棒。直到我检查了一个新分支,现在我得到了这个错误。我使用生成 application.yml 的 figaro 来存储 aws 凭证的 env 变量。我已经成功地能够部署到 heroku 并使用我的 aws 密钥将图片等上传到我的存储桶。然后我签出一个新分支和这个错误。我什至回到了旧分支,那里的一切都很好,这个错误不会消失。我很沮丧。我什至进入终端并执行 echo $aws_access_key_id 并且我没有得到零,我得到了访问密钥。有些东西没有加起来...
fog.rb
CarrierWave.configure do |config|
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: ENV['aws_access_key_id'],
aws_secret_access_key: ENV['aws_secret_access_key'],
region: 'us-east-1'
}
config.fog_directory = ENV['AWS_BUCKET']
if Rails.env.development? || Rails.env.test?
CarrierWave.configure do |config|
config.storage = :file
end
end
# Use AWS storage if in production
if Rails.env.production?
CarrierWave.configure do |config|
config.storage = :fog
end
end
end
应用程序.yml
aws_access_key_id: "key"
aws_secret_access_key: "key"
解决方案
推荐阅读
- visual-studio-code - 扩展代码中的异常:rejectUnauthorized 时出现“CERT_HAS_EXPIRED”错误:代理为 false
- r - 从 Benchmarking 包中设置 Profit.opt 函数
- usb - 如何找到使用特定芯片的 USB 集线器?(微芯片 USB2517)
- pipeline - 我如何告诉 Dagit(Dagster GUI)在现有的 Dask 集群上运行?
- salesforce - 提醒用户在帐户页面上输入相关记录的数据
- sql - 如何使新创建的对象的 id(主键)从某个值开始?
- gruntjs - 我可以在没有模块捆绑器的情况下使用 Babel 的 plugin-transform-runtime 吗?
- python - 从数据框的列中查找所有网站链接、分组和计数 - Python
- selenium-webdriver - 等待 iframe 在 Selenium 中完全加载
- azure-cosmosdb - Cosmos DB 复合索引最佳实践?