Sdílet prostřednictvím


Klíčové koncepty pro nové uživatele služby Azure Pipelines

Služby Azure DevOps

Seznamte se s klíčovými koncepty a komponentami, které tvoří Azure Pipelines. Pochopení základních pojmů a částí kanálu vám může pomoct efektivněji sestavovat, testovat a nasazovat kód.

Přehled klíčových konceptů

Grafika klíčových konceptů

  • Trigger informuje kanál, který se má spustit.
  • Kanál se skládá z jedné nebo více fází. Kanál se může nasadit do jednoho nebo více prostředí.
  • Fáze je způsob uspořádání úloh v kanálu a každá fáze může mít jednu nebo více úloh.
  • Každá úloha běží na jednom agentu. Úloha může být také bez agentů.
  • Každý agent spouští úlohu, která obsahuje jeden nebo více kroků.
  • Krok může být úkol nebo skript a je nejmenším stavebním blokem kanálu.
  • Úloha je předem zabalený skript, který provádí akci, například vyvolání rozhraní REST API nebo publikování artefaktu sestavení.
  • Artefakt je kolekce souborů nebo balíčků publikovaných spuštěním.

Termíny služby Azure Pipelines

Agent

Po spuštění sestavení nebo nasazení spustí systém jednu nebo více úloh. Agent je výpočetní infrastruktura s nainstalovaným softwarem agenta, který spouští jednu úlohu najednou. Vaše úloha může běžet například na agentu Ubuntu hostovaného Microsoftem.

Podrobnější informace o různých typech agentů a jejich použití najdete v tématu Agenti Azure Pipelines.

Schválení

Schválení definovat sadu ověření vyžadovaných před spuštěním nasazení. Ruční schvalování je běžná kontrola, která řídí nasazení do produkčních prostředí. Když jsou kontroly nakonfigurované v prostředí, kanál se pozastaví, dokud se všechny kontroly úspěšně nedokončí.

Artefakt

Artefakt je kolekce souborů nebo balíčků publikovaných spuštěním. Artefakty jsou zpřístupněny následným úlohám, jako je distribuce nebo nasazení. Další informace najdete v tématu Artefakty ve službě Azure Pipelines.

Průběžné doručování

Průběžné doručování (CD) je proces, pomocí kterého se kód sestavuje, testuje a nasazuje do jedné nebo více testovacích a produkčních fází. Nasazení a testování ve více fázích pomáhá řídit kvalitu. Systémy kontinuální integrace vytvářejí nasaditelné artefakty, které zahrnují infrastrukturu a aplikace. Automatizované kanály verzí využívají tyto artefakty k vydání nových verzí a oprav stávajících systémů. Systémy monitorování a upozorňování běží neustále, aby bylo vidět celý proces CD. Tento proces zajišťuje, že chyby se zachytí často a brzy.

Průběžná integrace

Kontinuální integrace (CI) je postup používaný vývojovými týmy ke zjednodušení testování a sestavování kódu. CI pomáhá zachytit chyby nebo problémy v rané fázi vývojového cyklu, což usnadňuje a urychluje jejich opravu. Automatizované testy a sestavení se spouštějí jako součást procesu CI. Proces se může spouštět podle nastaveného plánu, kdykoli se nasdílí kód nebo obojí. Položky označované jako artefakty se vytvářejí ze systémů CI. Používají je kanály průběžného doručování k řízení automatických nasazení.

Nasazení

Nasazení klasického kanálu je akce spuštění úloh pro jednu fázi. Nasazení může zahrnovat spouštění automatizovaných testů, nasazování artefaktů sestavení a všechny další akce určené pro danou fázi.

U kanálů YAML se nasazení týká úlohy nasazení. Úloha nasazení je kolekce kroků, které se spouštějí postupně v prostředí. Pro úlohy nasazení můžete použít strategie, jako je spuštění jednou, postupné a kanárky.

Skupina nasazení

Skupina nasazení je sada cílových počítačů nasazení, které mají nainstalované agenty. Skupina nasazení je jen další seskupení agentů, jako je fond agentů. Cíle nasazení v kanálu pro úlohu můžete nastavit pomocí skupiny nasazení. Přečtěte si další informace o zřizování agentů pro skupiny nasazení.

Prostředí

Prostředí je kolekce prostředků, ve kterých nasazujete aplikaci. Jedno prostředí může obsahovat jeden nebo více virtuálních počítačů, kontejnerů, webových aplikací nebo jakékoli služby. Kanály se po dokončení sestavení nasadí do jednoho nebo více prostředí a spustí se testy.

Úloha

Fáze obsahuje jednu nebo více úloh. Každá úloha běží na agentu. Úloha představuje hranici provádění sady kroků. Všechny kroky se spouštějí společně na stejném agentu. Úlohy jsou nejužitečnější, když chcete spustit řadu kroků v různých prostředích. Můžete například chtít vytvořit dvě konfigurace – x86 a x64. V tomto případě máte jednu fázi a dvě úlohy. Jedna úloha by byla pro x86 a druhá úloha by byla pro x64.

Úlohy bez agentů běží v Azure DevOps a Azure DevOps Serveru bez použití agenta. Omezený počet úloh podporuje úlohy bez agentů.

Kanál

Kanál definuje proces kontinuální integrace a nasazování pro vaši aplikaci. Skládá se z jedné nebo více fází. Můžete si ho představit jako pracovní postup, který definuje, jak se budou spouštět kroky testování, sestavení a nasazení.

U klasických kanálů se kanál může také značovat jako definice.

Verze

U klasických kanálů je verze sady artefaktů zadaných v kanálu verze. Tato verze obsahuje snímek všech informací potřebných k provádění všech úloh a akcí v kanálu verze, jako jsou fáze, úlohy, zásady, jako jsou triggery a schvalovatelé, a možnosti nasazení. Vydání můžete vytvořit ručně, s triggerem nasazení nebo rozhraním REST API.

U kanálů YAML jsou fáze sestavení a verze v jednom kanálu s více fázemi.

Spustit

Spuštění představuje jedno spuštění kanálu. Shromažďuje protokoly přidružené ke spuštění kroků a výsledků spuštěných testů. Během spuštění služba Azure Pipelines nejprve zpracuje kanál a pak ho odešle do jednoho nebo několika agentů. Každý agent spouští úlohy. Přečtěte si další informace o sekvenci spuštění kanálu.

U klasických kanálů představuje sestavení jedno spuštění kanálu.

Skript

Skript spustí kód jako krok v kanálu pomocí příkazového řádku, PowerShellu nebo bashe. Můžete psát skripty pro různé platformy pro macOS, Linux a Windows. Na rozdíl od úlohy je skript vlastním kódem, který je specifický pro váš kanál.

Fáze

Fáze je logická hranice v kanálu. Dá se použít k označení oddělení obav (například sestavení, kontrola kvality a produkce). Každá fáze obsahuje jednu nebo více úloh. Když v kanálu definujete více fází, spustí se ve výchozím nastavení jedna po druhé. Můžete zadat podmínky pro spuštění fáze. Když přemýšlíte o tom, jestli potřebujete fázi, zeptejte se sami sebe:

  • Spravují samostatné skupiny různé části tohoto kanálu? Můžete mít například správce testů, který spravuje úlohy související s testováním a jiným manažerem, který spravuje úlohy související s produkčním nasazením. V tomto případě je vhodné mít samostatné fáze pro testování a produkci.
  • Je k určité úloze nebo sadě úloh připojená sada schválení ? Pokud ano, můžete pomocí fází rozdělit úlohy do logických skupin, které vyžadují schválení.
  • Existují úlohy, které musí běžet dlouho? Pokud má úloha ve vašem kanálu dlouhou dobu běhu, je vhodné tuto úlohu umístit do vlastní fáze.

Krok

Krok je nejmenší stavební blok kanálu. Kanál se může například skládat z kroků sestavení a testování. Krok může být skript nebo úkol. Úkol je jednoduše předem vytvořený skript nabízený jako pohodlí pro vás. Informace o dostupných úkolech najdete v referenčních informacích k úkolům sestavení a vydání. Informace o vytváření vlastních úkolů najdete v tématu Vytvoření vlastního úkolu.

Úloha

Úloha je stavební blok pro definování automatizace v kanálu. Úkol je zabalený skript nebo procedura, která byla abstrahována pomocí sady vstupů.

Trigger

Trigger je něco, co je nastavené tak, aby kanál řekl, kdy se má spustit. Kanál můžete nakonfigurovat tak, aby běžel při nasdílení změn do úložiště, v naplánovaných časech nebo po dokončení jiného sestavení. Všechny tyto akce se označují jako triggery. Další informace najdete v tématu aktivační události sestavení a aktivační události vydané verze.

Knihovna

Knihovna obsahuje zabezpečené soubory a skupiny proměnných. Zabezpečené soubory představují způsob, jak ukládat soubory a sdílet je napříč kanály. Můžete například chtít odkazovat na stejný soubor pro různé kanály. V takovém případě můžete soubor uložit v knihovně a použít ho, když ho potřebujete. Skupiny proměnných ukládají hodnoty a tajné kódy, které můžete chtít předat do kanálu YAML nebo zpřístupnit napříč několika kanály.

O autorech

  • Dave Jarvis přispěl k grafickému přehledu klíčových konceptů.