Существует ли структура непрерывного развертывания? - PullRequest
6 голосов
/ 21 апреля 2011

Мы хотим настроить непрерывное развертывание, чтобы при каждой регистрации файлы копировались, сайты создавались и базы данных обновлялись. Сейчас это работает нормально, используя много C # и вызывая его из C #.

Мы хотим добавить подтверждение / проверки, чтобы убедиться, что серверы имеют правильные версии, URL-адреса работают, пароли правильные и т. Д.

Я хочу установить SQL Server 2008, где у него есть список проверок, которые он выполняет перед установкой. Я хочу запустить это из unittests / powershell и, если возможно, также добавить графический интерфейс, чтобы системная команда могла «проверять» состояние серверов.

Есть ли хороший каркас задач?

  • Team City
  • C #
  • NUnit
  • PowerShell
  • IIS, SQL Server, MSMQ и т. Д.

Ответы [ 3 ]

1 голос
/ 04 сентября 2013

Используйте TeamCity, и его очень легко настроить и запустить.Проверьте демонстрации и документацию.http://www.jetbrains.com/teamcity/

Или вы можете обратиться к: NUnitForms имеет функцию «скрытого рабочего стола», которая позволит вам запускать модульные тесты из cc.net.

http://automaticchainsaw.blogspot.com/2007/09/winforms-testing-using-nunitforms.html http://automaticchainsaw.blogspot.com/2007/09/hidden-desktops-and-nunitforms.html

Если вы хотите использовать один элемент csproj и элементы управления, такие как имя сборки, на основе определенной конфигурации сборки.Затем вы ищете элемент Условие в свойствах MSBuild:

<AssemblyName Condition="'$(Configuration)' == 'Release-Prod'">Foo</AssemblyName>
<AssemblyName Condition="'$(Configuration)' == 'Release-Test'">Foo-Test</AssemblyName/>
0 голосов
/ 14 апреля 2014

Мы используем Release Management, встроенный в TFS. http://www.visualstudio.com/en-us/explore/release-management-vs.aspx

Он запускает наши закрытые проверки, поэтому все модульные тесты выполняются, а затем все кодированные тесты пользовательского интерфейса в нашей лаборатории интеграции, а затем внедряются на наших серверах (веб, базы данных и уровни обслуживания). Он также позволяет убедиться, что серверы имеют правильные конфигурации. С помощью этого инструмента мы можем развертываться на производстве после каждой регистрации.

0 голосов
/ 19 мая 2012

Взгляните на OpsCode Chef или Puppet - вам нужна автоматизация инфраструктуры.Оба эти инструмента теперь поддерживают автоматизацию Windows, и оба они позволяют автоматизировать создание сред.

Вы также можете взглянуть на DbDeploy, инструмент для контроля и отслеживания изменений в базах данных.

...