PublishToAzureServiceBus@0 - Publish To Azure Service Bus v0 task
Use this task to send a message to Azure Service Bus using a service connection (no agent required).
Syntax
# Publish To Azure Service Bus v0
# Sends a message to azure service bus using a service connection (no agent required).
- task: PublishToAzureServiceBus@0
inputs:
azureSubscription: # string. Alias: connectedServiceName. Required. Azure service bus connection.
messageBody: '{"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}' # string. Required. Message body. Default: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}.
#waitForCompletion: false # boolean. Wait for task completion. Default: false.
Inputs
azureSubscription
- Azure service bus connection
Input alias: connectedServiceName
. string
. Required.
Specifies an Azure Service Bus connection.
messageBody
- Message body
string
. Required. Default value: {"JobId": "$(system.jobId)", "PlanId": "$(system.planId)", "TimelineId": "$(system.timelineId)", "ProjectId": "$(system.teamProjectId)", "VstsUrl": "$(system.CollectionUri)","AuthToken": "$(system.AccessToken)"}
.
Specifies the JSON messageBody
.
waitForCompletion
- Wait for task completion
boolean
. Default value: false
.
If set to true
, this task will wait for the TaskCompleted event for the specified task timeout.
Task control options
All tasks have control options in addition to their task inputs. For more information, see Control options and common task properties.
Output variables
None.
Remarks
Use this task in an agentless job of a release pipeline to send a message to Azure Service Bus using a service connection (without using an agent).
Note
Can only be used in an agentless job of a release pipeline.
Where should a task signal completion?
To signal completion, the external service should POST completion data to the following pipelines REST endpoint.
{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" }
See this simple cmdline application for specifics.
In addition, a C# helper library is available to enable live logging and managing the task status for agentless tasks. Learn more about Async HTTP agentless tasks.
Requirements
Requirement | Description |
---|---|
Pipeline types | YAML, Classic build, Classic release |
Runs on | Server |
Demands | None |
Capabilities | This task does not satisfy any demands for subsequent tasks in the job. |
Command restrictions | Any |
Settable variables | Any |
Agent version | All supported agent versions. |
Task category | Utility |