Пакет нескольких профилей публикации .pubxml после успешной сборки в Jenkins CI

Я использую Jenkins для непрерывной интеграции.

Прямо сейчас у меня есть работа с этой командой в Jenkins в аргументах командной строки для шага сборки:

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

Это команда:

"%WORKSPACE%\OEVizion\ITVizion.OEVizion.Web\ITVizion.OEVizion.Web.csproj" /p:DeployOnBuild=true /p:PublishProfile="IT Vizion - Web Deploy Package for a given domain.pubxml"

Он работает просто отлично, то есть пакет веб-развертывания (.zip) создается в указанной папке, определенной в файле .pubxml.

Однако то, что я хотел бы сделать, это сгенерировать пакет веб-развертывания .zip для каждого из файлов .pubxml, которые у меня есть (сейчас 3) для этого конкретного ITVizion.OEVizion.Web.csproj, одним выстрелом\командой.

При этом у меня будет несколько пакетов .zip с разными настройками, готовыми к развертыванию на разных серверах каждый раз, когда фиксация отправляется в репозиторий и проект успешно строится.

Это возможно? Как мне подойти к этому?


person Leniel Maccaferri    schedule 14.04.2015    source источник
comment
Хотя это не совсем то, о чем вы просите, вы можете использовать PackageWeb NuGet pkg sedodream.com/2012 /03/14/PackageWebUpdatedAndVideoBelow.aspx для создания pkg, внутри которого есть преобразования. Он также создает .ps1, чтобы вы могли их вызывать.   -  person Sayed Ibrahim Hashimi    schedule 15.04.2015


Ответы (2)


Лучше всего создать только один раз, а затем опубликовать несколько раз из одной и той же сборки. Вот скриншот того, как это настроить:

Создайте один раз и опубликуйте 3 среды

person Community    schedule 14.01.2016
comment
Это отличный ответ, и он работает для меня, но он также не кажется таким эффективным, как мог бы быть. Вы по-прежнему создаете уникальный пакет развертывания для каждого профиля. Есть ли способ использовать тот же самый объект сборки и преобразовать только требуемый файл/файлы? Другими словами, чтобы иметь один вывод сборки и все xformed-файлы. При развертывании копируйте выходные данные сборки и только соответствующие xformed-файлы. Таким образом, у нас на самом деле был бы только один артефакт сборки, и нужно было бы управлять только уникальными файлами. - person Max Cascone; 15.03.2021

После публикации вопроса я увидел способ сделать это: добавить несколько шагов сборки. По одному для каждого .pubxml файла. Таким образом, процесс сборки будет выполняться 3 раза для 3 профилей публикации, и вы получите 3 пакета веб-развертывания .zip в конце выполнения задания в Jenkins. Хороший.

person Leniel Maccaferri    schedule 14.04.2015