В нашем магазине мы используем SVN для управления исходным кодом и CruiseControl для CI для обработки автоматических сборок и развертываний в наших средах разработки, тестирования и интеграции.
Все это работает гладко, однако из-за аппаратных и ресурсных ограничений наша среда интеграции не является средой с балансировкой нагрузки на 2 сервера, как наша производственная среда. В то время как все остальное одинаково, это будет единственная разница между нашей интеграцией и производственной средой (хотя и большой!)
Теоретически, разница заключается в несколько другой конфигурации наших серверов приложений, и сценарий развертывания просто должен был бы разбить артефакты сборки на два сервера вместо одного, но почему я так нервничаю, чтобы автоматизировать наши производственные развертывания ?!
Я вообще не фанат контроля, но я всегда чувствую жадную необходимость развертывать производство вручную. Я слышал от коллег, что это, как правило, Really BAD Thing ™, но они не смогли доказать это.
Я знаю, что когда я делаю это вручную, я вижу, что я физически копирую правильные файлы, я физически выключаю серверы приложений и гарантирую, что они успешно закрылись, я физически запускаю резервные копии серверов и затем физически проверяю журналы, чтобы сделать уверен, что все в порядке, и развертывание прошло успешно. Это дает мне душевное спокойствие.
Какие аргументы против этого аргумента ИЛИ для автоматического развертывания сценариев?