Расшифровка выходных данных Heroku 'git push' из регулярных ошибок вывода 'git push' - PullRequest
0 голосов
/ 27 ноября 2010

В настоящее время я анализирую вывод STDERR из git push -q, чтобы представить пользователю любые ошибки git push.Это работает чудесно большую часть времени.Однако при нажатии на Heroku, их ловушка предварительного приема выводит статус сервера и статус приложения в STDERR.

Я просто ищу простой способ определить, являются ли выходные данные ошибками по сравнению с посторонними данными Heroku.Я пытался проверить наличие префикса "---->", но не во всех выходных Heroku есть.Я также подумал о проверке «fatal:» и «ssh:» в строке STDERR, но это кажется очень хрупким.И я не смог найти никакой документации, что каждая ошибка git имеет префикс ***:

Фактическая ошибка Git, отправленная в STDERR:

ssh: Could not resolve hostname heroku.com: nodename nor servname provided, or not known
fatal: The remote end hung up unexpectedly

Типичный статус Heroku:

-----> Heroku receiving push
-----> Rack app detected
-----> Gemfile detected, running Bundler version 1.0.3
       All dependencies are satisfied
       Compiled slug size is 8.4MB
-----> Launching.... done
       http://XXXXXXX.com deployed to Heroku

Есть ли у кого-нибудь идеи о лучшем способе идентификации только настоящих ошибок git?

1 Ответ

0 голосов
/ 30 ноября 2010

Согласно Heroku: на данный момент не существует пуленепробиваемого способа отличить вывод Heroku от выводов Git.Но они работают над стандартизацией своего выходного формата.

Так что в основном это вопрос поиска наиболее распространенных элементов.

...