загрузить хромдрайвер в AWS лямбда-слой (Ruby 2.5) - PullRequest
0 голосов
/ 20 января 2020

Я попытался загрузить AWS Lambda Layer, чтобы загрузить chromedriver в пределах 50 МБ. но это не сработало .. (загрузка с помощью chromedriver zip packege работает, но если я проверю директорию lambda, она не может быть найдена.)

def test(event:, context:)
    p Dir["/opt/**/*.*"]
end
=>
[
  "/opt/lib/ascii_and_mic.so",
  "/opt/lib/cyrillic_and_mic.so",
  ...
  (but not found chromedriver zip package)
]

кто-нибудь знает, как загрузить chromedriver в AWS Lambda Слой?

  • PS: AWS Лямбда основана Ruby 2.5

Ответы [ 3 ]

0 голосов
/ 20 января 2020

Убедитесь, что загружаемый почтовый индекс соответствует следующей структуре и пути

Ruby – ruby/gems/2.5.0 (GEM_PATH), ruby/lib (RUBY_LIB)

Более подробную информацию можно найти здесь - https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html

См. Включение зависимостей библиотеки в раздел Layer

0 голосов
/ 16 февраля 2020

Для создания архива для слоя сделайте следующее:

bundle install --path vendor/bundle
cd vendor/bundle
mkdir ruby/gems
mv ruby/2.5.0 ruby/gems/
zip -r layer.zip ruby/gems/2.5.0/
0 голосов
/ 20 января 2020

Как насчет использования gem webdrivers ?

Он автоматически загружает нужную версию chromedriver (или любой драйвер, который вам нужен для вашего браузера).

...