Reputation: 892
I am running into an error attempting to run the ElasticBeanstalk CLI tools on Mac OSX. I have been troubleshooting path issues and hope someone can shed some light. Here is my set up.
I am running Mac OS X El Capital 10.11.6, and I have manually installed Python 3.4 (via the download installer on python.org). I can see that it is installed correctly in /Library/Frameworks/Python.frameworks/Versions
. Commands beginning with python3
work as expected. I have also installed the the AWS ElasticBeanstalk CLI tools by running sudo pip3 install --upgrade awsebcli
and can confirm it is located in the /Users/myuser/Library/Python/3.4/lib/python/site-packages/
directory.
I have experimented with modifying my ~/.bash_profile
, as well as removing it. When I run echo $PATH
, here is my output:
/Users/myuser/Library/Python/3.4/lib/python/site-packages/ebcli/:
/Library/Frameworks/Python.framework/Versions/3.4/lib/python/site-packages:
/Library/Frameworks/Python.framework/Versions/3.4/bin:
/Users/myuser/.rvm/gems/ruby-2.2.4/bin:
/Users/myuser/.rvm/gems/ruby-2.2.4@global/bin:
/Users/myuser/.rvm/rubies/ruby-2.2.4/bin:
/usr/local/bin:
/usr/bin:
/bin:
/usr/sbin:
/sbin:
/opt/X11/bin:
/usr/local/git/bin:
/Users/myuser/.rvm/bin
Here is my ~/.bash_profile
# Load the default .profile
[[ -s "$HOME/.profile" ]] && source "$HOME/.profile"
# Load RVM into a shell session *as a function*
#[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
# Setting PATH for Python 3.4
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.4/bin:${PATH}"
# Setting PATH for Python 3.4 site packages
PATH="/Library/Frameworks/Python.framework/Versions/3.4/lib/python/site-packages:${PATH}"
PATH="/Users/myuser/Library/Python/3.4/lib/python/site-packages/ebcli/:${PATH}"
export PATH
Upvotes: 21
Views: 26347
Reputation: 11
In Sonoma macOS 14 Uninstall from pip if you did
pip3 uninstall awsebcli
And then
brew install awsebcli
brew link --overwrite aws-elasticbeanstalk
eb --version
Upvotes: 0
Reputation: 892
After a lot more trial and error, I finally got this working. Here are the steps I took.
Installed the AWS CLI tools for Python 3+.
pip3 install awscli
Uninstalled the EB CLI for /System/Library/Python
.
pip3 uninstall awsebcli
Uninstalled the EB CLI for /Library/Python
.
pip3 uninstall awsebcli
Installed the EB CLI for /Library/Python
with pip
.
pip3 install awsebcli
Removed the paths to the site packages directories from my ~/.bash_profile
.
Added the following to my ~/.bash_profile
.
# Setting the path for Python 3.4 PATH="/Library/Frameworks/Python.framework/Versions/3.4:${PATH}" export PATH
Opened a new terminal window. (Can also run source ~/.bash_profile
).
Changed into the project directory.
Ran eb --version
and got the following output:
EB CLI 3.9.0 (Python 3.4.4)
I realize it's uncool to post one's own answer, but hopefully my trial and error will be helpful to someone else with messed up paths.
Upvotes: 33
Reputation: 11
I had the same issue. Do not run "pip install awsebcli --upgrade --user" when you install it for the first time! Run "pip install awsebcli" instead.
Steps to fix it:
After all above steps "eb --version" should display the correct version with no errors.
Upvotes: 1
Reputation: 1
I get this warning when reinstall awsebcli: WARNING: The scripts eb and ebp are installed in '/Users//Library/Python/3.8/bin' which is not on PATH.
In this case just add below path into your ~/.bash_profile is working fine.
export PATH=/Users/<you>/Library/Python/3.8/bin:$PATH
Upvotes: 0
Reputation: 11650
Homebrew Solution
When upgrading to macOS Big Sur, my eb
cli command stopped working. The shebang line in my /usr/local/bin/eb
file was referencing an old version of python that got blown away with the os upgrade.
I upgraded and re-linked the awsebcli
and all is now working again.
brew upgrade awsebcli
brew link --overwrite aws-elasticbeanstalk
eb --version
Upvotes: 1
Reputation: 2013
I had the same problem, I followed the instructions provided on aws official doc and it worked.
git clone https://github.com/aws/aws-elastic-beanstalk-cli-setup.git
./aws-elastic-beanstalk-cli-setup/scripts/bundled_installer
echo 'export PATH="/home/<YOUR_USERNAME>/.ebcli-virtual-env/executables:$PATH"' >> ~/.bash_profile && source ~/.bash_profile
Then eb --version
gave the expected output :
EB CLI 3.15.3 (Python 3.7.2)
Upvotes: 3
Reputation: 221
This did it for me on Mac:
brew install awsebcli
From: https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-install-osx.html
Upvotes: 22
Reputation: 1591
Was having Zsh, this is what worked for me. Installed the latest python package from the main python website, and then:
export PATH=/Library/Frameworks/Python.framework/Versions/3.6/bin:$PATH
And setting the profile to
$ source ~/.zshrc
Installed, pip3 install awscli
and pip3 install awsebcli
Check version to verify:
eb --version // EB CLI 3.12.4 (Python 3.6.4)
Hope this helps.
Upvotes: 1
Reputation: 4817
I faced the same problem. Just upgrading the awsebcli can help : pip install --upgrade awsebcli
Upvotes: 10