2014-02-03 5 views
1

Я знаю, что основные журналы сборки travis доступны в Интернете и с командой logs в клиенте командной строки travis, но мне было интересно, есть ли способ доступа к другим файлам, сгенерированным как часть процесс сборки, такой как файл /home/travis/.rvm/log/1391454748_rbx-2.2.4/rubygems.install.log, указанный в https://travis-ci.org/rspec/rspec-its/jobs/18148204Как получить доступ к журналам с вторичным трафиком

ответ

3

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

before_script: cat /home/travis/.rvm/log/*_rbx-2.2.4/rubygems.install.log 

Если команда установки не удается, то вы должны переопределить install установить драгоценный камень, для которого установка неисправного: ответ

install: gem install XXX || cat /home/travis/.rvm/log/*_rbx-2.2.4/rubygems.install.log 
+0

Благодарим вас за то, что вы не только ответили на вопрос о других журналах, но и предложили, как справиться с особенностями сбоя сборки! –

1

banzaiman является хорошим (это мне помогло!). Но если вы используете:

install: gem install XXX || cat /home/travis/.rvm/log/*_rbx-2.2.4/rubygems.install.log 

тогда команда cat, скорее всего, удастся, и поэтому выше линии будет считаться как успех, и сборка будет продолжаться. Если вы хотите, чтобы сборка завершилась неудачей при сбое установки, вам необходимо убедиться, что строка имеет ненулевой статус выхода. Так что-то вроде этого:

install: gem install XXX || { cat /home/travis/.rvm/log/*_rbx-2.2.4/rubygems.install.log && 1; } 

Выражения в фигурных скобках будет выполняться, только если gem install XXX не удается (т.е. имеет статус ненулевого выхода). cat, вероятно, преуспеет, поэтому команда после && будет запущена. То, что 1 обеспечивает ненулевой статус выхода для всей строки, в результате чего сборка останавливается в этой точке.

Обратите внимание на необходимые пробелы вокруг фигурных скобок.

Смежные вопросы