2015-06-15 3 views
1

Моя непрерывная интеграция работает очень хорошо, используя Codeship, за исключением одной вещи: прекратите развертывание и сообщите нам, когда модульные тесты не работают.Непрерывная интеграция: Codeship + Gulp (Жасмин)

Вот наши текущие команды:

  1. НОЙ установки
  2. НОЙ установка Бауэр
  3. становой установить
  4. тест глотка
  5. глоток построить

Проблемы заключается в том gulp test с успехом или неудачей, gulp build строит.

У меня есть console.log() мой статус gulp test, но я понятия не имею, как заставить Кодексу слушать этот статус выхода.

ответ

1

Используя @mlocker ответ и this discussion on Github, я нашел обходной путь, который отлично работает для меня:

gulp.task('test', function (done) { 
    karma.start({}, function(exitStatus){ 
    done(exitStatus ? "There are failing unit tests" : undefined); 
    }); 
}); 

хитрость здесь в том, что если статус_завершения отличается от 0, вы получите formatError на «Там не удается модульных тестов», который выйдет gulp test с 1 делает Codeship остановиться и рассмотреть сборку как failed.

2

Конструкция на Codeship не работает, как только любая команда выходит с кодом выхода, отличным от нуля.

Пожалуйста, убедитесь, что в этом случае работает gulp test.

(! Вы также можете обратиться к нам через [email protected], если какие-либо другие вопросы возникают)

0

Возможно, вы можете попробовать провести тестирование и построить задачи?

gulp test && gulp build 
+0

Собственно, как @mlocher отметил, что проблема была 'глотком test' всегда будет выйти с успехом, так что' глотком build' всегда будет вызываться в любом случае. – MaximeBernard

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