VSTS Build с файлами, созданными Gulp - PullRequest
0 голосов
/ 09 мая 2018

В настоящее время у меня есть сборка VSTS, которая принимает решение Visual Studio и собирает его (C #) со следующими параметрами сборки:

/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:UseMerge=true /p:PrecompileBeforePublish=true /p:SingleAssemblyName=AppCode"

У меня также есть различные задачи Gulp, которые берутся в моих интерфейсных файлах и управляют ими (lint, minify, bundle и т. Д.) Как часть этой сборки. Проблема в том, что zip, созданный на этапе построения решения, не включает эти файлы распространения (или любой файл, который не включен в решение).

В общем, проверять дистрибутивные файлы - плохая идея, их нужно создавать как часть рабочей сборки. Может кто-нибудь указать мне правильное направление, как заставить эти файлы генерировать (сборка работает на этом шаге) -ИЛИ- включить их как часть zip-файла, сгенерированного как часть сборки решения?

1 Ответ

0 голосов
/ 10 мая 2018

Чтобы включить Gulp-Generated Files в zip-файл пакета веб-приложения, вы можете получить файлы пакета веб-приложения в другой каталог (например, $(build.binariesdirectory)), а после выполнения всех задач Gulp вы можете добавить файлы, сгенерированные Gulp в $(build.binariesdirectory). Затем архивируйте файлы из $(build.binariesdirectory) и опубликуйте артефакты.

Подробные настройки, как показано ниже:

  1. В задаче VS Build измените аргументы MSBuild следующим образом:

    /p:OutDir="$(build.binariesdirectory)\\"
    
  2. Добавить задачу (задачу PowerShell или задачу «Копировать файлы» и т. Д.), Чтобы скопировать сгенерированные Gulp файлы в $(build.binariesdirectory).

  3. Добавление задачи «Архивные файлы» для архивирования файлов с $(build.binariesdirectory) до $(Build.ArtifactStagingDirectory), как показано ниже:

    enter image description here

Теперь zip-файл не только содержит файлы пакетов веб-приложения, но и файлы, созданные Gulp.

...