Автоматическое развертывание в нескольких производственных средах

StackOverflow https://stackoverflow.com/questions/1682671

Вопрос

Я хочу обновить ASP .СЕТЕВОЕ веб-приложение (включая изменения файла web.config и скрипты базы данных) для нескольких производственных сред - в идеале одним нажатием кнопки.У меня нет прямого сетевого подключения ни к одному из них.Я думаю, это означает, что серверы приложений должны будут "извлечь" информацию, необходимую для обновления приложения, и запустить скрипт для обновления приложения, которое находится на сервере.

По сути, мне нужен способ "опубликовать" обновление, и серверы увидят это обновление и автоматически загрузят и запустят его.

Я думал о возможной настройке SFTP-сервера для публикации обновлений и разработке пользовательского инструмента, установленного в производственных средах, который каждый день просматривает SFTP-сервер и загружает файлы приложений, если они доступны.Это, по крайней мере, позволило бы получить необходимые файлы на серверы, и я мог бы использовать xcopy / robocopy и Migrator.NET для развертывания обновлений.Все еще не уверен насчет изменений в файле конфигурации, но это, по крайней мере, хоть что-то мне дает.

Есть ли какое-нибудь хорошее решение для этого сценария?Есть ли какие-нибудь инструменты, которые делают это за вас?

Это было полезно?

Решение

Я думаю, что стратегия "тянуть, а не толкать" несколько противоречит общепринятому мнению...но это похоже на что-то CruiseControl.NET мог бы легко сделать.Помните, что файл web.config также является XML-документом, поэтому его легко изменить в скрипте CruiseControl.Вы могли бы копировать файлы xcopy или использовать svn-экспорт.

Другие советы

http://varunkumargoel.blogspot.com/2010/03/how-to-make-automatic-deployment-for.html

Пожалуйста, просмотрите вышеупомянутый блог, где я разместил подробную информацию об автоматическом развертывании .NET-приложения с помощью SVN.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top