如何通过Secrets.yml初始化Cloudinary?

时间:2014-12-29 19:50:40

标签: ruby-on-rails-4 cloudinary

我正在使用Cloudinary来托管和管理我的rails 4+ app的图片。其api_secretapi_keys和其他配置使用cloudinary.yml文件夹中的config文件放入生产环境。

我希望使用rails 4+中提供的cloudinary.yml文件实用程序将环境变量(各种密钥和密钥)移植到生产环境中,而不是单独的secrets.yml文件。意图是将它全部保存在我的项目的一个地方,只需使用常规的Capistrano配方进行部署。

我想知道是否有办法在secrets.yml上写这样的话:

production:
  CL_CLOUD_NAME: MyAppName
  CL_API_KEY: 'the_key'
  CL_API_SECRET: the_secret
  CL_ENHANCE_IMAGE_TAG: true/false
  CL_STATIC_IMAGE_SUPPORT: true/false
  CL_STATIC_SECURE: true/false

并使用$ cap production deploy调用?


[编辑]老问题:

我想知道是否有办法在ROOT/config/initializers/cloudinary.rb中使用初始值设定项,我可以在其中放置这样的行:

Cloudinary.configure do |c|
  c.cloud_name = Rails.application.secrets.CL_CLOUD_NAME
  c.api_key = Rails.application.secrets.CL_API_KEY
  c.api_secret = Rails.application.secrets.CL_API_SECRET
  c.secure = Rails.application.secrets.CL_STATIC_SECURE
end

1 个答案:

答案 0 :(得分:2)

您可以使用:

Cloudinary.config do |c|
 c.cloud_name = XXX
end