我正在尝试将python-ldap与AWS Lambda一起使用。我从https://pypi.python.org/pypi/python-ldap
下载了tarball和使用lambda(lambda_function.py)的代码
ldap_dir -> ldap_query -> Lib -> ldap folder
ldap_dir -> lambda_function.py
并将zip上传到Lambda。
我的目录结构是
box
我错过了什么吗?
答案 0 :(得分:4)
python-ldap构建于本机OpenLDAP库之上。这个article - 尽管与python ldap模块无关 - 描述了如何捆绑具有本机依赖性的Python包。
这个概要如下:
yum install -y gcc openldap-devel
virtualenv env
env/bin/activate
pip install --upgrade pip
pip install python-ldap
lambda.py
:
import os
import subprocess
libdir = os.path.join(os.getcwd(), 'local', 'lib')
def handler(event, context):
command = 'LD_LIBRARY_PATH={} python ldap.py'.format(libdir)
subprocess.call(command, shell=True)

ldap.py
:
import ldap
print ldap.PORT

ldap.zip
:
zip -9 ~/ldap.zip ldap.py
zip -9 ~/ldap.zip lambda.py
cd env/lib/python2.7/site-packages
zip -r9 ~/ldap.zip *
cd ../../../lib64/python2.7/site-packages
zip -r9 ~/ldap.zip *

我希望这会有所帮助。