Как автоматизировать Jshint как часть процесса сборки? - PullRequest
3 голосов
/ 14 февраля 2012

Я хочу автоматически запускать JSHINT для всех моих файлов javascript как части нашей среды непрерывной интеграции (на самом деле, вероятно, как часть TFS Gated Checkin, но я пока не уверен, так как это будет зависеть от скорости).

Я пытался использовать rhino-jshint следующим образом:

java -jar js.jar jshint-rhino.js myFile.js

но как я могу установить требуемые параметры JSHint?Я знаю, что мог бы перечислить их в комментариях вверху myfile.js, но у меня есть много файлов javascript, и я не хочу, чтобы опции дублировались во всех моих исходных файлах.(Или в JavaScript есть функция «include», о которой я не знаю?)

Я надеялся передать файл options.js в качестве параметра в командной строке, а затем сохранить options.jsпод контролем версий.Но я не думаю, что это возможно с jshint-rhino.js.

Кроме того, мы используем расширение Visual Studio для «JSHint» всех файлов JavaScript при их сохранении.Но этот инструмент нельзя запустить из командной строки.Нам нужно лучшее из обоих миров - запуск JSHint внутри Visual Studio и Automated для сборки CI, а затем без дублирования параметров (и, действительно, сохранение параметров под контролем версий).

Итак, вопрос в том, как другие люди автоматизируют JSHint в процессе разработки?

Ответы [ 3 ]

3 голосов
/ 11 апреля 2013

Если вы хотите проверить свой Javascript во время сборки TFS, я бы порекомендовал взглянуть на sharplinter:

https://github.com/jamietre/SharpLinter

Он содержит исполняемый файл, который позволяет вам проверить ваш Javascriptфайлы с помощью JSLint / JSHint.Чтобы выполнить это во время сборки TFS, вы можете создать код активности, который может быть включен в ваш рабочий процесс.

Это видео Марселя де Вриса из Techdays 2012 проходит процесс автоматической сборки шаг за шагом и даетдемонстрация того, как включить ваши пользовательские действия.

http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2361

2 голосов
/ 22 февраля 2012

Поскольку вы, по сути, хотите использовать действия командной строки внутри процесса сборки TFS 2010, на самом деле все довольно просто.Вы захотите добавить InvokeProcess действие рабочего процесса ( см. Документацию MSDN ) в тот момент, когда вы хотите запустить инструмент.

На самом деле пошаговое руководство доступно для того, как сделать это с другой утилитой командной строки, но вы просто замените ее своей.Активность рабочего процесса даже позволяет вам указать набор параметров командной строки, которые вы можете передать.

0 голосов
/ 04 мая 2012
...