2015-10-06 2 views
0

У меня есть сценарий, когда наше решение для Visual Studio Online Git имеет встроенную сборку непрерывной интеграции (CI), но локальные ошибки сборки возникают.Ошибки TypeScript нарушают сборку CI?

Эти ошибки сборки, локальные для решения VS.NET, однако изолированы от ошибок сборки TypeScript. Мое понимание заключается в том, что ошибки построения TypeScript, безусловно, вызовут сбои локальной сборки, но не будет не допустить успешного завершения работы сервера сборки CI. Это связано с тем, что компилятор tsc.exe TypeScript просто преобразует файлы .ts в файлы .js на сервере сборки, но любые связанные с ним ошибки не будут блокироваться в этой точке. Решение заботится только о выходных файлах .js и, следовательно, они существуют после компиляции и удовлетворяют серверу сборки.

Я, однако, не уверен в этом на 100% и хотел бы уточнить, если это правильно, или если есть что-то еще, что позволяет локальным ошибкам TypeScript не влиять на результат сборки сервера?

+0

Могут ли сборку артефактов из предыдущих (успешных) сборников все еще существовать на сервере сборки? Несмотря на то, что текущая сборка не выполняется, поскольку выходные файлы '.js' из предыдущей сборки есть, остальная часть сборки может завершиться успешно. Если это так, вы ожидаете увидеть проблемы с запуском кода из-за ожидаемого генерации кода. –

+0

Даже если они сделали .js-файл, у него нет компиляции сервера сборки, поскольку это всего лишь скриптовый язык. Если он вообще отсутствует, он все равно будет работать, даже если .js будет плохим. Это также совершенно новая сборка порта приложения, поэтому не было никаких успешных сборок до появления проблем .ts. Это означает, что были созданы файлы .js. Вы правы, хотя у работающего кода наверняка будут проблемы. – atconway

ответ

2

но не помешает сервер CI сборки от завершения преуспевающим

Это, скорее всего, вызовет неудачное завершение процесса сборки если кто-то явно игнорирует возвращается код ошибки в процессе сборки (для начала это очень плохая идея).

+0

Это озадачивает. Копаясь в журналах, сборка .sln завершается успешно, и это своего рода ванильная VSO-сборка из того, что я вижу. Я не вижу, как мои локальные ошибки не нарушают работу сервера сборки. Вопрос. Эти ошибки TypeScript довольно новы, и я верю только в том, что обновил свой TS-инструмент до 1.6. Этот TS работал раньше и все это вызывает внезапные ошибки сборки (я собираюсь опубликовать еще один вопрос с проблемой, которую я не могу понять). Несмотря на это, мне интересно, имеет ли сервер сборки более старую версию компилятора 'tsc.exe', который бы не блокировал эти ошибки? – atconway

+1

'Интересно, имеет ли сервер сборки более старую версию компилятора tsc.exe, которая позволила бы этим ошибкам не блокировать' действительно – basarat

+0

. Проблема была (2) слот из того, что я могу сказать: ** 1. ** An более старая версия компилятора на сервере не рассказывала о ошибках TypeScript, поскольку они не были нарушениями в этой более старой версии. ** 2. ** В 'VS2015' есть опция в окне« Ошибки », в котором указано« Build + Intellisense », которое включено по умолчанию. Ошибки, которые я отмечал, были ошибками _Intellisense_. Если я переключился на 'Build Only', ошибки не были блокированы локально при построении. – atconway

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