Я создал пакет развертывания для 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 в корневой каталог, но это не меняет результат.