Я довольно новичок в CI, так что терпите меня здесь. Я только что установил экземпляр Team City на локальном компьютере, и я ясно вижу преимущества.
Единственное, что мы хотим понять, - это то, как мы можем управлять аспектом развертывания CI. Чего мы действительно хотим достичь, так это двух сборок:
1) Мы регистрируемся в нашем исходном хранилище, и CI-сервер замечает изменения и компилирует код, тестирует и т. Д.
2) Мы вручную запускаем сборку, которая компилирует код, копирует код на удаленный сервер и обновляет его сопоставления IIS.
Теперь первая сборка в значительной степени завернута в TeamCity. Но я предполагаю, что аспект развертывания этого будет включать в себя некоторые сценарии (Nant, MsBuild, Rake и т. Д.), Это правильно?
Если это так, я вижу, что передача файлов со сборочной машины на удаленный сервер будет в порядке, но сможем ли мы обновить сопоставления IIS, не находясь в той же сети? В таком случае, где находится правильное место для развертывания CI-сервера, должно ли оно работать в той же сети, что и приложения, которые мы развертываем?
Наконец, мы (довольно неортодоксально) использовали IronRuby для запуска сценариев rake в качестве нашего сборщика. Это просто потому, что нам нравится Rake, но если мы посмотрим на Nant / Msbuild, у них есть какие-то задачи, которые упростили бы то, что мы пытаемся достичь?
Ура, Крис.