2016-06-16 9 views
1

Teamcity der REST-API ist es möglich, ein einzelnes Artefakt von URLs der FormTeamcity: ein ganzes Verzeichnis von Artefakten Get REST API

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

abrufen Wie kann ich ein ganzes Verzeichnis erhalten? Die folgende funktioniert nicht:

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

Also im Grunde Sie eine Anfrage machen wollen und mehrere Dateien als Antwort zu bekommen? Ich kann mir das Format einer solchen Antwort nicht vorstellen. – cyberskunk

+0

Eine Zip-Datei wäre eine anständige Lösung. –

+1

Nun, Zip-Archiv mit Inhalt eines Ordners zu bekommen, ist nicht genau das gleiche wie Verzeichnisinhalte zu bekommen. Sie können jedoch beim Generieren von Artefakten das Verzeichnis in einem einzigen Archiv speichern, indem Sie die Syntax "*/*. Html => report.zip" verwenden. – cyberskunk

Antwort

2

Von TCD9/REST API

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

(gibt das Archiv der Liste der Artefakte unter dem Pfad enthalten, angegeben Der optional. Lokatorparameter c eine Datei haben, die Dateien nur für diejenigen Anpassung der Wildcard) Medien-Typ zu begrenzen: application/zip

0

Generell gilt: Wenn es sich um eine Rest-API ist wird es bestimmte Konventionen folgen, das heißt:

GET /books/15 -> das Buch gibt mit der ID 15

GET /books -> gibt einen Array von verfügbaren Büchern

POST /books/15 -> aktualisiert das Buch mit ID 15

usw.

Es hängt jedoch wirklich von der Implementierung der API ab.

Manchmal können Sie auch eine Liste von Dateien auf einem Server standardmäßig über eine GET-Anfrage erhalten, aber das hängt von den Sicherheitseinstellungen des Webservers ab. Die meisten erlauben keine Verzeichnislisten standardmäßig.

Sie könnten diese versuchen:

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

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

+0

Ja, die Dateiliste funktioniert. Aber ich möchte sie alle gleichzeitig herunterladen. –

0

Ich glaube, das bereits auf dem Stapel beantwortet. sollten Sie verwenden:

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

* .lastfinished oder .lastPinned

Verwandte Themen