VSTS с глотком v.4.0.0 - PullRequest
       10

VSTS с глотком v.4.0.0

0 голосов
/ 04 сентября 2018

У меня есть версия gulp одного из моих проектов. Ранее мы использовали версию 3.9.1, и мы были геститным обновлением.

После обновления я исправил все локальные проблемы и протестировал проект на другом компьютере (после обновления установленного там же gulp) он работает нормально.

Однако наше автоматическое развертывание не согласуется со мной.

После регистрации наш VSTS выполняет следующие действия

  1. установка npm
  2. выполнить команду
  3. сборка проекта

Однако это приводит к следующей ошибке.

Working directory changed to D:\a\1\s\MVC
Using gulpfile D:\a\1\s\MVC\gulpfile.js
C:\NPM\Modules\node_modules\gulp\bin\gulp.js:129
gulpInst.start.apply(gulpInst, toRun);
     ^
     TypeError: Cannot read property 'apply' of undefined
at C:\NPM\Modules\node_modules\gulp\bin\gulp.js:129:20
at _combinedTickCallback (internal/process/next_tick.js:131:7)
at process._tickDomainCallback (internal/process/next_tick.js:218:9)

Эта ошибка вызвана устаревшей cli-версией gulp. Но я не могу понять, как обновить это с помощью VSTS.

Конкретная задача

Как мне обновить gulp cli в VSTS

Что я уже сделал?

После некоторой проверки я увидел, что установленная версия npm была очень старой (3.10.8). Я перетащил установщик nodejs, который обновляет до последней версии и дает мне последнюю версию nodejs, и гораздо более новую версию npm (5.6.0), которую я использовал на компьютерах, имеющихся на руках, для обновления версии cli , Однако я не могу понять, как это сделать в VSTS.

Ответы [ 3 ]

0 голосов
/ 09 сентября 2018

Попробуйте установить / обновить gulp-cli через задачу NPM:

enter image description here

Кстати, пакет в package.json будет установлен в текущем проекте / папке вместо глобального, вам нужно вызвать команду gulp через команду npm (свойство scripts для package.json), чтобы использовать пакет в текущем проекте / папке или указать путь непосредственно (например ./node_modules/gulp/bin/gulp)

0 голосов
/ 17 января 2019

Решение, которое я нашел, сработало для меня, чтобы изменить конвейер с Hosted на Hosted VS2017.

Я выполнил PR, который обновил Gulp до 4.0, и сборка PR была завершена, но сборка CI завершилась неудачно со странными результатами. После долгих поисков я сузил его до сборки PR, которая уже была установлена ​​на Hosted VS2017 (это требовалось и для проектов C #, а сборка CI выполняла только сборку Gulp и была установлена ​​на Hosted.

enter image description here

0 голосов
/ 07 сентября 2018

Похоже, вы используете Hosted Agent с установленной версией npm 3.10.8. Вам просто нужно добавить задачу Node Tool Installer в определение вашей сборки и настроить ее на использование версии 8.x. Будет установлена ​​версия 8.x, включающая npm 5.6.0. enter image description here

npm версия перед задачей Node Tool Installer: enter image description here Версия npm после задачи Node Tool Installer: enter image description here

...