2009-11-05 7 views
4

Я хочу обновить веб-приложение ASP.NET (включая изменения файла веб-сайта и сценарии базы данных) в нескольких производственных средах - в идеале одним нажатием кнопки. У меня нет прямого сетевого подключения к любому из них. Я думаю, это означает, что серверам приложений придется «тянуть» информацию, необходимую для обновления приложения, и запускать сценарий для обновления приложения, которое находится на сервере.Автоматическое развертывание в нескольких производственных средах

В принципе, мне нужен способ «опубликовать» обновление, и серверы видят это обновление и автоматически загружают и запускают его.

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

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

ответ

2

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

+0

Я просматривал CruiseControl.NET последние пару дней. Это действительно здорово. Но мы не хотим, чтобы наш исходный код был распространен на клиентских компьютерах из-за проблем с безопасностью. Может быть, мы могли бы поместить наши скомпилированные файлы в исходный элемент управления? –

+0

Возможно, вы это сделаете ... или просто попросите CruiseControl скопировать файлы, которые ему нужны, из выходного каталога сборки. – Bryan

0

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

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

+1

Хорошая ссылка, но вопрос в том, как она будет размещаться на удаленных сайтах? –