Udostępnij za pośrednictwem


InvokeRESTAPI@0 — wywoływanie zadania interfejsu API REST w wersji 0

To zadanie służy do wywoływania interfejsu API REST w ramach potoku.

Składnia

# 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.

Dane wejściowe

serviceConnection - ogólnego punktu końcowego
Alias wejściowy: connectedServiceName. string. To jest wymagane.

Określa ogólne połączenie usługi, które zapewnia baseURL dla wywołania i autoryzacji do użycia dla zadania.


metody method -
string. To jest wymagane. Dozwolone wartości: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, PATCH. Wartość domyślna: POST.

Określa metodę HTTP, która wywołuje interfejs API.


headers - nagłówków
string. Wartość domyślna: {\n"Content-Type":"application/json"\n}.

Definiuje nagłówek w formacie JSON. Nagłówek jest dołączony do żądania wysłanego do interfejsu API.


body - Treść
string. Opcjonalny. Użyj polecenia , gdy method != GET && method != HEAD. Wartość domyślna: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.

Określa treść żądania dla wywołania funkcji w formacie JSON.


ciągu sufiksu adresu URL urlSuffix -
string.

Określa ciąg, który ma być dołączany do elementu baseUrl z ogólnego połączenia usługi podczas wykonywania wywołania HTTP.

Przykład: jeśli adres URL połączenia z usługą jest https:...TestProj/_apis/Release/releases, a sufiks adresu URL jest /2/environments/1, adres URL połączenia usługi stanie się https:.../TestProj/_apis/Release/releases/2/environments/1. Jeśli sufiks adresu URL jest ?definitionId=1&releaseCount=1, adres URL połączenia usługi stanie się https//...TestProj/_apis/Release/releases?definitionId=1&releaseCount=1.


waitForCompletion - Complete na podstawie
string. To jest wymagane. Dozwolone wartości: true (wywołanie zwrotne), false (ApiResponse). Wartość domyślna: false.

Określa sposób wykonywania raportów zadań. Dozwolone wartości to:

  • false - odpowiedzi interfejsu API: uzupełnianie raportów, gdy funkcja zwraca powodzenie w ciągu 20 sekund, a kryteria sukcesu są obliczane na wartość true.
  • true - wywołania zwrotnego: zgłasza ukończenie, gdy usługa zewnętrzna wykonuje wywołanie zwrotne w celu zaktualizowania rekordu osi czasu.

successCriteria - kryteria sukcesu
string. Opcjonalny. Użyj polecenia , gdy waitForCompletion = false.

Określa kryteria powodzenia zadania. Zawartość odpowiedzi nie ma wpływu na wynik, jeśli nie zdefiniowano żadnych kryteriów. Domyślnie zadanie przechodzi, gdy wywołanie zwraca 200 OK.

Przykład: w przypadku {"status" : "successful"}odpowiedzi wyrażenie może być eq(root['status'], 'successful'). Dowiedz się więcej o określaniu warunków.


Opcje sterowania zadaniami

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.

Zmienne wyjściowe

Żaden.

Uwagi

Uwaga

Tego zadania można używać tylko w zadania bez agenta.

Powiedzie się, jeśli interfejs API zwróci powodzenie, a treść odpowiedzi zakończy się powodzeniem lub gdy interfejs API zaktualizuje rekord osi czasu z powodzeniem.

Zadanie Wywołaj interfejs API REST nie wykonuje bezpośrednio akcji wdrażania. Zamiast tego umożliwia wywoływanie dowolnego ogólnego interfejsu API REST HTTP w ramach zautomatyzowanego potoku i opcjonalnie poczekaj na jego ukończenie.

Konfigurowanie zadania wywoływania interfejsu API REST

Aby uzyskać więcej informacji na temat korzystania z tego zadania, zobacz Zatwierdzenia i bramy — omówienie.

Jakie podstawowe adresy URL są używane podczas wywoływania interfejsów API usługi Azure Management?

Interfejsy API zarządzania platformy Azure są wywoływane przy użyciu ResourceManagerEndpoint wybranego środowiska. Na przykład https://management.Azure.com jest używana, gdy subskrypcja znajduje się w środowisku AzureCloud.

Gdzie należy sygnalizować ukończenie zadania po wybraniu wywołania zwrotnego jako zdarzenia ukończenia?

Aby zasygnalizować ukończenie, usługa zewnętrzna powinna wykonać dane post do następującego punktu końcowego REST potoków.

{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" }

Aby uzyskać szczegółowe informacje, zobacz tej prostej aplikacji wiersza polecenia.

Ponadto dostępna jest biblioteka pomocnika języka C#umożliwiająca rejestrowanie na żywo i zarządzanie stanem zadań dla zadań bez agentów. Dowiedz się więcej

Czy mogę użyć treści odpowiedzi jako danych wejściowych dla innego zadania?

Nie, ponieważ to zadanie jest zadaniem bez agenta i używa wewnętrznego żądania HTTPRequest serwera TFS, który nie zwraca zawartości żądania HTTP.

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Serwer, ServerGate
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta Wszystkie obsługiwane wersje agentów.
Kategoria zadań Wdroż