Разверните папку сборки Gulp в Azure из Visual Studio Team Services.

Я только начал использовать VSO для одного из моих проектов. Я создал построенное определение, и построение прошло успешно. Когда я попытался создать определение выпуска для этого, он потерпел неудачу, выдав ошибку

System.Management.Automation.RuntimeException: No files were found to deploy with search pattern C:\a\858bddd5b\**\*.zip

Он ожидает файлы .zip. Поскольку мне нужно развернуть распределенную папку, созданную с помощью сборки gulp, я указал путь к пакету веб-развертывания как

$(System.DefaultWorkingDirectory)/{built name}

Любая помощь очень ценится


person ShaMoh    schedule 12.07.2016    source источник


Ответы (4)


Вы должны добавить шаг сборки, чтобы создать архив с расширением .zip для выходной папки шага gulp. Ваши шаги должны выглядеть

введите здесь описание изображения

Сборка VSO/VSTS имеет задачу, доступную с Archive files для достижения того же.

В качестве альтернативы, если стандартный шаг «Архивировать файлы» вам не подходит, вы можете использовать шаг powershell. Команда powershell будет выглядеть следующим образом.

[io.compression.zipfile]::CreateFromDirectory($Source, $Destination) 
  • Источником должны быть все файлы/папки из вывода gulp, которые вы хотите развернуть.
  • Место назначения здесь должно соответствовать входным данным для шага развертывания веб-развертывания/веб-приложения.
person Abhay Saraf    schedule 12.07.2016
comment
В задаче развертывания Azure я указал путь к архивному файлу ($(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip) в качестве пути к пакету веб-развертывания, но он не работает. Выдает ошибку при загрузке артефактов: Microsoft.TeamFoundation.Release.ArtifactRepository.Definition.ArtifactDownloadException: в сборке нет доступных артефактов. - person ShaMoh; 13.07.2016

Вы также можете использовать это расширение для создания ZIP-файла. Я использовал его для ситуации, похожей на вашу:

https://marketplace.visualstudio.com/items?itemName=trackyon.trackyonadvantage

person Justin Patten    schedule 12.07.2016

Для задачи «Развертывание веб-приложения Azure» требуется ZIP-пакет веб-развертывания. Вы можете либо добавить еще одну задачу для создания zip-пакета для вывода сборки, как указано в двух других ответах, либо добавить некоторый код в свой «gulpfile.js», чтобы сгенерировать zip-пакет во время сборки gulp, а затем опубликовать zip-пакет в артефакт.

Если вы не хотите создавать zip-пакет для вывода сборки, вы можете использовать Задача FTP Uploader для развертывания сборки в Azure Web App через Развертывание FTP.

person Eddie Chen - MSFT    schedule 13.07.2016

Вы можете создать zip-файл с помощью PowerShell, если вы работаете с агентом Windows.

Command Line задача

Команда: powershell Аргументы: -Command "&{Add-Type -assembly 'system.io.compression.filesystem'; [io.compression.zipfile]::CreateFromDirectory('$(Build.StagingDirectory)\Zip', '$(Build.StagingDirectory)\$(BuildConfiguration)Deploy.zip')}"

Очевидно, замените $(Build.StagingDirectory)\Zip на любую папку, которую вы хотите заархивировать, и $(Build.StagingDirectory)\$(BuildConfiguration)Deploy.zip на то, что вы хотите назвать файлом.

person Daniel Mann    schedule 14.07.2016