Похоже, с популярностью непрерывной интеграции, это должно быть кусок пирога, но я в замешательстве. Я настраиваю TeamCity с HG. Я хочу иметь возможность отправлять наборы изменений в репозиторий, который TeamCity наблюдает и запускает на основе изменений. Это просто.
Далее, если сборка прошла, я хочу, чтобы этот набор изменений был перенесен в "чистый" репозиторий ... который содержит только передаваемые наборы изменений. Должно быть легко, но ...
TeamCity 6 поддерживает несколько этапов сборки, и если какой-либо шаг завершится неудачно, остальные не запустятся. Моя мысль заключалась в том, чтобы поставить в конце этап сборки, который выполняет тягу (или, возможно, толчок?), Чтобы передать проходящий набор изменений в чистый репозиторий.
Я пытаюсь использовать PsExec для запуска hg на коробке с репозиториями.
Если я попытаюсь запустить просто "hg pull", он не сможет найти hg.exe, даже если он указан в пути и я использовал флаг -w.
Я попытался поместить файл .bat в чистый репозиторий, который принимает параметр ревизии, и он работает нормально ... локально. Когда я пытаюсь запустить файл .bat удаленно (используя PsExec), он все работает нормально, но пытается запустить его на агенте сборки. Даже если я установлю аргумент -w, он запускает там файл .bat, но пытается запустить содержимое в окне агента сборки.
Я просто ухожу? Похоже, это довольно очевидная вещь, так что либо мои навыки в Google ослабевают, либо никто не думает, что об этом стоит писать. В любом случае, я застрял в земле SVN, пытаясь выбраться, поэтому я был бы признателен за помощь!