Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Envia uma mensagem para o Barramento de Serviço do Azure usando uma conexão de serviço (nenhum agente é necessário).
Esta versão da tarefa dá suporte à ID do Entra e à federação de identidades de carga de trabalho por meio de sua entrada de conexão de serviço do Azure Resource Manager (azureSubscription
). Para obter mais informações, consulte a seção Comentários a seguir.
Sintaxe
# Publish To Azure Service Bus v2
# Sends a message to Azure Service Bus using an Azure Resource Manager service connection (no agent is required).
- task: PublishToAzureServiceBus@2
inputs:
azureSubscription: # string. Alias: connectedServiceName. Required. Azure Resource Manager service connection.
serviceBusQueueName: # string. Required. Azure Service Bus Queue name.
serviceBusNamespace: # string. Required. Azure Service Bus Namespace.
#messageBody: # string. Message body.
#waitForCompletion: false # boolean. Wait for task completion. Default: false.
#useDataContractSerializer: true # boolean. Use .NET data contract serializer. Default: true.
# Advanced
#sessionId: # string. Session Id.
#signPayload: false # boolean. Sign the Message. Default: false.
#certificateString: # string. Required when signPayload = true. Certificate Variable.
#signatureKey: 'signature' # string. Optional. Use when signPayload = true. Signature Property Key. Default: signature.
Insumos
azureSubscription
-
Conexão de serviço do Azure Resource Manager
Alias de entrada: connectedServiceName
.
string
. Obrigatório
Especifica uma conexão de serviço do Azure Resource Manager.
serviceBusQueueName
-
Nome da fila do Barramento de Serviço do Azure
string
. Obrigatório
Especifique o nome da fila para a qual a mensagem se destina.
serviceBusNamespace
-
Namespace do Barramento de Serviço do Azure
string
. Obrigatório
Especifique o namespace do seu Barramento de Serviço do Azure.
messageBody
-
Corpo da mensagem
string
.
Especifica o JSON messageBody
.
sessionId
-
ID da sessão
string
.
Especifica a ID da sessão com a qual a mensagem é publicada. Para filas baseadas em sessão, a publicação falhará se um valor não for especificado. Para filas não baseadas em sessão, um valor não precisa ser especificado.
signPayload
-
assinar a mensagem
boolean
. Valor predefinido: false
.
Se definido como true
, um certificado privado será adicionado à mensagem.
certificateString
-
variável de certificado
string
. Necessário quando signPayload = true
.
Especifica a variável secreta que contém o conteúdo do certificado. Isso também pode ser um certificado armazenado em um cofre de chaves do Azure que está vinculado a um grupo de variáveis usado pelo pipeline de versão.
signatureKey
-
Chave de propriedade de assinatura
string
. Opcional. Use quando signPayload = true
. Valor predefinido: signature
.
Em Propriedades da Mensagem, especifica a chave onde está a assinatura. Se deixado vazio, o valor padrão é signature
.
waitForCompletion
-
Aguarde a conclusão da tarefa
boolean
. Valor predefinido: false
.
Se definido como true
, esta tarefa aguardará o evento TaskCompleted para o tempo limite da tarefa especificado.
useDataContractSerializer
-
Usar o serializador de contrato de dados .NET
boolean
. Valor predefinido: true
.
Defina useDataContractSerializer
como false
se quiser passar sua mensagem como um fluxo em vez de um objeto.
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Nenhum.
Observações
Use esta tarefa em um trabalho sem agente de um pipeline de liberação para enviar uma mensagem para um Barramento de Serviço do Azure usando uma conexão de serviço (sem usar um agente).
Observação
Só pode ser usado em um trabalho sem agente de um pipeline de liberação.
Acessar o Barramento de Serviço do Azure a partir de Pipelines usando a autenticação de ID do Entra
Agora você pode usar a autenticação de ID do Entra para acessar o Barramento de Serviço do Azure a partir do Azure Pipelines. Isso permite que você aproveite a federação de identidades de carga de trabalho para remover o gerenciamento de segredos e o RBAC do Azure para controle de acesso refinado.
As identidades que acessam o Barramento de Serviço do Azure precisarão receber uma das funções internas do Azure para o Barramento de Serviço do Azure no Barramento de Serviço acessado.
A PublishToAzureServiceBus@2
tarefa pode ser configurada usando uma conexão de serviço do Azure Resource Manager. Crie uma conexão de serviço do Azure Resource Manager e preencha as serviceBusQueueName
propriedades e serviceBusNamespace
da tarefa:
- task: PublishToAzureServiceBus@2
inputs:
azureSubscription: my-azure-service-connection
serviceBusQueueName: my-service-bus-queue
serviceBusNamespace: my-service-bus-namespace
useDataContractSerializer: false
messageBody: |
{
"property": "value"
}
Onde deve ser concluída uma tarefa?
Para sinalizar a conclusão, o serviço externo deve enviar dados de conclusão POST para o ponto de extremidade REST dos seguintes pipelines.
{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" }
O Azure DevOps preenche automaticamente o ServiceBusReceivedMessage.ApplicationProperties.
Consulte este de aplicação cmdline simples para obter detalhes.
Além disso, uma biblioteca auxiliar em C# está disponível para habilitar o registro em tempo real e o gerenciamento do status da tarefa para tarefas sem agente. Saiba mais sobre tarefas HTTP assíncronas sem agente.
Requerimentos
Requisito | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Servidor |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | Todas as versões de agente suportadas. |
Categoria de tarefa | Utilidade |