Как настроить git на закиси азота для развертывания на AWS Elastic Beanstalk?

У меня есть приложение ruby, разработанное на блоке ввода-вывода Nitrous, которое я пытаюсь развернуть в существующем приложении AWS Elastic Beanstalk. Git настроен на моем ящике Nitrous, и запуск «git status» возвращает:

# On branch master
# Your branch is up-to-date with 'origin/master'.
#
nothing to commit, working directory clean

Я также могу запустить «git push», и мой код будет отправлен на github.

Я установил пакет Elastic Beanstalk Command Line Tool 2.6.2. Запуск «eb status» возвращает правильную информацию о моем экземпляре EB.

Однако запуск «git aws.push» возвращает:

git: 'aws.push' is not a git command.

При чтении документации AWS говорится, что мне нужно запустить AWSDevTools-RepositorySetup.sh, но я не могу найти этот скрипт на своей машине Nitrous. Где находится этот скрипт или есть другой способ настроить git для отправки в AWS EB?


person sz42    schedule 24.07.2014    source источник


Ответы (3)


AWSDevTools-RepositorySetup.sh ранее не был включен в пакет Autoparts 2.6.2, но теперь его можно найти при установке последней версии (2.6.3).

Запустите $ parts update, чтобы убедиться, что диспетчер пакетов обновлен, и $ parts install elasticbeakstalk, чтобы установить последнюю версию.

После установки AWS Elastic Beanstalk 2.6.3 вам потребуется запустить инструмент настройки репозитория в каждом репозитории git:

$ AWSDevTools-RepositorySetup.sh

Оттуда вы можете запустить команды AWS git:

$ git aws.config
$ git aws.push
person Greg    schedule 29.07.2014
comment
Обновление до пакета 2.6.2 решило эту проблему, однако мне также пришлось установить пакет boto, чтобы успешно запустить git aws.push. Чтобы установить boto на Nitrous, выполните следующее: - person sz42; 01.08.2014
comment
pip install virtualenv; виртуальная покупка; источник venv/bin/активировать; pip установить бото - person sz42; 01.08.2014

AWSDevTools-RepositorySetup.sh находится в AWS Elastic Beanstalk Command Line Tool.

Просто запустите это:

# I believe you remember where you placed the tool
$ find [PATH_TO_ELASTICBEANSTALK_CLI] -name AWSDevTools-RepositorySetup.sh
# If you don't remember
$ sudo find / -name AWSDevTools-RepositorySetup.sh

В моем случае это $HOME, поэтому я получил:

$ find ~/AWS-ElasticBeanstalk-CLI-2.6.3/ -name AWSDevTools-RepositorySetup.sh
AWS-ElasticBeanstalk-CLI-2.6.3/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh

Также проверьте этот ответ: setup AWSDevTools-RepositorySetup.sh в git репозиторий на убунту

PS Не забудьте перейти в каталог вашего репо перед запуском AWSDevTools-RepositorySetup.sh

person Roman Newaza    schedule 24.07.2014
comment
Извините, это не помогло — я не могу найти AWSDevTools-RepositorySetup.sh на своей машине Nitrous. У меня нет root-доступа, поэтому отправленная вами команда find получает ошибку. Я нашел каталог с именем ~/.parts/packages/elasticbeanstalk/2.6.2, но он не содержит скрипт (команда find ~/.parts/packages/elasticbeanstalk/ -name AWSDevTools-RepositorySetup.sh ничего не возвращает) - person sz42; 25.07.2014
comment
Но вы сказали, что установили пакет Elastic Beanstalk Command Line Tool 2.6.2. Может быть, вы сделали это на своей локальной машине? В этом случае вам необходимо установить его на свой сервер. - person Roman Newaza; 29.07.2014

Пожалуйста, попробуйте это.

$ cd ~
$ wget "https://s3.amazonaws.com/elasticbeanstalk/cli/AWS-ElasticBeanstalk-CLI-2.6.3.zip"
$ unzip AWS-ElasticBeanstalk-CLI-2.6.3.zip
$ cd workspace/your_app
$ sh ~/AWS-ElasticBeanstalk-CLI-2.6.3/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh
$ git aws.push
person kwgch    schedule 29.07.2014