Включение библиотеки ODBC в развертывание AWS Lambda Python

Я создал пакет развертывания для AWS Lambda, написанный на Python 2.7. В сценарии Python я использую pypyodbc для подключения к внешнему источнику данных, используя пользовательский DNS, который я настроил на своем локальном компьютере. Когда я пытаюсь развернуть пакет, я получаю следующую ошибку:

module initialization error: 'ODBC Library is not found. Is LD_LIBRARY_PATH set?'

Я создал пакет project-dir с помощью pip в виртуальной среде. Пакет устроен следующим образом:

/project-dir
  __init__.py
  PythonFileIWantToUse.py
  pypyodbc.py
  pypyodbc.pyc
  /boto
  /pypyodbc-1.3.3.dist-info
  /other modules, etc.

я пытался добавить

#Point Lambda to Required OBDC Directory os.environ['LD_LIBRARY_PATH'] = os.environ['LD_LIBRARY_PATH'] + ':' + '/var/task/'

на MainPythonIWantToUse.py над функцией lambda_handler и включая odbc32.lib в корневой каталог, но я получил ту же ошибку.

Любая идея, что мне нужно сделать? Я настроил локальный ODBC в Windows, но не уверен, какие файлы нужно разместить, чтобы среда Lambda Unix могла их найти.

Редактировать: я также пытался включить элементы UnixODBC в корневой каталог, но это не меняет результат.


person user2752159    schedule 17.05.2016    source источник
comment
Просто интересно, у вас когда-нибудь это работало ... Я тоже застрял.   -  person Ryan Jones    schedule 29.09.2016
comment
Я считаю, что вам нужно использовать драйверы Linux ODBC: см. здесь: stackoverflow.com/questions/33588262/   -  person Metoo    schedule 16.01.2017
comment
Эй, вы должны проверить функцию stackoverflow.com/questions/47682991/   -  person Carlochess    schedule 01.09.2018