On OSX I found that pip install boto
did not resolve the issue.
The problem was that python was not pointing to the pip installation.
export PYTHONPATH=/usr/local/lib/python2.7/site-packages
resolved this for me.
git aws.push: No module named boto
-
09-07-2023 - |
Question
i'm trying to follow the tutorial: deploy django on aws Elastic Beanstalk
when i'm doing the Step 6's substep 5:
git aws.push
I get a ImportError message:
(tryhasinenv)Lee-Jamess-MacBook-Pro:tryhasin h0925473$ git aws.push
Traceback (most recent call last):
File ".git/AWSDevTools/aws.elasticbeanstalk.push", line 21, in <module>
from aws.dev_tools import *
File "/Users/h0925473/tryhasin_root/tryhasin/.git/AWSDevTools/aws/dev_tools.py", line 5, in <module>
import boto
ImportError: No module named boto
I have no idea what to do. Can somebody tell me what's wrong?
Solution
OTHER TIPS
I solved this separately by running:
$ sudo easy_install pip
This uses the default python package installer to install PIP
$ sudo pip install boto
I needed Admin rights to add boto (I don't know if thats right or not).
Then ran $ eb start
Did you pip freeze > requirements.txt
after you ran pip install boto
?
You need to update your requirements.txt
after each time you install a new python package locally to ensure your AWS instance has all the required packages as well.
EDIT:
In case you aren't the one who wrote boto
in, you'll need to install it and then pip freeze it yourself.
Try running the following commands:
pip install boto
pip freeze > requirements.txt
git add .
git commit -m "Added boto"
git aws.push
I had a similar issue with Ansible and fixed it using:
sudo apt install python-boto
I am using python3. So I had to use the following command for PYTHONPATH
to point to site-packages dir
export PYTHONPATH=/usr/local/lib/python3.8/site-packages
If you're using ubuntu, try this out:-
sudo apt install python-boto3
Should work.