Принудительно использовать бессерверную лямбда-функцию boto3, установленную в venv, вместо той, которая уже доступна на сервере AWS

#amazon-web-services #api #aws-lambda #boto3 #serverless

#amazon-web-services #API #aws-lambda #boto3 #бессерверная

Вопрос:

Я сталкиваюсь с проблемами с boto3 (1.9.42), который легко поставляется с AWS, который выходит из строя при запуске определенных команд. Но при локальном запуске скрипта такая же проблема не возникает, потому что локально установленный boto3 имеет версию 1.9.118, в то время как aws поставляется с 1.9.42.

 client_api = boto3.client(service_name='apigatewaymanagementapi', endpoint_url=endpoint_url)
[ERROR] UnknownServiceError: Unknown service: 'apigatewaymanagementapi
  

Я знаю, что нет прямого способа заменить boto3 в aws. Есть ли какой-либо способ развернуть локальный boto3 в aws и использовать модуль из aws lambda functions.

Комментарии:

1. Если вы упакуете его в zip-файл развертывания, точно так же, как вы бы упаковали любую другую библиотеку, от которой зависит ваша лямбда-функция, тогда она будет использовать эту версию.

2. Как мне упаковать boto3 в zip-файл развертывания? Я использую docker для внешних зависимостей @MarkB

3. docs.aws.amazon.com/lambda/latest/dg/…