Я работаю над распределенным решением (написанным на .NET), которое включает службы WCF, управляемые службы Windows и имеет зависимости от других собственных и управляемых решений.Основная цель проекта - выполнить различные тесты другой распределенной системы.
Сборка развертывается одним щелчком в TeamCity.Двоичные файлы тестового жгута и тестируемой распределенной системы находятся в общей папке.Для развертывания всего этого у меня есть несколько сценариев .bat и powershell, которые также находятся в общей папке.Я постоянно работаю над сценариями, и они обновляются, поэтому я хочу сохранить их в системе контроля версий.
В каких местах можно хранить сценарии развертывания?
Прямо сейчас у меня есть выделенная папка в решении, но я не слишком уверен, что это хороший подход.Я не нашел способ развертывания сценариев в общей папке в каждой сборке TeamCity.
<b>/solution</b>
<b>/app</b> [test harness code]
<b>/test</b> [unit, functional, integration, capacity tests]
<b>/deployment</b>
<b>/scripts</b> [.bat and .ps1 scripts only]
<b>/TeamCity</b> [copy binaries to share folder on TeamCity]
<b>/VM</b> [scripts for installation of test harness and unit under test]
ОБНОВЛЕНИЕ
Сценарии развертывания, о которых я говорю, должны храниться вобщая папка на машине Team City.В сценариях тестирования несколько виртуальных машин копируют эти сценарии в локальные папки и затем выполняют их.В зависимости от сценария и назначения виртуальной машины различные двоичные файлы копируются на виртуальную машину и выполняются различные установки.Размер сценариев обычно не превышает 100 строк, но они сильно отличаются от компонента к компоненту и постоянно обновляются.
Я храню сценарии в папке решения Visual Studio без файла .csproj, и поэтому онине копируется, когда Team City извлекает код из репозитория, и поэтому я не могу скопировать их в общую папку.