Импортировать модуль python в несколько AWS Lambdas

У меня есть пара функций Лямбды AWS. Все эти функции используют некоторые общие вспомогательные функции. Я разместил эти вспомогательные функции в отдельном файле helper_functions.py . Я хочу импортировать этот модуль во все мои функции AWS Lambda. Я не могу найти место для хранения этого модуля ( helper_functions.py ), поэтому, когда я helper_functions.py изменения в этом модуле, мне не нужно ничего менять в своих функциях Lambda.

Некоторые из вариантов, о которых я думал:

  1. Загрузите модуль на AWS S3, а затем загрузите его в каждую функцию Lambda в начале с S3 и с помощью функций. (если возможно)

  2. Написание некоторого сценария (который я еще не понял), который упаковывает модуль вместе с файлом Python функции Lambda в zip и загружает его на AWS Lambda

Пожалуйста, предложите лучшее решение для управления модулем и импортировать его более эффективным способом.

  • Генератор ссылок с использованием django или любого модуля python
  • Как я представляю и работаю с n-битовыми векторами в Python?
  • Как проверить, есть ли у stdin некоторые данные?
  • python install module apiclient
  • загрузить файл csv в numpy и получить доступ к столбцам по имени
  • Запись в новый файл, если он не существует, и добавление к файлу, если оно
  • Найти разность фаз между двумя (ангармоническими) волнами
  • Pythonic способ проверить, отсортирован ли список или нет.
  • One Solution collect form web for “Импортировать модуль python в несколько AWS Lambdas”

    Я долгое время боролся с этим. Вот мое решение (может быть, лучший способ):

    настройте свою вспомогательную функцию в своей файловой системе следующим образом:

    pathToSomewhere/my_helper/helper_functions.py pathToSomewhere/my_helper/__init__.py pathToSomewhere/setup.py

    Где __init__.py :

     from .helper_functions import * 

    и setup.py

     from setuptools import setup setup(name='my_helper', version='0.10000', description='My helper functions', url='http://github.com/user/example', license='Proprietary', author='Null', author_email='null@example.com', packages=['my_helper'], install_requires=['boto3'], zip_safe=False) 

    Теперь давайте my_helper . Из pathToSomewhere/ run:

     python setup.py sdist 

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

    Теперь давайте установим my_helper в виртуальную my_helper вашей лямбда-функции. Предположим, что ваша виртуальная среда называется worker_env

     ./worker-env/bin/pip install file://pathToSomewhere/my_helper 

    Теперь запишите worker-env и ваш фактический скрипт лямбды и загрузите это.

    Python - лучший язык программирования в мире.