TeamCity извлекает зависимости артефактов - PullRequest
19 голосов
/ 20 марта 2011

Я пытаюсь создать шаг сборки в Teamcity, в котором Artifact Dependency есть на другом шаге сборки.

Артефакты предыдущего шага сборки доступны в виде файла .zip.

На этапе сборки можно получить артефакты, и они загружаются в:

C:\BuildAgent\work\27f84e3eca3a33d5\artifactdir\artifacts.zip

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

Как заставить TeamCity распаковать артефакты?

1 Ответ

7 голосов
/ 02 июня 2018

Вы можете использовать Правила артефактов Зависимостей артефактов, чтобы указать элементы артефакта, которые вы хотели бы использовать как часть вашей зависимости , включая извлечение из архива .Синтаксис правила артефакта:

[+: | -:] SourcePath [! ArchivePath] [=> DestinationPath]

Путь к архиву - это элемент, представляющий особый интересдля вас здесь.Используя ваш пример, ваше правило артефакта будет выглядеть примерно так:

artifacts.zip!** => artifactdir

Это позволит извлечь все содержимое артефакта artifacts.zip и поместить его в каталог artifactdir в корне вашего каталога извлечения

ArchivePath используется для извлечения загруженных сжатых артефактов.Zip, 7-zip, jar, tar и tar.gz поддерживаются.ArchivePath следует общим правилам для SourcePath: допускаются муравьиные символы подстановки, файлы, совпадающие внутри архива, будут помещаться в каталог, соответствующий первому совпадению с подстановочными знаками (относительно пути назначения). Например: команда release.zip! *. Dll будетраспакуйте все .dll файлы, находящиеся в корне артефакта release.zip.

Вы можете найти полную документацию TeamCity Artifact Dependency здесь

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