fog / fog-riakcs

Module for the 'fog' gem to support RiakCS
https://www.riakcs.net
MIT License
2 stars 3 forks source link

aws_signature_version #2

Open hveini opened 8 years ago

hveini commented 8 years ago

I think the aws_signature_version defaults to version 4 now, making fog-riakcs module not working out of the box.

Luckily, the Ruby open class model allows local fix. I'm currently doing this before using:

#hack for aws_signature_version 2 (wihich is not an option)
module Fog
  module RiakCS
    class Provisioning < Fog::Service
      class Real
        def initialize(options = {})
          configure_uri_options(options)
          @riakcs_access_key_id     = options[:riakcs_access_key_id]
          @riakcs_secret_access_key = options[:riakcs_secret_access_key]
          @connection_options       = options[:connection_options] || {}
          @persistent               = options[:persistent]         || false
          @path_style               = options[:path_style]         || false

          @raw_connection = Fog::XML::Connection.new(riakcs_uri, @persistent, @connection_options)

          @s3_connection  = Fog::Storage.new(
            :provider              => 'AWS',
            :aws_access_key_id     => @riakcs_access_key_id,
            :aws_secret_access_key => @riakcs_secret_access_key,
            :host                  => @host,
            :port                  => @port,
            :scheme                => @scheme,
            :path_style            => @path_style,
            :connection_options    => @connection_options,
            :aws_signature_version => 2
          )
        end
      end
    end
  end
end

But, it would be good to have the aws_signature_version as an option.

Hannu

plribeiro3000 commented 8 years ago

Hey @hveini. Thank you for your feedback on this.

Would you be up to open a PR with the necessary changes?

Thanks!