Charlie Merrill
Charlie Merrill

Reputation: 3

Missing required arguments: aws_access_key_id, aws_secret_access_key (ArgumentError)

While trying to run rake db:create for the first time, I keep getting the error Missing required arguments: aws_access_key_id, aws_secret_access_key (ArgumentError)

Other people have posted this question and the response has been to look in the carrierwave.rb file, but my repository does not have this file. Inside of fog.rb I have:

CarrierWave.configure do |config|

  config.fog_provider = 'fog/aws'

    config.fog_credentials = {
       provider:              'AWS',                     # required
       region:                ENV["AWS_REGION"],               # optional, defaults to 'us-east-1'
       aws_access_key_id:     ENV["AWS_ACCESS_KEY_ID"],  
       aws_secret_access_key: ENV["AWS_SECRET_KEY"] 

       #,host:                  's3.example.com',             # optional, defaults to nil
       #endpoint:              'https://s3.example.com:8080' # optional, defaults to nil
       }
  if Rails.env.development? || Rails.env.test?
   config.fog_directory  = 'policeboard-staging'                          # required
  end

  if Rails.env.production?
     config.fog_directory = 'policeboard-production'
  end

   config.fog_public     = true    # optional, defaults to true
   config.fog_attributes = { 'Cache-Control' => "max-age=#{365.day.to_i}" } # optional, defaults to {}
end

Here is the error log:

/usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/fog-core-1.42.0/lib/fog/core/service.rb:244:in `validate_options': Missing required arguments: aws_access_key_id, aws_secret_access_key (ArgumentError)
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/fog-core-1.42.0/lib/fog/core/service.rb:268:in `handle_settings'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/fog-core-1.42.0/lib/fog/core/service.rb:98:in `new'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/fog-core-1.42.0/lib/fog/core/services_mixin.rb:16:in `new'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/fog-core-1.42.0/lib/fog/storage.rb:27:in `new'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/bundler/gems/carrierwave-1dbc8be0bb8c/lib/carrierwave/uploader/configuration.rb:123:in `eager_load_fog'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/bundler/gems/carrierwave-1dbc8be0bb8c/lib/carrierwave/uploader/configuration.rb:136:in `fog_credentials='
    from /Users/CharlieMerrill/code/policeboard/config/initializers/fog.rb:6:in `block in <top (required)>'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/bundler/gems/carrierwave-1dbc8be0bb8c/lib/carrierwave/uploader/configuration.rb:158:in `configure'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/bundler/gems/carrierwave-1dbc8be0bb8c/lib/carrierwave.rb:14:in `configure'
    from /Users/CharlieMerrill/code/policeboard/config/initializers/fog.rb:2:in `<top (required)>'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:268:in `load'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:268:in `block in load'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:268:in `load'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/engine.rb:652:in `block in load_config_initializer'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/notifications.rb:166:in `instrument'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/engine.rb:651:in `load_config_initializer'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/engine.rb:616:in `block (2 levels) in <class:Engine>'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/engine.rb:615:in `each'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/engine.rb:615:in `block in <class:Engine>'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/initializable.rb:30:in `instance_exec'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/initializable.rb:30:in `run'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/initializable.rb:55:in `block in run_initializers'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:226:in `block in tsort_each'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:420:in `block (2 levels) in each_strongly_connected_component_from'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:429:in `each_strongly_connected_component_from'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:419:in `block in each_strongly_connected_component_from'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/initializable.rb:44:in `each'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/initializable.rb:44:in `tsort_each_child'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:413:in `call'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:413:in `each_strongly_connected_component_from'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:347:in `block in each_strongly_connected_component'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:345:in `each'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:345:in `call'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:345:in `each_strongly_connected_component'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:224:in `tsort_each'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/tsort.rb:203:in `tsort_each'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/initializable.rb:54:in `run_initializers'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/railties-4.2.0/lib/rails/application.rb:352:in `initialize!'
    from /Users/CharlieMerrill/code/policeboard/config/environment.rb:5:in `<top (required)>'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:274:in `require'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:274:in `block in require'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/activesupport-4.2.0/lib/active_support/dependencies.rb:274:in `require'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/spring-1.7.2/lib/spring/application.rb:92:in `preload'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/spring-1.7.2/lib/spring/application.rb:143:in `serve'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/spring-1.7.2/lib/spring/application.rb:131:in `block in run'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/spring-1.7.2/lib/spring/application.rb:125:in `loop'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/spring-1.7.2/lib/spring/application.rb:125:in `run'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/gems/2.2.0/gems/spring-1.7.2/lib/spring/application/boot.rb:19:in `<top (required)>'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /usr/local/opt/rbenv/versions/2.2.5/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from -e:1:in `<main>'

Upvotes: 0

Views: 743

Answers (1)

jdgray
jdgray

Reputation: 1983

Check out the error message you are seeing:

Missing required arguments: aws_access_key_id, aws_secret_access_key

It looks like you have not set those ENV variables: ENV["AWS_ACCESS_KEY_ID"] and ENV["AWS_SECRET_KEY"].

You can use figaro to help. Check out that repository and include it in you Gemfile. Then follow the installation instructions and it will help you set up your ENV variables in the application.yml file. Make sure you do not push these variables to a public repository.

You will also have to setup these ENV variables on whichever platform you are using to host.

Also check out this comparable SO Question for additional help.

Upvotes: 1

Related Questions