Как автоматизировать деплой кода на Heroku?

Каждый раз ввожу следующие команды:

  • git add .
  • git commit -am "commit"
  • git push heroku master
  • heroku ps:scale worker=1

Как это всё выполнять быстрее? В одну строчку


Ответы (2 шт):

Автор решения: KoVadim

Создаете bat (для Windows) или sh файл (для Linux), копируете туда нужные команды и готово. Теперь можно будет запускать один файл, который все сделает.

Судя по сообщению об ошибке, Вы используете PowerShell, можно написать скрипт для него. Просто имя у него обычно заканчивается на ps1 - просто создайте в каталоге файл с подходящим Вам именем, скопируйте туда нужные 4 строки и готово (Но так как это PowerShell, "все для людей", возможно придется потрогать свойства файла

Но можно и в одну строку

(git add .) -and (git commit -am "commit") -and (git push heroku master) -and (heroku ps:scale worker=1)

Правда у этого способа есть сильный минус - вывод команды не видно.

Но у этих способов есть пара недостатков. Во первых, текст сообщения для коммита будет один и тот же. Это решается просто - текст сообщения передается как параметр командной стоки, а в самом скрипте пишем так

git commit -am "$args[0]"

Второе - это то, что все постоянно коммитится. Можно немного перестараться и закоммитить мусор или, что ещё хуже, пароли и явки. Но и это не проблема. Если код разрабатывается с под редактора или ide, то можно просто эти команды добавить туда. И коммит будет средствами IU (тут все просто, может захочется пару раз закоммитить, а команда билд может вызывать полноценный деплой (последние две команды). Может получится даже лучше, чем Вы себе представляете.

→ Ссылка
Автор решения: Thunderssucks

Можно скопировать и вставить все строчки сразу и нажать Ввод.

→ Ссылка