Я работаю над учебником в объявлении-ruby-support-for-aws-lambda , и у меня возникают проблемы с поиском Lambda для определения зависимостей Ruby.
У меня естьполучил код урока просто скопировать / вставить туда.Пока ничего необычного.
require 'aws-record'
class DemoTable
include Aws::Record
set_table_name ENV[‘DDB_TABLE’]
string_attr :id, hash_key: true
string_attr :body
end
def put_item(event:,context:)
body = event["body"]
item = DemoTable.new(id: SecureRandom.uuid, body: body)
item.save! # raise an exception if save fails
item.to_h
end
У меня есть Gemfile, содержащий aws-record
, и я запускаю и bundle install
и bundle install --deployment
.
Если я вЛямбда-консоль, просматривая раздел «Функциональный код», показывает, что в проекте есть каталог vendor и присутствует гем aws-record
.
Я использовал CLI sam
для упаковки и развертывания кодаи кажется как будто все работает.
Но когда я создаю и запускаю тест, я получаю следующую ошибку.
{
"errorMessage": "cannot load such file -- aws-record",
"errorType": "Init<LoadError>",
"stackTrace": [
"/var/lang/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'",
"/var/lang/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'",
"/var/task/hello_ruby_record.rb:1:in `<top (required)>'",
"/var/lang/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'",
"/var/lang/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'"
]
}
На этом этапе все кажется простымприложения, так что я озадачен тем, что мне не хватает.У кого-нибудь есть предложения по устранению неполадок?