AWS ElasticBeanstalk CLI в OS X: команда EB не найдена

У меня возникла ошибка при попытке запустить инструменты CLI ElasticBeanstalk на Mac OSX. Я искал пути устранения проблем и надеюсь, что кто-то может пролить свет. Вот моя настройка.

Я запускаю Mac OS X El Capital 10.11.6, и я установил вручную Python 3.4 (через установщик загрузки на python.org). Я вижу, что он правильно установлен в /Library/Frameworks/Python.frameworks/Versions. Команды, начинающиеся с python3 работают python3. Я также установил инструменты CLI для AWS ElasticBeanstalk, запустив sudo pip3 install --upgrade awsebcli и могу подтвердить, что он находится в каталоге /Users/myuser/Library/Python/3.4/lib/python/site-packages/.

Я экспериментировал с изменением моего ~/.bash_profile, а также его удаления. Когда я запускаю echo $PATH, вот мой вывод:

/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/[email protected]/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

Вот мой ~/.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

Ответы

Ответ 1

После намного большего количества проб и ошибок, я наконец получил эту работу. Вот шаги, которые я предпринял.

  1. Установлены инструменты AWI CLI для Python 3+. pip3 установить awscli
  2. Удален EB CLI для /System/Library/Python. Удалить удалять awsebcli
  3. Удален EB CLI для /Library/Python. Удалить удалять awsebcli
  4. Установлен EB CLI для /Library/Python с помощью pip. pip3 установить awsebcli
  5. Удалены пути к каталогам пакетов сайта из ~/.bash_profile.
  6. Добавлено следующее в мой ~/.bash_profile.

    # Setting the path for Python 3.4
    PATH="/Library/Frameworks/Python.framework/Versions/3.4:${PATH}"
    export PATH
    
  7. Открыл новое окно терминала. (Может также запускать source ~/.bash_profile).

  8. Изменен в каталоге проекта.
  9. Ran eb --version и получил следующий результат:

    EB CLI 3.9.0 (Python 3.4.4)
    

Я понимаю, что это нелогично, чтобы опубликовать свой собственный ответ, но, надеюсь, моя пробная версия и ошибка будут полезны кому-то еще с испорченными путями.

Ответ 3

Я столкнулся с такой же проблемой. Просто обновление awsebcli может помочь: pip install --upgrade awsebcli

Ответ 4

Имел Зш, это то, что сработало для меня. Установлен последний пакет python с основного сайта python, а затем:

export PATH=/Library/Frameworks/Python.framework/Versions/3.6/bin:$PATH

И установка профиля

$ source ~/.zshrc

Установлен, pip3 install awscli и pip3 install awsebcli

Проверьте версию, чтобы проверить:

eb --version // EB CLI 3.12.4 (Python 3.6.4)

Надеюсь это поможет.

Ответ 5

У меня возникла та же проблема, я следовал инструкциям, приведенным в официальном документе aws, и это сработало.

  1. git clone https://github.com/aws/aws-elastic-beanstalk-cli-setup.git
  2. ./aws-elastic-beanstalk-cli-setup/scripts/bundled_installer
  3. echo 'export PATH="/home/<YOUR_USERNAME>/.ebcli-virtual-env/executables:$PATH"' >> ~/.bash_profile && source ~/.bash_profile

Затем eb --version дал ожидаемый результат:

EB CLI 3.15.3 (Python 3.7.2)