Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Skickar ett meddelande till Azure Service Bus med hjälp av en tjänstanslutning (ingen agent krävs).
Den här versionen av uppgiften stöder Entra-ID och arbetsbelastningsidentitetsfederation via dess Azure Resource Manager-tjänstanslutningsindata (azureSubscription). Mer information finns i avsnittet Kommentarer .
Syntax
# 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.
Ingångar
              azureSubscription
               - 
              Anslutning till Azure Resource Manager-tjänsten
              Indataalias: connectedServiceName. 
              string. Obligatoriskt.
Anger en Azure Resource Manager-tjänstanslutning.
              serviceBusQueueName
               - 
              Namn på Azure Service Bus-kö
              string. Obligatoriskt.
Ange namnet på den kö som meddelandet är avsett för.
              serviceBusNamespace
               - 
              Azure Service Bus-namnområde
              string. Obligatoriskt.
Ange namnområdet för din Azure Service Bus.
              messageBody
               - 
              Meddelandetext
              string.
Anger JSON-messageBody.
              sessionId
               - 
              sessions-ID
              string.
Anger sessions-ID som meddelandet publiceras med. För sessionsbaserade köer misslyckas publiceringen om ett värde inte har angetts. För icke-sessionsbaserade köer behöver inget värde anges.
              signPayload
               - 
              Signera meddelandet
              boolean. Standardvärde: false.
Om värdet är inställt på trueläggs ett privat certifikat till i meddelandet.
              certificateString
               - 
              certifikatvariabel
              string. Krävs när signPayload = true.
Anger den hemliga variabel som innehåller certifikatinnehållet. Detta kan också vara ett certifikat som lagras i ett Azure-nyckelvalv som är länkad till en variabelgrupp som används av versionspipelinen.
              signatureKey
               - 
              signaturegenskapsnyckel
              string. Valfritt. Använd när signPayload = true. Standardvärde: signature.
I Meddelandeegenskaper anger du nyckeln där signaturen finns. Om det lämnas tomt är standardvärdet signature.
              waitForCompletion
               - 
              Vänta tills uppgiften har slutförts
              boolean. Standardvärde: false.
Om den här aktiviteten är inställd på trueväntar den på händelsen TaskCompleted för den angivna tidsgränsen för aktiviteten.
              useDataContractSerializer
               - 
              Använda serialiserare för .
              boolean. Standardvärde: true.
Ange useDataContractSerializer till false om du vill skicka meddelandet som en ström i stället för ett objekt.
Alternativ för uppgiftskontroll
Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.
Utdatavariabler
Ingen.
Anmärkningar
Använd den här uppgiften i ett agentlöst jobb av en versionspipeline för att skicka ett meddelande till en Azure Service Bus med hjälp av en tjänstanslutning (utan att använda en agent).
Anmärkning
Kan endast användas i ett agentlöst jobb för en versionspipeline.
Få åtkomst till Azure Service Bus från pipelines med hjälp av Entra-ID-autentisering
Nu kan du använda Entra-ID-autentisering för att få åtkomst till Azure Service Bus från Azure Pipelines. På så sätt kan du dra nytta av arbetsbelastningsidentitetsfederation för att ta bort hemlighetshantering och Azure RBAC för detaljerad åtkomstkontroll.
Identiteter som har åtkomst till Azure Service Bus måste beviljas en av de inbyggda Azure-rollerna för Azure Service Bus på den Service Bus som används.
Uppgiften PublishToAzureServiceBus@2 kan konfigureras med hjälp av en Azure Resource Manager-tjänstanslutning. Skapa en Azure Resource Manager-tjänstanslutning och fyll i egenskaperna och serviceBusQueueNameserviceBusNamespace för uppgiften:
- task: PublishToAzureServiceBus@2
  inputs:
    azureSubscription: my-azure-service-connection
    serviceBusQueueName: my-service-bus-queue
    serviceBusNamespace: my-service-bus-namespace
    useDataContractSerializer: false
    messageBody: |
      {
        "property": "value"
      }
Var ska en uppgift signalera slutförande?
För att signalera slutförande bör den externa tjänsten POST-slutförandedata till följande REST-slutpunkt för 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" }
Azure DevOps fyller automatiskt i ServiceBusReceivedMessage.ApplicationProperties.
Mer information finns i det här enkla cmdline-programmet.
Dessutom finns ett C#-hjälpbibliotek tillgängligt för att aktivera liveloggning och hantera uppgiftsstatus för agentlösa uppgifter. Läs mer om Async HTTP-agentlösa uppgifter.
Kravspecifikation
| Krav | Beskrivning | 
|---|---|
| Pipelinetyper | YAML, klassisk version, klassisk version | 
| Körs på | Server | 
| Krav | Ingen | 
| Kapaciteter | Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet. | 
| Kommandobegränsningar | Vilken som helst | 
| variabler som kan | Vilken som helst | 
| Agentversion | Alla agentversioner som stöds. | 
| Aktivitetskategori | Nyttighet |