InvokeRESTAPI@0 - REST API v0 görevini çağırma
İşlem hattınızın bir parçası olarak REST API'yi çağırmak için bu görevi kullanın.
Syntax
# Invoke REST API v0
# Invoke REST API as a part of your process.
- task: InvokeRESTAPI@0
inputs:
serviceConnection: # string. Alias: connectedServiceName. Required. Generic endpoint.
method: 'POST' # 'OPTIONS' | 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'TRACE' | 'PATCH'. Required. Method. Default: POST.
#headers: # string. Headers.
#body: '{"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}' # string. Optional. Use when method != GET && method != HEAD. Body. Default: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.
#urlSuffix: # string. Url suffix string.
# Completion Options
waitForCompletion: 'false' # 'true' | 'false'. Required. Complete based on. Default: false.
#successCriteria: # string. Optional. Use when waitForCompletion = false. Success criteria.
Girişler
serviceConnection
- Genel uç nokta
Giriş diğer adı: connectedServiceName
. string
. Gereklidir.
Çağrı için öğesini ve görev için kullanılacak yetkilendirmeyi sağlayan baseURL
genel hizmet bağlantısını belirtir.
method
- Yöntem
string
. Gereklidir. İzin verilen değerler: OPTIONS
, GET
, HEAD
, POST
, , PUT
, DELETE
, TRACE
, PATCH
. Varsayılan değer: POST
.
API'yi çağıran HTTP yöntemini belirtir.
headers
- Üstbilgi
string
. Varsayılan değer: {\n"Content-Type":"application/json"\n}
.
Üst bilgiyi JSON biçiminde tanımlar. Üst bilgi, API'ye gönderilen istekle birlikte eklenir.
body
- Vücut
string
. İsteğe bağlı. olduğunda method != GET && method != HEAD
kullanın. Varsayılan değer: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}
.
İşlev çağrısının istek gövdesini JSON biçiminde belirtir.
urlSuffix
- Url sonek dizesi
string
.
HTTP çağrısı yapılırken genel hizmet bağlantısından baseUrl öğesine eklenecek dizeyi belirtir.
Örnek: Hizmet bağlantısı URL'si ve https:...TestProj/_apis/Release/releases
URL son eki ise /2/environments/1
, hizmet bağlantısı URL'si olur https:.../TestProj/_apis/Release/releases/2/environments/1
. URL son eki ise ?definitionId=1&releaseCount=1
, hizmet bağlantısı URL'si olur https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1
.
waitForCompletion
- Şunu temel alarak tamamla:
string
. Gereklidir. İzin verilen değerler: true
(Geri Çağırma), false
(ApiResponse). Varsayılan değer: false
.
Görevin tamamlanma durumunu nasıl raporlamasını belirtir. İzin verilen değerler şunlardır:
false
- API yanıtı: İşlev 20 saniye içinde başarı döndürdüğünde tamamlanmayı bildirir ve başarı ölçütleri true olarak değerlendirilir.true
- Geri arama: Dış hizmet zaman çizelgesi kaydını güncelleştirmek için geri arama yaptığında tamamlanma durumunu bildirir.
successCriteria
- Başarı ölçütleri
string
. İsteğe bağlı. olduğunda waitForCompletion = false
kullanın.
Görevin başarı ölçütlerini belirtir. Ölçüt tanımlanmadıysa yanıt içeriği sonucu etkilemez. Varsayılan olarak, çağrı döndürdüğünde 200 OK
görev geçer.
Örnek: Yanıt {"status" : "successful"}
için ifadesi olabilir eq(root['status'], 'successful')
. Koşulları belirtme hakkında daha fazla bilgi edinin.
Görev denetim seçenekleri
Tüm görevlerde görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.
Çıkış değişkenleri
Yok.
Açıklamalar
Not
Bu görev yalnızca aracısız bir işte kullanılabilir.
API başarı döndürdüğünde ve yanıt gövdesi ayrıştırma başarılı olursa veya API zaman çizelgesi kaydını başarılı bir şekilde güncelleştirdiğinde başarılı olur.
REST API'yi Çağır görevi doğrudan dağıtım eylemleri gerçekleştirmez. Bunun yerine, otomatik işlem hattının bir parçası olarak herhangi bir genel HTTP REST API'sini çağırmanıza ve isteğe bağlı olarak tamamlanmasını beklemenize olanak tanır.
Bu görevi kullanma hakkında daha fazla bilgi için bkz . Onaylara ve geçitlere genel bakış.
Azure Yönetim API'leri çağrılırken hangi temel URL'ler kullanılır?
Azure yönetim API'leri seçilen ortamın ResourceManagerEndpoint kullanılarak çağrılır. Örneğin https://management.Azure.com
, abonelik bir AzureCloud ortamındayken kullanılır.
Geri Arama tamamlanma olayı olarak seçildiğinde görev sinyalinin nerede tamamlanması gerekir?
Tamamlanma sinyali vermek için dış hizmetin tamamlama verilerini aşağıdaki işlem hatları REST uç noktasına göndermesi gerekir.
{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" }
Ayrıntılar için bu basit cmdline uygulamasına bakın.
Ayrıca, aracısız görevler için canlı günlüğe kaydetmeyi ve görev durumunu yönetmeyi etkinleştirmek için bir C# yardımcı kitaplığı sağlanır. Daha fazla bilgi edinin
Yanıt gövdesini başka bir görevin girişi olarak kullanabilir miyim?
Hayır, çünkü bu görev aracısız bir görevdir ve HTTP isteğinin içeriğini döndürmeyen TFS'nin iç HttpRequest'ini kullanır.
Gereksinimler
Gereksinim | Açıklama |
---|---|
İşlem hattı türleri | YAML, Klasik derleme, Klasik sürüm |
Üzerinde çalıştırılır | Server, ServerGate |
Talep | Hiçbiri |
Özellikler | Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz. |
Komut kısıtlamaları | Herhangi biri |
Ayarlanabilir değişkenler | Herhangi biri |
Aracı sürümü | Desteklenen tüm aracı sürümleri. |
Görev kategorisi | Dağıtma |