Viktiga begrepp för nya Azure Pipelines-användare

Azure DevOps Services

Lär dig mer om viktiga begrepp och komponenter som utgör Azure Pipelines. Genom att förstå de grundläggande termerna och delarna i en pipeline kan du skapa, testa och distribuera koden på ett effektivare sätt.

Översikt över viktiga begrepp

nyckelbegreppsgrafik

  • En utlösare uppmanar en pipeline att köras.
  • En pipeline består av en eller flera steg. En pipeline kan distribueras till en eller flera miljöer.
  • En fas är ett sätt att organisera jobb i en pipeline och varje steg kan ha ett eller flera jobb.
  • Varje jobb körs på en agent. Ett jobb kan också vara agentlöst.
  • Varje agent kör ett jobb som innehåller ett eller flera steg.
  • Ett steg kan vara en uppgift eller ett skript och är det minsta byggblocket i en pipeline.
  • En uppgift är ett förpaketerat skript som utför en åtgärd, till exempel att anropa ett REST-API eller publicera en byggartefakt.
  • En artefakt är en samling filer eller paket som publicerats av en körning.

Villkor för Azure Pipelines

Handläggare

När ditt bygge eller din distribution körs påbörjar systemet ett eller fler jobb. En agent är databehandlingsinfrastruktur med installerad agentprogramvara som kör ett jobb i taget. Ditt jobb kan till exempel köras på en Microsoft-värdbaserad Ubuntu-agent.

Mer detaljerad information om de olika typerna av agenter och hur du använder dem finns i Azure Pipelines-agenter.

Godkännanden

Godkännanden definiera en uppsättning valideringar som krävs innan en distribution körs. Manuellt godkännande är en vanlig kontroll som utförs för att kontrollera distributioner till produktionsmiljöer. När kontroller konfigureras i en miljö pausar en pipelinekörning tills alla kontroller har slutförts.

Artefakt

En artefakt är en samling filer eller paket som publicerats av en körning. Artefakter görs tillgängliga för efterföljande uppgifter, till exempel distribution eller distribution. Mer information finns i Artefakter i Azure Pipelines.

Kontinuerlig leverans

Kontinuerlig leverans (CD) är en process där kod skapas, testas och distribueras till ett eller flera test- och produktionssteg. Att distribuera och testa i flera steg bidrar till att öka kvaliteten. System för kontinuerlig integrering skapar distributionsbara artefakter, bland annat infrastruktur och appar. Automatiserade versionspipelines använder dessa artefakter för att släppa nya versioner och korrigeringar till befintliga system. Övervaknings- och aviseringssystem körs ständigt för att öka insynen i hela CD-processen. Den här processen säkerställer att fel fångas ofta och tidigt.

Kontinuerlig integrering

Kontinuerlig integrering (CI) är den praxis som används av utvecklingsteam för att förenkla testning och skapande av kod. CI hjälper till att fånga buggar eller problem tidigt i utvecklingscykeln, vilket gör dem enklare och snabbare att åtgärda. Automatiserade tester och byggen körs som en del av CI-processen. Processen kan köras enligt ett angivet schema, när koden skickas eller både och. Objekt som kallas artefakter skapas från CI-system. De används av pipelines för kontinuerlig leveransversion för att driva automatiska distributioner.

Distribution

En klassisk pipelinedistribution är åtgärden att köra aktiviteterna i en fas. Distributionen kan omfatta körning av automatiserade tester, distribution av byggartefakter och andra åtgärder som anges för den fasen.

För YAML-pipelines refererar en distribution till ett distributionsjobb. Ett distributionsjobb är en samling steg som körs sekventiellt mot en miljö. Du kan använda strategier som att köra en gång, rullande och kanariefågel för distributionsjobb.

Distributionsgrupp

En distributionsgrupp är en uppsättning distributionsmåldatorer som har agenter installerade. En distributionsgrupp är bara ännu en gruppering av agenter, till exempel en agentpool. Du kan ange distributionsmålen i en pipeline för ett jobb med hjälp av en distributionsgrupp. Läs mer om etableringsagenter för distributionsgrupper.

Environment

En miljö är en samling resurser där du distribuerar ditt program. En miljö kan innehålla en eller flera virtuella datorer, containrar, webbappar eller valfri tjänst. Pipelines distribueras till en eller flera miljöer när en version har slutförts och tester körs.

Projekt

En fas innehåller ett eller flera jobb. Varje jobb körs på en agent. Ett jobb representerar en körningsgräns för en uppsättning steg. Alla steg körs tillsammans på samma agent. Jobb är mest användbara när du vill köra en serie steg i olika miljöer. Du kanske till exempel vill skapa två konfigurationer – x86 och x64. I det här fallet har du ett steg och två jobb. Ett jobb skulle vara för x86 och det andra jobbet skulle vara för x64.

Agentlösa jobb körs i Azure DevOps och Azure DevOps Server utan att använda en agent. Ett begränsat antal uppgifter stöder agentlösa jobb.

Pipeline

En pipeline definierar processen för kontinuerlig integrering och distribution för din app. Den består av ett eller flera steg. Det kan ses som ett arbetsflöde som definierar hur dina test-, bygg- och distributionssteg körs.

För klassiska pipelines kan en pipeline även kallas en definition.

Frisläpp

För klassiska pipelines är en version av en uppsättning artefakter som anges i en pipeline. Versionen innehåller en ögonblicksbild av all information som krävs för att utföra alla uppgifter och åtgärder i versionspipelinen, till exempel steg, uppgifter, principer som utlösare och godkännare samt distributionsalternativ. Du kan skapa en version manuellt, med en distributionsutlösare eller med REST-API:et.

För YAML-pipelines finns bygg- och lanseringsstegen i en pipeline i flera steg.

Kör

En körning representerar en körning av en pipeline. Den samlar in loggarna som är associerade med att köra stegen och resultatet av att köra tester. Under en körning bearbetar Azure Pipelines först pipelinen och skickar sedan körningen till en eller flera agenter. Varje agent kör jobb. Läs mer om pipelinekörningssekvensen.

För klassiska pipelines representerar en version en körning av en pipeline.

Skript

Ett skript kör kod som ett steg i pipelinen med hjälp av kommandoraden, PowerShell eller Bash. Du kan skriva plattformsoberoende skript för macOS, Linux och Windows. Till skillnad från en uppgift är ett skript anpassad kod som är specifik för din pipeline.

Fas

En fas är en logisk gräns i pipelinen. Det kan användas för att markera separation av problem (till exempel Build, QA och produktion). Varje steg innehåller ett eller flera jobb. När du definierar flera steg i en pipeline körs de som standard en efter en. Du kan ange villkoren för när en fas körs. När du funderar på om du behöver en fas kan du fråga dig själv:

  • Hanterar separata grupper olika delar av den här pipelinen? Du kan till exempel ha en testhanterare som hanterar jobb som är relaterade till testning och en annan chef som hanterar jobb relaterade till produktionsdistribution. I det här fallet är det klokt att ha separata steg för testning och produktion.
  • Finns det en uppsättning godkännanden som är anslutna till ett visst jobb eller en uppsättning jobb? I så fall kan du använda steg för att dela upp dina jobb i logiska grupper som kräver godkännanden.
  • Finns det jobb som måste köras länge? Om ett jobb i pipelinen har lång körning är det klokt att placera jobbet i sin egen fas.

Steg

Ett steg är det minsta byggblocket i en pipeline. En pipeline kan till exempel bestå av bygg- och teststeg. Ett steg kan antingen vara ett skript eller en uppgift. En uppgift är helt enkelt ett fördefinierat skript som erbjuds som en bekvämlighet för dig. Information om hur du visar tillgängliga uppgifter finns i referensen För bygg- och versionsaktiviteter . Information om hur du skapar anpassade uppgifter finns i Skapa en anpassad uppgift.

Uppgift

En uppgift är byggblocket för att definiera automatisering i en pipeline. En uppgift är ett paketerat skript eller en procedur som har abstraherats med en uppsättning indata.

Utlösare

En utlösare är något som har konfigurerats för att tala om för pipelinen när den ska köras. Du kan konfigurera en pipeline så att den körs vid en push-överföring till en lagringsplats, vid schemalagda tidpunkter eller när en annan version har slutförts. Alla dessa åtgärder kallas utlösare. Mer information finns i skapa utlösare och versionsutlösare.

Bibliotek

Biblioteket innehåller säkra filer och variabelgrupper. Säkra filer är ett sätt att lagra filer och dela dem mellan pipelines. Du kanske till exempel vill referera till samma fil för olika pipelines. I så fall kan du spara filen i Biblioteket och använda den när du behöver den. Variabelgrupper lagrar värden och hemligheter som du kanske vill skicka till en YAML-pipeline eller göra tillgängliga i flera pipelines.

Om författarna

  • Dave Jarvis bidrog till översiktsgrafiken för viktiga begrepp.