如何使用Carrierwave自己的Openstack Swift安装?

时间:2012-08-11 08:33:22

标签: ruby-on-rails carrierwave fog openstack openstack-swift

我们在Rails 3.2.7项目中使用Carrierwave。目前我们正在迁移到我们自己的Openstack Swift安装,并希望继续使用Carrierwave。

通过查看Carrierwave文档,我可以看到它可以使用Fog gem与Rackspace一起使用。不过,我找不到任何文档如何使用Openstack Swift安装进行设置。

有没有办法在我自己的Openstack Swift安装中使用Carrierwave和Fog?

1 个答案:

答案 0 :(得分:1)

以下是我们解决此问题的方法:

Fog Gem没有本机支持使用Swift安装来处理存储。 我希望有一天会有。

但您可以使用“HP”作为Carrierwave的提供商。与Rackspace一样,HP-Storage基于Openstack Swift,支持使用Fog Gem处理存储。它并不完美,但有效:

CarrierWave.configure do |config|
  config.storage = :fog

  config.fog_credentials = {
    :provider => 'HP',
    :hp_secret_key => "swift_password",
    :hp_account_id => "swift_container",
    :hp_tenant_id => "swift_tenant_id'",
    :hp_auth_uri => "swift_url"
    :hp_use_upass_auth_style => true
  }
  config.fog_directory = "swift_container"
end