Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ezzel a feladatsal meghívhat egy REST API-t a folyamat részeként.
Szinopszis
# Invoke REST API v1
# Invoke a REST API as a part of your pipeline.
- task: InvokeRESTAPI@1
inputs:
connectionType: 'connectedServiceName' # 'connectedServiceName' | 'connectedServiceNameARM'. Alias: connectedServiceNameSelector. Required. Connection type. Default: connectedServiceName.
serviceConnection: # string. Alias: connectedServiceName | genericService. Required when connectedServiceNameSelector = connectedServiceName. Generic service connection.
#azureServiceConnection: # string. Alias: connectedServiceNameARM | azureSubscription. Required when connectedServiceNameSelector = connectedServiceNameARM. Azure subscription.
method: 'POST' # 'OPTIONS' | 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'TRACE' | 'PATCH'. Required. Method. Default: POST.
#headers: # string. Headers.
#body: # string. Optional. Use when method != GET && method != HEAD. Body.
#urlSuffix: # string. URL suffix and parameters.
# Advanced
waitForCompletion: 'false' # 'true' | 'false'. Required. Completion event. Default: false.
#successCriteria: # string. Optional. Use when waitForCompletion = false. Success criteria.
Bemenetek
connectionType
-
kapcsolattípus
Bemeneti alias: connectedServiceNameSelector.
string. Szükséges. Engedélyezett értékek: connectedServiceName (általános), connectedServiceNameARM (Azure Resource Manager). Alapértelmezett érték: connectedServiceName.
Megadja a REST API meghívásához használandó szolgáltatáskapcsolat típusát. Válassza Azure Resource Manager- az Azure Management API meghívásához, vagy Általános minden más API-hoz.
általános szolgáltatáskapcsolati serviceConnection -
Bemeneti alias: connectedServiceName | genericService.
string.
connectedServiceNameSelector = connectedServiceNameesetén kötelező.
Megadja az általános szolgáltatáskapcsolatot, amely biztosítja a hívás alapurlát és a tevékenységhez használható engedélyezést.
Azure-előfizetés azureServiceConnection -
Bemeneti alias: connectedServiceNameARM | azureSubscription.
string.
connectedServiceNameSelector = connectedServiceNameARMesetén kötelező.
Az Azure Management API-k meghívásához konfigurálni és használni kívánt Azure Resource Manager-előfizetést adja meg.
method
-
metódus
string. Szükséges. Engedélyezett értékek: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PATCH. Alapértelmezett érték: POST.
Megadja az API-t meghívó HTTP-metódust.
headers
-
fejlécek
string. Alapértelmezett érték: {\n"Content-Type":"application/json", \n"PlanUrl": "$(system.CollectionUri)", \n"ProjectId": "$(system.TeamProjectId)", \n"HubName": "$(system.HostType)", \n"PlanId": "$(system.PlanId)", \n"JobId": "$(system.JobId)", \n"TimelineId": "$(system.TimelineId)", \n"TaskInstanceId": "$(system.TaskInstanceId)", \n"AuthToken": "$(system.AccessToken)"\n}.
A fejlécet JSON formátumban határozza meg. A fejléc az API-nak küldött kéréssel együtt van csatolva.
body
-
törzs
string. Opcionális. Használja a method != GET && method != HEAD.
A függvényhívás kérelemtörzsét adja meg JSON formátumban.
urlSuffix
-
URL-utótag és paraméterek
string.
Megadja azt a sztringet, amely hozzáfűzendő a baseUrlhez az általános szolgáltatáskapcsolatból a HTTP-hívás során.
Példa: Ha a szolgáltatáskapcsolat URL-címe https:...TestProj/_apis/Release/releases, és az URL-utótag /2/environments/1, a szolgáltatáskapcsolat URL-címe https:.../TestProj/_apis/Release/releases/2/environments/1lesz. Ha az URL-utótag ?definitionId=1&releaseCount=1, akkor a szolgáltatáskapcsolat URL-címe https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1lesz.
waitForCompletion
-
Befejezési esemény
string. Szükséges. Engedélyezett értékek: true (Visszahívás), false (ApiResponse). Alapértelmezett érték: false.
A tevékenységjelentések befejezésének módját adja meg. Az engedélyezett értékek a következők:
-
false- API-válasz: a jelentés akkor fejeződik be, ha a függvény 20 másodpercen belül sikert ad vissza, és a sikerességi feltételek igaznak bizonyulnak. -
true- Visszahívási: a jelentések akkor fejeződnek be, amikor a külső szolgáltatás visszahívást végez az ütemtervrekord frissítéséhez.
successCriteria
-
sikerességi feltételek
string. Opcionális. Használja a waitForCompletion = false.
Megadja a tevékenység sikerességi feltételeit. A válasz tartalma nem befolyásolja az eredményt, ha nincs meghatározva feltétel. Alapértelmezés szerint a feladat akkor halad át, amikor a hívás 200 OKad vissza.
Példa: Válasz {"status" : "successful"}esetén a kifejezés eq(root['status'], 'successful')lehet. További információ feltételek megadásáról.
Feladatvezérlési lehetőségek
Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlők és gyakori feladattulajdonságok.
Kimeneti változók
Nincs.
Megjegyzések
Megjegyzés
Ez a feladat csak ügynök nélküli feladathasználható.
Sikeres lesz, ha az API sikert ad vissza, és a választörzs elemzése sikeres, vagy ha az API sikerrel frissíti az ütemtervrekordot.
A REST API-feladat meghívása nem hajt végre közvetlenül üzembe helyezési műveleteket. Ehelyett lehetővé teszi az általános HTTP REST API meghívását az automatizált folyamat részeként, és opcionálisan várja meg, amíg befejeződik.
A feladat használatáról további információt Jóváhagyások és kapuk áttekintésecímű témakörben talál.
Milyen alap URL-címeket használnak az Azure Management API-k meghívásakor?
Az Azure felügyeleti API-k meghívása a kiválasztott környezet ResourceManagerEndpoint használatával történik. Például https://management.azure.com akkor használatos, ha az előfizetés egy AzureCloud környezetben van.
Hol fejeződjön be a feladat, ha Visszahívási van kiválasztva a befejezési eseményként?
A befejezés jelzéséhez a külső szolgáltatásnak POST befejezési adatokat kell tartalmaznia a következő folyamatok REST-végpontjának.
{planUri}/{projectId}/_apis/distributedtask/hubs/{hubName}/plans/{planId}/events?api-version=2.0-preview.1
**Request Body**
{ "name": "TaskCompleted", "taskId": "taskInstanceId", "jobId": "jobId", "result": "succeeded" }
Részletekért tekintse meg ezt az egyszerű parancsmagalkalmazást.
Emellett egy C#-segédtár is rendelkezésre áll az élő naplózás engedélyezéséhez és az ügynök nélküli tevékenységek feladatállapotának kezeléséhez. További információ
Használhatom a válasz törzsét egy másik feladat bemeneteként?
Nem, mivel ez a tevékenység ügynök nélküli tevékenység, és a TFS belső HttpRequestjét használja, amely nem adja vissza a HTTP-kérés tartalmát.
Példa
steps:
- task: InvokeRESTAPI@1
displayName: 'Invoke REST API: GET'
inputs:
serviceConnection: 'generic_demo'
method: GET
successCriteria: 'eq(root[''count''], ''1425'')'
Ebben a példában a feladat akkor sikeres, ha a válasz megfelel a successCriteria: eq(root[''count';, ''1425'' ).
Követelmények
| Követelmény | Leírás |
|---|---|
| Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
| Futtatás bekapcsolva | Kiszolgáló, ServerGate |
| Követelmények | Egyik sem |
| képességek | Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
| parancskorlátozások | Bármely |
| Változók beállítása | Bármely |
| Ügynök verziója | Minden támogatott ügynökverzió. |
| Tevékenységkategória | Üzembe helyezés |