Sestavení několika větví v Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Pomocí Azure Pipelines můžete vytvořit triggery pro sestavení projektu na každém novém potvrzení a žádosti o přijetí změn do vašeho úložiště. V tomto článku se dozvíte, jak povolit kontinuální integraci a nastavit pro úložiště několik buildů větví.

Požadavky

Povolení triggeru CI pro větev tématu

Při práci s Gitem se běžně vytváří dočasné větve z hlavní větve, aby se usnadnil zjednodušený pracovní postup. Tyto větve, často označované jako téma nebo větve funkcí, slouží k izolování vaší práce. V rámci tohoto pracovního postupu vytvoříte větev vyhrazenou pro konkrétní funkci nebo opravu chyb a po dokončení kód před odstraněním větve tématu sloučíte zpět do hlavní větve.

Pokud v souboru YAML explicitně nezadáte žádnou aktivační událost, všechny změny provedené v jakékoli větvi aktivují spuštění. Pokud chcete přidat triggery pro hlavní větev i pro všechny funkce nebo větve, přidejte do souboru YAML následující fragment kódu. Tím zajistíte, že všechny změny provedené v těchto větvích automaticky aktivují spuštění kanálu.

trigger:
- main
- feature/*

Sestavení YAML zatím nejsou v TFS k dispozici.

Přizpůsobení úloh sestavení na základě vytvářené větve

Hlavní větev obvykle zodpovídá za generování nasaditelných artefaktů, jako jsou binární soubory. U krátkodobých větví funkcí nemusíte investovat čas do vytváření a ukládání těchto artefaktů. Ve službě Azure Pipelines můžete implementovat vlastní podmínky, abyste zajistili, že se konkrétní úlohy spustí jenom v hlavní větvi.

Upravte soubor azure-pipelines.yml v hlavní větvi a přidejte do požadovaného úkolu podmínku. Například následující fragment kódu přidá podmínku do úlohy publikování artefaktů kanálu.

- task: PublishPipelineArtifact@1
  condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))

Sestavení YAML zatím nejsou v TFS k dispozici.

Ověření žádostí o přijetí změn

K zajištění ochrany větví můžete využít zásady, které vyžadují úspěšné sestavení před sloučením žádostí o přijetí změn. Pomocí Azure Pipelines máte možnost nakonfigurovat požadavek nového úspěšného sestavení pro sloučení změn do zásadních větví, jako je hlavní větev.

Úložiště GitHub

Pokud v souboru YAML explicitně nedefinujete triggery žádostí o přijetí změn , ve výchozím nastavení se pro všechny větve povolí sestavení žádostí o přijetí změn. Máte ale možnost určit cílové větve pro sestavení žádostí o přijetí změn. Pokud například chcete spustit sestavení výhradně pro žádosti o přijetí změn, které cílí na hlavní větev a větve začínající funkcí/, můžete zadat následující konfiguraci:

pr:
- main
- feature/*

Sestavení YAML zatím nejsou v TFS k dispozici.

Úložiště Azure Repos

  1. Přihlaste se ke své organizaci Azure DevOps a přejděte k projektu.

  2. Vyberte Úložiště a pak vyberte Větve.

  3. Vyberte ikonu se třemi tečky napravo od názvu vaší větve a pak vyberte Zásady větve.

  4. V nabídce Ověření sestavení vyberte symbol + a přidejte zásadu sestavení.

  5. V rozevírací nabídce vyberte kanál buildu a ujistěte se, že je aktivační událost nastavená na automatickou a že je požadavek na zásadu nastavený na požadovaný.

  6. Zadejte popisný zobrazovaný název , který popisuje zásadu.

  7. Výběrem možnosti Uložit vytvořte a povolte zásadu. Výběrem možnosti Uložit změny v levém horním rohu obrazovky změny uložte.

Snímek obrazovky znázorňující, jak přidat novou zásadu sestavení

  1. Pokud chcete zásady otestovat, přejděte na žádosti o přijetí změn repos>na portálu Azure DevOps.

  2. Vyberte Možnost Nová žádost o přijetí změn a ujistěte se, že je vaše větev tématu nastavená tak, aby se sloučila do hlavní větve, a pak vyberte Vytvořit.

  3. Na obrazovce uvidíte aktuálně spuštěné zásady.

  4. Vyberte název zásady a zkontrolujte sestavení. Pokud sestavení proběhne úspěšně, vaše žádost o přijetí změn se sloučí. Pokud sestavení selže, sloučení se zablokuje.

Poznámka:

Azure Pipelines už nepodporuje zásady uchovávání informací pro jednotlivé kanály. Doporučujeme používat pravidla uchovávání informací na úrovni projektu.