Мы используем Scalr. Он доступен как сервис (Scalr.net) или вы можете запустить его самостоятельно (это с открытым исходным кодом - хотя источник в репозитории googlecode иногда немного отличается от версии, которую использует сервис).
По сути, Scalr имеет глобальную функцию сценариев, с помощью которой вы можете указать скрипт (например, bash, PHP, что угодно с #! Bang) и запустить его на всех экземплярах данной «роли» (например, веб-экземпляр). В нашем случае у нас есть скрипт, который просто выполняет svn checkout или svn update в зависимости от ситуации. Scalr поддерживает периодическое планирование сценариев, поэтому в среде dev я запускаю его каждые 5 минут, чтобы синхронизировать dev с SVN, но, очевидно, я запускаю его вручную для производства.
(У меня есть скрипт, принимающий параметр для указания ветки SVN для использования)