Сонар: не удалось выполнить задачу TFS «Опубликовать результат Gate Gate» при проверке модулей node_modules - PullRequest
0 голосов
/ 06 февраля 2019

node_modules - это место, где пряжа (или npm) хранит зависимости.

Я использую задачу TFS для выполнения анализа SonarQube в угловом 7 проекте со следующей стандартной конфигурацией:

enter image description here

С ошибкой не удалось выполнить задачу «Результат проверки качества»:

2019-02-06T16:15:40.1474327Z ##[debug]findPath: 'C:\Agt2\_work\14'
2019-02-06T16:15:40.1474945Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2019-02-06T16:15:40.1475394Z ##[debug]findOptions.followSymbolicLinks: 'true'
2019-02-06T16:15:40.1480701Z ##[debug]  C:\Agt2\_work\14 (directory)
[...]
2019-02-06T16:15:41.2684833Z ##[debug]  C:\Agt2\_work\14\s\node_modules\@angular\cli (directory)
2019-02-06T16:15:41.2692225Z ##[debug]  C:\Agt2\_work\14\s\node_modules\@angular\cli\.bin (directory)
2019-02-06T16:15:41.2779828Z ##[debug][SQ] Publish task error: Failed find: ENOENT: no such file or directory, stat 'C:\Agt2\_work\14\s\node_modules\@angular\cli\.bin\ng'
2019-02-06T16:15:41.2781059Z ##[debug]task result: Failed
2019-02-06T16:15:41.2782877Z ##[error]Failed find: ENOENT: no such file or directory, stat 'C:\Agt2\_work\14\s\node_modules\@angular\cli\.bin\ng'

Первая проблема : почему Sonar анализирует node_modules, покаЯ добавил его в исключенные файлы в задаче «Подготовка к анализу»:

sonar.exclusions=**/node_modules/**,**/*.spec.ts

Вторая проблема : если я добавлю эти параметры к дополнительным свойствам в задаче «Подготовить анализ»,кажется, игнорирует параметр:

findOptions.followSpecifiedSymbolicLink='false'
findOptions.followSymbolicLinks:'false'

Результат: enter image description here

И как исправить эту проблему, чтобы получить результат модульного теста и опубликовать его в sonarqube?

РЕДАКТИРОВАТЬ : билет создан в Sonar JIRA: https://community.sonarsource.com/t/vsts-publish-quality-gate-result-with-npm-parses-node-modules-folder-and-hangs-on-symbolic-links/7058

EDIT 2 : Команда Sonar ответила мне, что это похоже на эту ошибку: https://jira.sonarsource.com/browse/VSTS-172

1 Ответ

0 голосов
/ 08 марта 2019

Finnaly нашел, как это исправить, добавив новый сценарий powershell в рабочий процесс сборки.

В этом сценарии powershell я выполняю rimraf node_modues сценарий, который удаляет все файлы node_modules.

Это не такисправление, но на данный момент работает только обходной путь.

enter image description here

...