Развертывание на удаленном сервере с помощью msbuild в teamcity - PullRequest
5 голосов
/ 15 июля 2010

Хорошо, я искал несколько дней и до сих пор не нашел то, что я считаю элегантным решением этой проблемы.

Вот что я хочу, чтобы произошло.

  • Я хочу, чтобы TeamCity собрал мой код
  • Тогда протестируйте
  • Затем разверните его на удаленном сервере.

Первые 2 просты, но, похоже, ни у кого нет подходящего варианта для развертывания. Я настроил сервер с поддержкой веб-развертывания (ранее он назывался msdeploy?), И с локального компьютера я могу опубликовать его на удаленном сервере.

В идеале я бы хотел, чтобы teamcity позволила удаленно публиковать веб-сайт после успешной сборки и тестирования.

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

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 07 сентября 2010

Мы делаем что-то очень похожее, но отделяем последнюю задачу в свою собственную сборку, в которой планируется развернуть самую последнюю успешную сборку каждую ночь, чтобы веб-сайт не поднимался и не падал каждый раз, когда разработчик соглашается.Мы не использовали msdeploy, но вы можете найти полезными следующие ссылки:

Автоматизированные развертывания с TeamCity, проекты развертывания и SVN

Веб-развертывание сделано удивительно:Если вы используете XCopy, вы делаете это неправильно

Веб-упаковка: создание веб-пакетов с использованием MSBuild

1 голос
/ 15 июля 2010

Я тоже работаю над той же проблемой. Пока у меня есть два ужасных решения:

1) Используйте фиксированную папку рабочего каталога. Тогда код всегда компилируется в одно и то же место. Создайте XCOPY / FTP из папки bin \ RELEASE на целевом сервере или в папке.

2) Напишите сценарий, который выполняет поиск в папке артефакта с использованием большого номера версии (999), а затем проверяет каждый меньший номер версии, пока не найдете папку с этим номером версии. Это также можно сделать для URL, если вы получаете свои артефакты с помощью curl и веб-страницы артефактов.

3) Публикуйте вопросы на таких сайтах, пока я не смогу найти свойство msbuild, переменную окружения или другое подобное устройство, чтобы получить URL-адрес артефакта или путь к файловой системе (при условии, что teamcity поддерживает создание на фермах серверов, поэтому файловая система путь может содержать имя UNC, чтобы точно знать, откуда оно)

...