Ошибка файла конфигурации Rails AWS - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь запустить эту задачу импорта из моего приложения heroku rails, которое подключается к AWS и получает CSV, но получает следующую ошибку (полная ошибка показана ниже):

ArgumentError: неверное количество аргументов (дано 1, ожидается 2..3)

Любая помощь будет принята с благодарностью.

Вот код в моем файле инициализаторов / aws.rb, куда я положил свои учетные данные:

Aws.config.update({
 region: 'us-east-2',
 credentials: Aws::Credentials.new(access_key_id: 
ENV['AWS_ACCESS_KEY_ID'], secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'])
})

Вот задание (в одном из моих граблей):

    desc "import for CSV to S3"
    task import: [:environment] do
     s3 = Aws::S3::Client.new(region:'us-east-2', credentials: credentials)
     File.open('nba_data.csv', 'wb') do |file|
      reap = s3.get_object({ bucket: 'nba-api', key: 'nba_data.csv'}, target: file)
      csv_text = File.read('nba_data.csv')
      csv = CSV.parse(csv_text, :headers => true)
      csv.each do |row|
       Player.create!(row.to_hash.except("id"))
    end
  end
end

Это полная ошибка консоли

Franks-MacBook-Air: nba_site frankburke $ heroku run rails player_query: импорт Запуск рельсов player_query: импорт на ⬢ protected-tundra-94123 ... up, run.3454 (бесплатно) рельсы прерваны! ArgumentError: неверное количество аргументов (задано 1, ожидается 2..3) /app/vendor/bundle/ruby/2.3.0/gems/aws-sdk-core-3.19.0/lib/aws-sdk-core/credentials.rb:7:in initialize' /app/config/initializers/aws.rb:4:in new ' /app/config/initializers/aws.rb:4:in <top (required)>' /app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.2/lib/active_support/dependencies.rb:287:in load ' /app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.2/lib/active_support/dependencies.rb:287:in block in load' /app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.2/lib/active_support/dependencies.rb:259:in load_dependency ' /app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.2/lib/active_support/dependencies.rb:287:in load' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/engine.rb:648:in блок в load_config_initializer ' /app/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.2/lib/active_support/notifications.rb:166:in instrument' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/engine.rb:647:in load_config_initializer ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/engine.rb:612:in block (2 levels) in <class:Engine>' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/engine.rb:611:in каждый ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/engine.rb:611:in block in <class:Engine>' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/initializable.rb:30:in instance_exec ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/initializable.rb:30:in run' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/initializable.rb:55:in блок в run_initializers ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/initializable.rb:44:in each' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/initializable.rb:44:in tsort_each_child ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/initializable.rb:54:in run_initializers' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/application.rb:352:in initialize! ' /app/config/environment.rb:5:in <top (required)>' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/application.rb:328:in require ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/application.rb:328:in require_environment!' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/application.rb:448:in блок в run_tasks_blocks ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/commands/rake_proxy.rb:14:in block in run_rake_task' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/commands/rake_proxy.rb:11:in run_rake_task ' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/commands/commands_tasks.rb:51:in run_command!' /app/vendor/bundle/ruby/2.3.0/gems/railties-5.0.2/lib/rails/commands.rb:18:in ' / app / bin / rails: 9: in require' /app/bin/rails:9:in ' Задачи: TOP => player_query: import => окружение (Смотрите полную трассировку, запустив задачу с --trace)

1 Ответ

0 голосов
/ 27 апреля 2018

можете ли вы попытаться изменить это ...

Aws.config.update({
 region: 'us-east-2',
 credentials: Aws::Credentials.new(access_key_id: 
ENV['AWS_ACCESS_KEY_ID'], secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'])
})

к этому

Aws.config.update({
 region: 'us-east-2',
 credentials: Aws::Credentials.new(ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'])
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...