Мы переходим от комбинации CC / CC.NET к TeamCity.
Основой нашего продукта является Windows, но у нас есть агент Mac.
У нас есть проверка VCSрежим установлен на «Автоматически на сервере».Это означает, что источник будет извлечен на сервере (Windows) и затем скопирован агентам (включая агент Mac) по мере необходимости.
Наш продукт использует платформу BWToolkit для части своего пользовательского интерфейса.Это означает, что мы храним фреймворк в нашем контроле исходных кодов.
Проблема заключается в том, что исходная копия с сервера TeamCity испортила символические ссылки в каталоге фреймворка.Это приводит к тому, что наш продукт не может быть собран (error: BWToolkitFramework/BWToolkitFramework.h: No such file or directory
).
Вот как ls -l
из корневого каталога фреймворка выглядит на моем компьютере:
total 24
lrwxr-xr-x 1 myuser admin 35 Nov 22 10:45 BWToolkitFramework -> Versions/Current/BWToolkitFramework
lrwxr-xr-x 1 myuser admin 24 Nov 22 10:45 Headers -> Versions/Current/Headers
lrwxr-xr-x 1 myuser admin 26 Nov 22 10:45 Resources -> Versions/Current/Resources
drwxr-xr-x 5 myuser admin 170 Nov 22 10:45 Versions
И этокак это выглядит на компьютере сборки:
total 24
-rwxrwxr-- 1 root admin 40 Nov 19 16:21 BWToolkitFramework
-rwxrwxr-- 1 root admin 29 Nov 19 16:21 Headers
-rwxrwxr-- 1 root admin 31 Nov 19 16:21 Resources
drwxrwxr-- 4 root admin 136 Nov 19 16:21 Versions
Кроме того, вместо того, чтобы отображаться как ссылки на компьютере сборки (небольшая стрелка на значке) они отображаются в виде файлов со значком исполняемого файла Unix.Если вы откроете один из этих файлов, который должен быть ссылкой, вы получите что-то похожее на следующее (это из ссылки BWToolkitFramework):
link Versions/Current/BWToolkitFramework
Это похоже на проблему с опцией проверки сервера в TeamCity, потому чтоCruiseControl работает на той же машине, где выполняется прямая проверка SVN, и у меня не возникло проблем.
Есть ли способ исправить это, кроме изменения конфигурации TeamCity для использования проверки SVN на клиенте?