Aws-cli: Установите aws-cli с помощью Homebrew

Созданный на 29 мар. 2014  ·  42Комментарии  ·  Источник: aws/aws-cli

Моя формула awscli была объединена и официально доступна с Homebrew .

Было бы полезно добавить Homebrew в качестве варианта установки в README.

В качестве предложения примерно так:

Homebrew в Mac OS X

aws-cli также можно установить с помощью диспетчера пакетов Homebrew в Mac OS X:

brew install awscli

Если вам нужна разрабатываемая версия aws-cli:

brew install awscli --HEAD

После установки brew предоставит инструкции по завершению установки и где найти примеры использования aws-cli.

feature-request installation

Самый полезный комментарий

Согласовано. Homebrew привлекает гораздо более широкую аудиторию, чем pip.

Все 42 Комментарий

Согласовано. Homebrew привлекает гораздо более широкую аудиторию, чем pip.

История выпусков довольно хороша, но все же немного неоднородна. https://github.com/Homebrew/homebrew/commit/master/Library/Formula/awscli.rb

Это должно быть сделано официально

Кто-нибудь знает, как использовать pip для установки awscli после установки Python с Homebrew? Кажется, что файлы пути где-то идут не так, поскольку он ищет исполняемый файл aws-cli в / usr / local / bin /, но если вы это сделаете

sudo pip install awscli 

вместо этого помещает его в / usr / bin /. Получила следующую ошибку:

Traceback (most recent call last):
   File "/usr/local/bin/aws", line 15, in <module>
   import awscli.clidriver
ImportError: No module named awscli.clidriver

Просто ищу некоторую справочную информацию, если кто-то не прочь ответить.

Что и что может сделать команда AWS CLI, чтобы обеспечить синхронизацию домашних выпусков с последними выпусками CLI? Обычно мы выпускаем 1-2 раза в неделю. Если мы официально поддерживаем это, нам нужно убедиться, что у нас будет такая же периодичность выпуска, как и у других наших обычных каналов выпуска (pip, комплектный установщик, MSI).

И если я правильно помню, какая-то задержка будет, несмотря ни на что, потому что PR для обновленных версий CLI по-прежнему нужно объединять в главную ветку homebrew для каждого выпуска правильно?

Опять же, просто пытаюсь понять, в чем дело.

@ iz2140 Я бы дважды проверил, какой пункт вы используете. Если вы устанавливаете Python с Homebrew, у вас должен быть установлен pip в /usr/local/bin/pip . Это должно установить AWS CLI в /usr/local/bin/ .

@jamesls В итоге я просто удалил AWSCLI с помощью pip и переустановил с помощью Homebrew, и все оказалось в порядке. Спасибо хоть!

Я также хотел бы увидеть официальный вариант установки Homebrew.

Если кто-то не прочь ответить на некоторые из вопросов, которые я здесь задал, мы можем изучить этот вариант дальше. Пометка как запрос функции на данный момент.

Процесс участия Homebrew объясняется здесь: https://github.com/Homebrew/homebrew/blob/master/CONTRIBUTING.md

Я ожидал, что диалог с командой Homebrew после запроса на включение будет лучшим местом для решения ваших вопросов о сроках.

Учитывая, что я использовал ту же версию aws-cli от Homebrew, я не уверен, что мне нужно что-то большее, чем еженедельное обновление.

Удар

@jamesls благодарим вас за ответ. Думаю, я нашел ответы на ваши вопросы.

Для практически мгновенной синхронизации просто используйте URL-адрес, например:

brew install https://s3.amazonaws.com/homebrew/formulae/aws-cli.rb

Запустите man brew чтобы открыть страницу руководства brew (1) , и посмотрите УКАЗАНИЯ ФОРМУЛ .

В противном случае да, скорее всего, будет некоторая задержка: согласно « Как открыть запрос на вытягивание Homebrew (и объединить его)» , «[сопровождающие Homebrew] обычно отвечают на все PR в течение пары дней».

Примечание. Если вы решите добавить новую формулу в Homebrew Core , назовите формулу aws-cli , а не awscli , потому что она называется aws-cli на Github и в книге рецептов формул Homebrew: Быстрый Word on Naming гласит: «Назовите формулу так, как будто проект продвигает продукт. Итак, это pig-config , а не pkgconfig ; sdl_mixer , а не ssl-mixer или sdlmixer . " То же самое и с именем пакета pip. См. №2090.

Ниже приведены еще несколько ссылок, которые я нашел в этом документе, как создать и обновить формулу Homebrew.

Это ответ на ваши вопросы?

С наилучшими пожеланиями и удачи в официальной поддержке установки AWS CLI через Homebrew!

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

К вашему сведению, там есть несколько мертвых ссылок @mattdipasquale

Спасибо, @dijonkitchen. Думаю, я их всех оживил.

Если команда AWS собирается поддерживать собственный рецепт пива, они могут пойти еще дальше и создать кран.

Это объясняет значение brew tap . https://github.com/Homebrew/brew/blob/master/docs/brew-tap.md

По сути, это означает, что эта учетная запись github aws создаст репозиторий с названием [что-то вроде] «homebrew-aws» и поместит туда рецепт.

@jamesls должен быть знаком с этой концепцией, поскольку он сделал это для jmespath на https://github.com/jmespath/homebrew-jmespath
Итак, чтобы ответить на его вопрос выше, я предлагаю либо добавить формулу в его jmespath / homebrew-jmespath, либо создать репозиторий aws / homebrew-aws. Затем обновите ссылку на brew на http://docs.aws.amazon.com/cli/latest/userguide/installing.html#choosing -an-installation-method, чтобы описать выполнение либо ...

brew tap jmespath/jmespath
brew install jmespath/jmespath/awscli

...или...

brew tap aws/aws
brew install aws/aws/awscli

... как официальный метод установки. Если вы этого не сделаете, то, к лучшему или худшему, https://github.com/Homebrew/homebrew-core/blob/master/Formula/awscli.rb - это то, что большинство пользователей Mac собираются установить, потому что это выглядит чертовски официальный ...

$ brew info awscli
awscli: stable 1.11.5 (bottled), HEAD
Official Amazon AWS command-line interface
https://aws.amazon.com/cli/
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/awscli.rb

@mattdipasquale ваш https://s3.amazonaws.com/homebrew/formulae/aws-cli.rb URL-адрес, указанный выше, кажется, имеет проблемы.

$ curl -s https://s3.amazonaws.com/homebrew/formulae/aws-cli.rb | xmllint --format -
<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>AllAccessDisabled</Code>
  <Message>All access to this object has been disabled</Message>
  <RequestId>636AE6C270CD649F</RequestId>
  <HostId>y8HMrOTA5l7SMOQM5uh0xZ5tdCumNk8td0RPLJh53kVHypP+K1s7OD8pJLSlcs70rsfzTDGEXDg=</HostId>
</Error>

@RichardBronosky Я думаю, что @mattdipasquale имел в виду это просто как пример.

Еще один +1 за добавление предложенной информации в README. Похоже, что по большей части они отслеживали достаточно внимательно. Я использую их формулу, чтобы поддерживать aws-cli в актуальном состоянии, и, похоже, это не проблема.

Быстрый анализ временных дельт между выпусками из команды AWS и Homebrew сопровождающих здесь , наряду с сутью из Hacky бит ,

Есть ли в настоящее время какие-либо причины не использовать Homebrew поверх pip для установки и обслуживания инструментов командной строки AWS?

Является ли процедура переноса существующей установки на основе pip на Homebrew простым делом

pip uninstall awsebcli
pip uninstall awscli
brew install awscli
brew install awsebcli

или есть еще кое-что?

@orome Должно сработать, кажется, пакет homebrew довольно

@JordonPhillips : И просто чтобы подтвердить:

  1. в этих двух подходах нет ничего разного (по крайней мере, не намеренно; например, пути, расположение настроек и т. д.); а также
  2. в перечисленных выше шагах pip uninstall ... нет ничего деструктивного (я не потеряю настройки или сертификаты).

Верный?

Возможно, это не проблема, но если и python (2), и python3 установлены через brew, установка awscli также выполняется через brew по умолчанию для сборки python 2.7. Я что-то упустил в настройке моей PATH? Есть ли способ заставить brew install awscli использовать сборку python3?

brew install awscli устанавливает 1.11.80 (я полагаю, разработка) по сравнению с 1.10.38, которую я считаю стабильной версией. см .: https://aws.amazon.com/releasenotes/CLI?browse=1

brew install awscli --HEAD приводит к той же версии.

Из сообщения в верхней части этой темы я ожидал, что первая установит 1.10.38, а установка --HEAD приведет к 1.11.80. Любые разъяснения приветствуются.

примечание: переместите это в homebrew

@jdhom Можете ли вы дать ссылку на продолжение этой проблемы на Homebrew?

У меня тот же вопрос, что и у @sksea :

Возможно, это не проблема, но если и python (2), и python3 установлены через brew, установка awscli также выполняется через brew по умолчанию для сборки python 2.7. Я что-то упустил в настройке моей PATH? Есть ли способ, чтобы brew install awscli использовал сборку python3?

Я тоже хочу это знать -

Возможно, это не проблема, но если и python (2), и python3 установлены через brew, установка awscli также выполняется через brew по умолчанию для сборки python 2.7. Я что-то упустил в настройке моей PATH? Есть ли способ, чтобы brew install awscli использовал сборку python3?

Подумав об этом еще раз, я считаю, что сейчас правильный подход - использовать микроконтейнер докеров с установленным awscli и использовать этот пакет для удаленного управления этим контейнером, который будет содержать предустановленную версию официального cli.

@ manik-chopra @sksea Я не нашел способа заставить awscli использовать python3 через brew, но альтернативой является использование встроенного установщика . Вы можете использовать в своем awscli сборку python3. На шаге 3 есть инструкции по использованию конкретной версии Python. Это не домашнее решение, но если вам абсолютно необходимо это сделать, это один из способов.

Для связанного установщика требуется: Python 2 версии 2.6.5+ или Python 3 версии 3.3+, и это не то, как пакет Homebrew работает AFAIK. В результате неясно, является ли использование встроенного установщика предложением для решения этой проблемы или просто временным решением.

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

Сопровождающие формулы Homebrew обновили ее в среднем в течение 3 дней после выпуска новой версии awscli, так как этот запрос был сделан в 2014 году; высказал @jamesls по поводу синхронизации. Создание этого с помощью Python 3 и Python 2 - это вопрос для Homebrew, а не для команды awscli.

Я +2 к этому. Это кажется немного глупым, но это все еще витает в воздухе более трех лет после того, как спросили.

* Анализ доступен здесь ; дерьмовый код, который его здесь генерирует.

Это ключевой момент, который должен быть включен в Документы AWS в качестве поддерживаемого варианта. По сравнению с другими инструментами установка AWS CLI является многоступенчатой ​​и сложной для многих пользователей (не так уж и плохо, но не так просто, как brew install ).

Доброе утро!

Мы закрываем эту проблему здесь, на GitHub, в рамках перехода на UserVoice для запросов функций с использованием интерфейса командной строки AWS.

Это позволит нам предоставить вам самые важные функции, упростив поиск и поддержку наиболее важных для вас функций, не разбавляя разговор отчетами об ошибках.

В качестве краткого руководства по UserVoice (если вы еще не знакомы): после публикации идеи люди могут проголосовать за идеи, и команда продукта будет отвечать непосредственно на самые популярные предложения.

Мы импортировали существующие запросы функций из GitHub - поищите там эту проблему!

И не волнуйтесь, эта проблема все еще будет существовать на GitHub для будущих поколений. Поскольку это только текстовый импорт исходного сообщения в UserVoice, мы по-прежнему будем помнить о комментариях и обсуждениях, которые уже существуют здесь по проблеме GitHub.

GitHub останется каналом для сообщений об ошибках.

И снова эту проблему теперь можно найти, выполнив поиск по названию на: https://aws.uservoice.com/forums/598381-aws-command-line-interface.

-Команда разработчиков SDK и инструментов AWS

Эту запись, в частности, можно найти на UserVoice по адресу: https://aws.uservoice.com/forums/598381-aws-command-line-interface/suggestions/33168301-install-aws-cli-using-homebrew

🤣

Привет, @ASayre. Я понимаю, что это лишь малая часть вашей массовой миграции, и вы, вероятно, получаете много шума вокруг всего этого. Эта проблема может быть решена с помощью обновления README, и это уже сделано. Он ждал 3 года, пока кто-нибудь позаботится о том, чтобы сделать это обновление.

Удачи в ваших будущих начинаниях.

PR № 3193 создан для этого. Голосуйте за / приставайте! 😆

Основываясь на отзывах сообщества, мы решили возвращать запросы функций в проблемы GitHub.

Я просто потратил час на выполнение команд ruby, установку python / pip, попытки возиться с моими переменными PATH, но это все равно не сработало. Кто-то должен полностью удалить все содержимое на этой странице и просто заменить его на «запустить brew install awscli ».

Это сработало для меня на High Sierra:

sudo pip install awscli --ignore-installed six

Сайт uservoice, упомянутый выше, кажется мертвым: https://aws.uservoice.com/forums/598381-aws-command-line-interface

This site is not currently active

@alecmroo см. комментарий @jamesls выше:

Основываясь на отзывах сообщества, мы решили возвращать запросы функций в проблемы GitHub.

Не устанавливает последнюю версию интерфейса командной строки AWS: brew install awscli --HEAD

информация о пиве awscli: awscli: стабильный 1.15.40 (в бутылках), HEAD

Последняя версия интерфейса командной строки AWS должна быть: 1.15.47.

Я не могу выполнить эту команду: aws ec2 modify-vpc-tenancy

Кто-нибудь знает, как я могу использовать brew для установки AWS CLI версии 1.15.47 ..?

Должно быть просто @ some version #: https://docs.brew.sh/Versions

Была ли эта страница полезной?
0 / 5 - 0 рейтинги