2016-06-16 4 views
1

Использование REST API Teamcity по его можно извлечь один артефакт по URL-адресам видаTeamCity: Получить весь каталог артефактов с помощью REST API

http://myserver.com/httpAuth/app/rest/builds/id:85755/artifacts/files/bin/app.exe 

Как я могу получить весь каталог? Ниже не работает:

http://myserver.com/httpAuth/app/rest/builds/id:85755/artifacts/files/bin/ 
+0

Так в основном вы хотите, чтобы сделать один запрос и получить несколько файлов в ответ? Не могу представить формат такого ответа. – cyberskunk

+0

Почтовый файл был бы достойным решением. –

+1

Ну, получение zip-архива с содержимым папки - это не то же самое, что получение содержимого каталога. Но вы можете сохранить каталог в один архив при создании артефактов с использованием синтаксиса '*/*. Html => report.zip'. – cyberskunk

ответ

2

От TCD9/REST API

 
GET http://teamcity:8111/httpAuth/app/rest/builds/<build_locator>/artifacts/archived/<path>?locator=pattern:<wildcard> 

(возвращает архив, содержащий список артефактов по пути, указанному Опциональный. параметр локатора c есть файл, чтобы ограничить файлы только для тех, соответствующих подстановочных знаков) Media-Type: применение/почтового

0

Как правило, если это остальные API будет следовать определенным правилам, а именно:

GET /books/15 -> возвращает книгу с идентификатором 15

GET /books -> возвращает массив доступных книг

POST /books/15 -> обновляет книгу с идентификатором 15

и т. Д.

Это действительно зависит от реализации API.

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

Вы можете попробовать это:

GET http://myserver.com/httpAuth/app/rest/builds/id:85755/artifacts/files

GET http://myserver.com/httpAuth/app/rest/builds/id:85755/artifacts

+0

Да, список файлов работает. Но я хочу загрузить их все сразу. –

0

Я считаю, что это уже есть ответ на стек. Вы должны использовать:

GET http://<teamcity>/repository/downloadAll/<buildTypeId>/.lastSuccessful*/files 

* .lastfinished или .lastPinned