1

I deployed a python lambda function through server less framework. Installed pymysql through pip. My handler info is : dynamodbtoauroradb/aurora-data-management/aurora-data-management.handler

enter image description here

I get this error: Unable to import module 'dynamodbtoauroradb/aurora-data-management/aurora-data-management': No module named 'pymysql'

Not sure where the mistake is.

Prasanna Nandakumar
  • 4,295
  • 34
  • 63

2 Answers2

1

There is a chance that pymysql is there in your system packages. So when you built the virtualenvironment, it used the system package.

Create a clean virtualenv using

virtualenv --no-site-packages envname

Or else you can use the current one, with

pip install pymysql --no-deps --ignore-installed
kmcodes
  • 807
  • 1
  • 8
  • 20
1

Use the plugin serverless-python-requirements with docker.

This will package all your python virtual env dependencies into your serverless package.

See this answer for more details

GWed
  • 15,167
  • 5
  • 62
  • 99