Automatisera kompilering och distribution för standardarbetsflöden för logikappar med Azure DevOps
För standardarbetsflöden för logikappar som körs i Azure Logic Apps med en enda klientorganisation kan du använda Visual Studio Code med Tillägget Azure Logic Apps (Standard) för att lokalt utveckla, testa och lagra ditt logikappprojekt med valfritt källkontrollsystem. Men för att få alla fördelar med att enkelt och konsekvent distribuera dina arbetsflöden i olika miljöer och plattformar måste du också automatisera bygg- och distributionsprocessen.
Tillägget Azure Logic Apps (Standard) innehåller verktyg som du kan använda för att skapa och underhålla automatiserade bygg- och distributionsprocesser med Azure DevOps. Tänk dock på följande element innan du påbörjar den här automatiseringen:
Azure-logikappresursen där du skapar dina arbetsflöden
De Azure-värdbaserade anslutningar som arbetsflöden använder och skapas från Microsoft-hanterade anslutningsappar.
Dessa anslutningar skiljer sig från de anslutningar som körs direkt och internt med Azure Logic Apps-körningen.
De specifika inställningarna och parametrarna för de olika miljöer där du vill distribuera
Tillägget hjälper dig att utföra följande nödvändiga uppgifter för att automatisera kompilering och distribution:
Parametrisera anslutningsreferenser vid designtillfället. Den här uppgiften förenklar processen med att uppdatera referenser i olika miljöer utan att bryta lokala utvecklingsfunktioner.
Generera skript som automatiserar distributionen för din standardlogikappresurs, inklusive alla beroende resurser.
Generera skript som automatiserar distributionen för Azure-värdbaserade anslutningar.
Förbered miljöspecifika parametrar som du kan mata in i Azure Logic Apps-paketet under byggprocessen utan att bryta den lokala utvecklingsfunktionen.
Generera pipelines på begäran med hjälp av Azure DevOps för att stödja infrastrukturdistribution tillsammans med bygg- och lanseringsprocesserna.
Den här guiden visar hur du utför följande uppgifter:
Skapa en logikappsarbetsyta och ett projekt i Visual Studio Code som innehåller de filer som skapar pipelines för infrastrukturdistribution, kontinuerlig integrering (CI) och kontinuerlig distribution (CD).
Skapa en anslutning mellan din arbetsyta och Git-lagringsplats i Azure DevOps.
Skapa pipelines i Azure DevOps.
Mer information finns i följande dokumentation:
Kända problem och begränsningar
Den här funktionen stöder endast standardlogikappprojekt. Om din Visual Studio Code-arbetsyta innehåller både ett standardlogikappprojekt och ett anpassat kodprojekt för Functions har båda distributionsskripten genererade, men anpassade kodprojekt ignoreras för närvarande. Möjligheten att skapa byggpipelines för anpassad kod finns i översikten.
Tillägget skapar pipelines för infrastrukturdistribution, kontinuerlig integrering (CI) och kontinuerlig distribution (CD). Du ansvarar dock för att ansluta pipelines till Azure DevOps och skapa relevanta utlösare.
Tillägget stöder för närvarande endast Azure Resource Management-mallar (ARM-mallar) för distributionsskript för infrastruktur. Andra mallar håller på att planeras.
Förutsättningar
Ett Azure-konto och prenumeration. Om du inte har någon prenumeration kan du registrera ett kostnadsfritt Azure-konto.
Visual Studio Code med Tillägget Azure Logic Apps (Standard). Information om hur du uppfyller dessa krav finns i förutsättningarna för att skapa standardarbetsflöden med Visual Studio Code.
Bygg- och versionsaktiviteter för Azure Logic Apps (Standard) för Azure DevOps-uppgifter. Du hittar de här uppgifterna på Azure DevOps Marketplace.
En befintlig Git-lagringsplats i Azure DevOps där du kan lagra ditt logikappsprojekt.
En Azure Resource Manager-tjänstanslutning med ett befintligt huvudnamn för tjänsten.
En befintlig Azure-resursgrupp där du vill distribuera logikappen.
Skapa en logikappsarbetsyta, ett projekt och ett arbetsflöde
I Visual Studio Code går du till aktivitetsfältet och väljer Azure-ikonen.
I Azure-fönstret i verktygsfältet Arbetsyta öppnar du Menyn Azure Logic Apps och väljer Skapa ny arbetsyta för logikappen.
Följ anvisningarna för att slutföra följande uppgifter:
Välj mappen för att skapa din arbetsyta.
Ange namnet på arbetsytan.
Välj projekttyp: Logikapp
Ange namnet på logikappens projekt.
Välj arbetsflödesmallen. Ange arbetsflödets namn.
Välj om du vill öppna arbetsytan i det aktuella Visual Studio Code-fönstret eller ett nytt fönster.
Visual Studio Code visar den nya arbetsytan och logikappsprojektet.
Följ dessa steg för att öppna arbetsflödesdesignern:
I logikappprojektet expanderar du mappen med ditt arbetsflödesnamn.
Om den inte redan är öppen öppnar du filen workflow.json , öppnar filens snabbmeny och väljer Öppna designer.
När du uppmanas att tillåta parameteriseringar för anslutningar när projektet läses in väljer du Ja.
Med det här valet kan ditt projekt använda parametrar i anslutningsdefinitioner så att du kan automatisera bygget och distributionen för olika miljöer.
Följ anvisningarna för att välja dessa objekt:
Använda anslutningsappar från Azure
Kommentar
Om du hoppar över det här steget kan du bara använda de inbyggda anslutningsappar som körs. Följ dessa steg om du vill aktivera Microsoft-hanterade, Azure-värdbaserade anslutningsappar vid ett senare tillfälle:
Öppna snabbmenyn för filen workflow.json och välj Använd anslutningsappar från Azure.
Välj en befintlig Azure-resursgrupp som du vill använda för din logikapp.
Ladda om arbetsflödesdesignern.
Den befintliga Azure-resursgrupp som du vill använda för din logikapp
När du är klar läser du in arbetsflödesdesignern igen. Logga in på Azure om du uppmanas att göra det.
Nu kan du redigera arbetsflödet på valfritt sätt och lokalt testa arbetsflödet längs vägen. Information om hur du skapar och testar ett exempelarbetsflöde finns i Skapa standardarbetsflöden med Visual Studio Code.
Generera distributionsskript
När du har skapat och testat arbetsflödet lokalt skapar du dina distributionsskript.
Från det tomma området under alla projektfiler öppnar du projektets snabbmeny och väljer Generera distributionsskript.
Följ anvisningarna för att slutföra dessa steg:
Välj den befintliga Azure-resursgruppen som ska användas för din logikapp.
Ange ett unikt namn för logikappresursen.
Ange ett unikt namn för lagringskontoresursen.
Ange ett unikt namn som ska användas för din App Service-plan.
Välj den arbetsytemapp där du vill generera filerna.
Plats för distributionsmapp beskrivning Ny distributionsmapp (standard) Skapa en ny mapp på den aktuella arbetsytan. Välj en annan mapp Välj en annan mapp på den aktuella arbetsytan.
När du är klar skapar Visual Studio Code en mapp med namnet deployment/{logic-app-name} i arbetsytans rot. Den här mappen använder samma logikappnamn som du angav i de här stegen.
Kommentar
Värdena för variabler, appinställningar och parametrar i följande filer fylls i i förväg baserat på de indata som du angav i de här stegen. När du riktar in dig på en annan miljö kontrollerar du att du uppdaterar värdena för de skapade parametrarna och variabelfilerna.
Under mappen {logic-app-name} har du följande struktur:
Mappnamn Filnamn och beskrivning ADOPipelineScripts - CD-pipeline.yml: Pipelinen för kontinuerlig leverans som innehåller instruktionerna för att distribuera logikappkoden till logikappresursen i Azure.
- CD-pipeline-variables.yml: En YAML-fil som innehåller variablerna som används av CD-pipeline.yml-filen.
- CI-pipeline.yml: Pipelinen för kontinuerlig integrering som innehåller instruktioner för att skapa och generera artefakter som krävs för att distribuera logikappresursen till Azure.
- CI-pipeline-variables.yml: En YAML-fil som innehåller variablerna som används av CI-pipeline.yml-filen.
- infrastructure-pipeline.yml: En YAML-pipeline med "Infrastruktur som kod" som innehåller instruktioner för att läsa in alla ARM-mallar till Azure och köra stegen i infrastructure-pipeline-template.yml-filen.
- infrastructure-pipeline-template.yml: En YAML-pipelinefil som innehåller stegen för att distribuera en logikappresurs med alla nödvändiga beroenden och distribuera varje hanterad anslutning som krävs av källkoden.
- infrastructure-pipeline-variables.yml: En YAML-pipeline som innehåller alla variabler som krävs för att köra stegen i infrastructure-pipeline-template.yml-filen.ArmTemplates - {connection-type}.parameters.json: En Resource Manager-parameterfil som innehåller de parametrar som krävs för att distribuera en Azure-värdbaserad anslutning med namnet {connection-type} till Azure. Den här filen finns för varje Azure-värdbaserad anslutning i arbetsflödet.
- {anslutningstyp}.template.json: En Resource Manager-mallfil som representerar en Azure-värdbaserad anslutning med namnet {connection-reference} och som innehåller den information som används för att distribuera motsvarande anslutningsresurs till Azure. Den här filen finns för varje Azure-värdbaserad anslutning i arbetsflödet.
- {logic-app-name}.parameters.json: En Resource Manager-parameterfil som innehåller de parametrar som krävs för att distribuera standardlogikappresursen med namnet {logic-app-name} till Azure, inklusive alla beroenden.
- {logic-app-name}.template.json: En Resource Manager-mallfil som representerar standardlogikappresursen med namnet {logic-app-name} och innehåller den information som används för att distribuera logikappresursen till Azure.WorkflowParameters parameters.json: Den här JSON-filen är en kopia av filen med lokala parametrar och innehåller en kopia av alla användardefinierade parametrar plus molnversionen av alla parametrar som skapas av tillägget för att parametrisera Azure-värdbaserade anslutningar. Den här filen används för att skapa paketet som distribueras till Azure.
Ansluta din arbetsyta till din Git-lagringsplats
Följ dessa steg för att initiera lagringsplatsen:
I Visual Studio Code går du till aktivitetsfältet och väljer ikonen Källkontroll .
I fönstret Källkontroll väljer du Initiera lagringsplats.
På promptmenyn väljer du Välj mapp. Välj arbetsytans rotmapp och välj sedan Initiera lagringsplats.
I fönstret Källkontroll väljer du Öppna lagringsplats.
På snabbmenyn väljer du den lagringsplats som du nyss skapade.
Mer information finns i Visual Studio Code – Initiera en lagringsplats i en lokal mapp.
Följ dessa steg för att hämta URL:en för din Git-lagringsplats så att du kan lägga till en fjärranslutning:
I Azure DevOps öppnar du teamprojektet för din Azure DevOps-organisation.
På den vänstra menyn expanderar du Lagringsplatser och väljer Filer.
I verktygsfältet Filer väljer du Klona.
I fönstret Klona lagringsplats kopierar du HTTPS-versionen av klonens URL.
Mer information finns i Hämta klonings-URL:en för din Git-lagringsplats i Azure Repos.
Följ de här stegen för att lägga till en fjärranslutning för din Git-lagringsplats:
I prompten klistrar du in den kopierade URL:en och anger ett namn på fjärren, som vanligtvis är ursprung.
Nu har du skapat en anslutning mellan Visual Studio Code och lagringsplatsen.
Innan du konfigurerar dina pipelines i nästa avsnitt öppnar du filen CD-pipeline.yml och byter namn på CI-pipelinen
source
i attributet så att den matchar det CI-pipelinenamn som du vill använda.I fönstret Källkontroll checkar du in ändringarna och publicerar dem på lagringsplatsen.
Mer information finns i Steg- och incheckningskodändringar.
Skapa pipelines i Azure DevOps
Om du vill skapa infrastrukturen tillsammans med CI- och CD-pipelines i Azure DevOps upprepar du följande steg för var och en av följande pipelinefiler:
- infrastructure-pipeline.yml för pipelinen "Infrastruktur som kod".
- CI-pipeline.yml för pipelinen för kontinuerlig integrering.
- CD-pipeline.yml för pipelinen för kontinuerlig leverans.
Konfigurera en pipeline
I Azure DevOps går du tillbaka till ditt teamprojekt och till fönstret Lagringsfiler>.
I fönstret Filer väljer du Konfigurera bygge.
I fönstret Inventering av pipelinen bekräftar du lagringsplatsens information och väljer Konfigurera pipeline.
I fönstret Konfigurera din pipeline väljer du Befintlig YAML-fil för Azure Pipelines.
I fönstret Välj en befintlig YAML-fil följer du dessa steg för att välja din Infrastructure-pipeline.yml-fil :
För Gren väljer du den gren där du har checkat in dina ändringar, till exempel main eller din versionsgren.
För Sökväg väljer du den sökväg som ska användas för din pipeline. Följande sökväg är standardvärdet:
deployment/{logic-app-name}/ADOPipelineScripts/{infrastructure-pipeline-name}.yml
När du är klar väljer du Fortsätt.
I fönstret Konfigurera din pipeline väljer du Granska pipeline.
I fönstret Granska din reglerade pipeline anger du följande information:
- Pipelinenamn: Ange ett namn för pipelinen.
- Pipelinemapp: Välj den mapp där pipelinen ska sparas, med namnet ./deployment/{logic-app-name}/pipelines.
När du är klar väljer du Spara.
Visa och köra pipeline
Följ dessa steg för att hitta och köra din pipeline:
På gruppprojektets vänstra meny expanderar du Pipelines och väljer Pipelines.
Välj fliken Alla för att visa alla tillgängliga pipelines. Leta upp och välj din pipeline.
I pipelinens verktygsfält väljer du Kör pipeline.
Mer information finns i Skapa din första pipeline.