Cesta 07Lekce 5 / 8

Zvolte, kde Taiga čeká na rozhodnutí

Oddělte schválení plánu, provedení implementace, oprávnění k mergi a nasazení. Nastavte autonomii podle rozhodnutí, která si organizace musí ponechat.

Praxe11 minZkontrolováno

Vydává Jak píšeme

Ověřte si porozuměníOrganizace povoluje autonomní merge, ale továrna jej zakáže. Může produkt pod touto továrnou autonomní merge zapnout?Vypracovat cvičení
Organizace povoluje autonomní merge, ale továrna jej zakáže. Může produkt pod touto továrnou autonomní merge zapnout?

Co se naučíte

  • Rozlišit automatickou implementaci a autonomní merge.
  • Vysvětlit horní hranice oprávnění k mergi, výchozí nastavení produktu a odlišná nastavení iniciativ.
  • Před zapnutím automatizace ověřit pravidla větví a důsledky nasazení.

Oddělte čtyři rozhodnutí

Fiktivní služba pro vybavení má čtyři různá rozhodnutí: přijmout plán, provést implementaci, mergovat změnu a nasadit ji. Nepovažujte jeden přepínač za oprávnění ke všem čtyřem.

Před změnou autonomie zjistěte, co pipeline repozitáře dělá po mergi. Pokud merge do pracovní větve spouští nasazení, automatický merge může spustit i tento existující postup.

Rozhodněte, zda plán čeká

Nastavení produktu Build on its own by default určuje, zda dokončený plán přejde k implementaci, nebo čeká na schválení. Vypněte je, pokud plány nejprve potřebují lidské rozhodnutí.

Nastavení Build on its own u iniciativy může toto chování pro jednotlivou iniciativu změnit. Před zařazením práce do fronty zkontrolujte výchozí nastavení i případnou konkrétní volbu.

Approve spouští implementaci pod identitou schvalující osoby a v mezích jejích aktuálních oprávnění. Neúspěšný plán žádnou implementaci nespustí. Automatizace implementace sama nepovoluje merge výsledného pull requestu.

Pochopte hierarchii merge

Autonomní merge se řídí samostatně a zůstává vypnutý, dokud jej nezapnete. Dokumentovaná integrace podporuje GitHub včetně GitHub Enterprise.

ÚroveňVýznam
OrganizaceHorní hranice určující, zda je autonomní merge povolený
TovárnaHorní hranice pro všechny úrovně pod danou továrnou
ProduktVýchozí nastavení pro iniciativy bez vlastní volby
IniciativaVlastní volba Merge on its own v mezích horních hranic

Zákaz na úrovni organizace nebo továrny nelze na nižší úrovni přebít. Vypnuté výchozí nastavení produktu je jiné: iniciativa může zapnout vlastní merge, pokud to horní hranice dovolují.

U služby pro vybavení zachovejte výslovný počáteční rozsah. Jedna iniciativa s malými důsledky může mít jinou volbu než změna řízení přístupu zaměstnanců, vždy v povolených mezích.

Zajistěte vymahatelnost požadovaných kontrol

Taiga se poskytovatele správy zdrojového kódu ptá, zda lze pull request mergovat. Ochrana větve určuje požadované kontroly, schválení a další podmínky. Autonomní merge tato pravidla neobchází.

Pokud automatizovaná kontrola musí blokovat merge, nastavte její výsledek jako povinnou stavovou kontrolu pomocí podporované konfigurace repozitáře. Doporučující výsledek se nestane povinným jen proto, že to očekáváte.

Ověřte také požadovaná lidská schválení. Úspěšná kontrola nenahrazuje schválení, které vyžaduje vaše zásada. Potvrďte pravidla na skutečné cílové větvi.

Vyložte důvod zastaveného merge

Přečtěte důvod na iniciativě. Čekající kontrola, chybějící schválení, konflikt a neúplný plán potřebují různé reakce. Taiga také zastaví autonomní merge, pokud opravy změní kritéria, díky nimž dříve neúspěšné kontroly prošly. Tuto změnu přímo zkontrolujte.

Neodstraňujte povinnou kontrolu jen proto, že blokuje postup. Pokud kontrola nikdy neohlásí výsledek, opravte konfiguraci nebo použijte schválený proces změny zásad. Po každé opravě zkontrolujte aktuální commit.

Oddělte oprávnění k nasazení

Autonomní merge provádí aplikace Taiga GitHub App a je zaznamenaná jako jeho vykonavatel. Pipeline repozitáře si zachovává existující chování při nasazování.

V tomto scénáři merge nasazuje do stagingu. Produkce stále potřebuje produkční rozhodnutí organizace a důkazy. Potvrďte, že pipeline toto oddělení vynucuje. Pokračujte kontrolou dodávky.

Vypracovat cvičení

Fiktivní služba pro vybavení potřebuje lidskou kontrolu plánů a pull requestů. Její hlavní větev nasazuje do stagingu. Zapište nastavení implementace, požadovaná pravidla větve, nastavení merge a samostatné produkční schválení potřebné pro toto uspořádání.

Stáhnout pracovní list (Markdown)
Ověřte si porozumění ↑

Pokračovat v učení

Zdroje a další čtení

Související čtení od Taigy

← Předchozí lekce: Převeďte výsledek na iniciativu