TeamCity рабочий каталог зависимостей? - PullRequest
0 голосов
/ 03 января 2012

Если у вас есть проект, который строит один проект перед построением следующего, но следующий должен знать «путь» первой сборки, возможно ли его получить?

Например:

Проект A имеет конфигурацию сборки A и конфигурацию сборки B.

Конфигурация сборки B зависит от конфигурации сборки A. Из-за отсутствия конфигурации сборки B ему потребуется доступ к пути конфигурации сборки A.Есть ли способ получить это?

Ответы [ 2 ]

0 голосов
/ 05 января 2012

Если у вас есть один агент и только один агент, вы можете попробовать использовать путь из предыдущей сборки.

Однако я бы не рекомендовал делать это, потому что если у вас два агента или масштабированныйв будущем до двух агентов, возможно, ваши проекты будут построены на разных агентах;это будет означать, что ваш рабочий каталог зависимостей не будет находиться на той же машине, или он будет устаревшим, так как последний был построен в другом месте.

Я предполагаю, что вы идете по пути первой сборки, чтобы получить ее вывод?

Если это так, метод, который мы используем для разделения зависимостей между проектами, состоит в том, чтобы зарегистрировать выходные данные каждого проекта в нашем контроле исходного кода, тогда каждый проект, для которого требуется вывод, просто должен их проверить.

0 голосов
/ 04 января 2012

Самым простым подходом было бы определить пользовательский каталог проверки в A и использовать то же жестко закодированное значение в B.

Если вы используете снимок TeamCity или зависимости артефактов, вы можете использовать% dep.btXXX.teamcity.build.checkoutDir%, чтобы получить каталог извлечения сборки зависимостей. Однако это не будет работать в версиях 6.5.0-6.5.5 TeamCity, подробности и способы их устранения см. В выпуске TW-18715 .

Однако вам действительно следует избегать доступа к каталогу проверки одной сборки из другой. Если вам нужны источники A, вы можете проверить их в B; если вы выводите сборку А, то публикация вывода как артефактов сборки и затем использование зависимостей артефактов TeamCity - это путь. В обоих случаях дополнительно использование зависимостей моментальных снимков TeamCity гарантирует, что в обеих сборках используется один и тот же исходный моментальный снимок, что, вероятно, вам и нужно.

...