Použití výchozí šablony pro proces sestavení

Výchozí šablonu (Ikona TFVC TfvcTemplate.12.xaml nebo Ikona Git GitTemplate.12.xaml) lze použít k rychlému definování základního procesu, který vytvoří a zkontroluje váš kód.K dispozici máte možnosti, jak řídit způsob, jakým Team Foundation Build (TFBuild) sestavuje kód, spouští testy a jiné procesy, jako jsou skripty.

Začínáme

  1. (Volitelné) Před vytvořením nové definice sestavení otevřete na domovské stránce Průzkumníku týmových projektů (klávesnice: Ctrl+0, H) řešení, které chcete sestavit tak, aby bylo automaticky zadáno v poli Projekty.

  2. V Průzkumníku týmových projektů se přesvědčte, zda jste připojeni k týmovému projektu (klávesnice: Ctrl+0, C) a poté otevřete stránku Sestavení (klávesnice: Ctrl+0, B).

  3. Zvolte odkaz Nová definice sestavení nebo vyberte sestavení, otevřete jeho kontextovou nabídku a zvolte možnost Úprava definice sestavení.

    Tip

    Pokud se zobrazí chybová zpráva TF225001, nakonfigurujte kontrolér sestavení.

  4. Na kartě Proces v oddílu Šablona procesu sestavení je standardně vybrána Výchozí šablona.

    Výchozí šablona procesu sestavení

    Poznámka k upozorněníUpozornění

    Jsou připojeny k Ikona Git Git týmový projekt hostované na Visual Studio Online?Postrádáte parametry Přepsat rezervaci a Projekty?

    Parametry z výchozí šablony nesprávné Git

    Viz téma Jak se mohu ujistit, že používám správnou výchozí šablonu procesu sestavení Git ve službě Visual Studio Online?

  5. Použijte informace poskytnuté dále v tomto tématu k vyplnění polí poskytujících funkčnost, kterou chcete vložit do definice sestavení.

  6. Po vyplnění polí na kartě Proces zadejte možnosti procesu sestavení na ostatních kartách.

    Další informace naleznete v tématu Vytvoření nebo úprava definice sestavení.

Co chcete udělat dále?

  • Získání kódu

  • Sestavení kódu

    • Určení projektů k sestavení

    • Určení platforem a konfigurací pro sestavení

    • Určení možností sestavení

  • Otestování vašeho kódu a analýza dopadu testu

  • Spuštění dalších procesů během sestavení

  • Správa způsobu, jak servery spouští vaše sestavení

    • Určení sestavovacích agentů, které zpracují sestavení

    • Určení časových limitů sestavovacích agentů

  • Řízení výsledku sestavení

    • Určení umístění výstupu sestavení

    • Vytvoření názvů dokončených sestavení, které budou vašemu týmu dávat smysl

    • Publikování symbolů ze sestavení

    • Přidružení a vytvoření pracovních položek

    • Vytvoření pracovní položky při selhání

    • Opatření zdrojového kódu popiskem

  • Získání odpovědí na časté otázky

Získání kódu

Můžete nastavit několik možností, jak sestavovací agent získá zdrojový kód, který jste zadali na kartě Nastavení zdroje.

Pokud chcete...

Pak nastavte tento parametr...

Pomocí těchto doprovodných materiálů...

Určete, zda a jak vyčistit pracovní prostor nebo úložiště Git sestavovacího agenta před zpracováním sestavení.

Ikona TFVC TFVC: Vyčistit pracovní prostor

Ikona Git Git: Vyčistit úložiště

Zvolením hodnoty Pravda dojde před zpracováním sestavení k odstranění všech existujících výstupů a souborů zdrojového kódu.Toto použijte v případě, že je žádoucí, aby byl proces kompilace co nejdůkladnější při odhalování problémů s procesem sestavení.

Tip

Pokud váš proces sestavení nevyžaduje čistý pracovní prostor nebo úložiště, můžete výrazně zkrátit čas, který je požadován pro spuštění sestavení, nastavením tohoto parametru na hodnotu Nepravda.

Toto nastavení nemá vliv, pokud použijete hostované sestavení řadič.V tomto případě získáte nový pracovní adresář s každým sestavením.

Sestavení určité verze zdrojového kódu

Ikona TFVC TFVC: Získat verzi

Ikona Git Git: Přepsat rezervaci

TFVC: Zadejte versionspec označující verzi, která má být sestavena.

Git: Rezervaci proveďte zadáním ID potvrzení nebo větve.

Sestavení kódu

Ke kompilaci kódu můžete použít MSBuild.

Určení projektů k sestavení

V poli Projekty v části Sestavení v tabulce Parametry procesu sestavení můžete určit jedno nebo více řešení nebo projektů kódu k sestavení.Musí být zadáno alespoň jedno řešení nebo projekt.

Sestavujete-li několik souvisejících projektů, je obvykle vhodné je přidat do jediného řešení a zadat toto řešení do buňky Projekty namísto vypisování každého projektu zvlášť.

V poli Projekty lze kliknout na tlačítko tří teček (...) a použít tak nově otevřené dialogové okno Řešení/Projekty k určení řešení nebo projektů k sestavení.

Chcete-li vyplnit pole Projekty ručně pro týmový projekt TFVC, zadejte úplnou cestu správy verzí každého projektu nebo řešení, které má být sestaveno.Každá hodnota je oddělena čárkou, jak ukazuje následující příklad:

$/Features/FeatureA/Server/All Server Projects.sln, $/Features/FeatureA/Client/All Client Projects.sln

Důležitá poznámkaDůležité

Pokud používáte TFVC, ujistěte se, že cesta ke každému projektu nebo řešení je podřízeným prvkem jedné z hodnot Složky správy zdrojového kódu uvedených na kartě Nastavení zdroje v definici sestavení.Pokud používáte systém Git, přesvědčte se, že je projekt či řešení ve vašem úložišti Git, ve větvi, kterou sestavujete.

Určení platforem a konfigurací pro sestavení

V poli Konfigurace lze určit, které platformy a konfigurace mají být sestaveny.Například zapsáním řetězce Release|x86 do tohoto pole lze zadat, že sestavení má sestavit pouze konfigurace pro vydání 32bitové verze projektu C++.

Tip

Máte-li velký základ kódu, lze významně zvýšit rychlost zpracování sestavením pouze potřebných konfigurací a platforem.

Pokud ponecháte pole Konfigurace prázdné, je sestavena výchozí konfigurace a platforma definovaná v každém řešení nebo projektu.

V poli Konfigurace lze kliknout na tlačítko tří teček (...) a použít tak nově otevřené dialogové okno Konfigurace k určení položek k sestavení.Lze je zadat také ručně.

Všechny konfigurace v poli Konfigurace by měly být v následujícím tvaru:

Konfigurace|Platforma

Následující zástupné symboly je zapotřebí nahradit:

  • Konfigurace je hodnota, například ladění, verze nebo všech konfigurací.

  • Platforma je hodnota, například Win32, x 86, x 64 nebo jakýkoli procesor.

Konfigurace v seznamu musí být odděleny čárkami.

Pokud chcete například sestavit obě konfigurace pro vydání a ladění projektu C#, obsahovalo by pole Konfigurace řetězec Debug|Any CPU, Release|Any CPU.

Tokeny použité pro konfiguraci a platformu se musí shodovat s tokeny nastavenými ve vlastnostech řešení nebo projektu kódu.Pokud shodné nejsou, mohou se po dokončení sestavení vyskytnout neočekávané výsledky.

[!POZNÁMKA]

Pokud vytváříte projekty s odděleným kódem, nikoli soubor řešení, a chcete zadat jako platformu Libovolný procesor, je třeba zadat „AnyCPU“ místo „Any CPU“.

Určení možností sestavení

Můžete kontrolovat několik možností sestavení.

Pokud chcete...

Pak nastavte tento parametr...

Pomocí těchto doprovodných materiálů...

Určení, zda znovu sestavit

Sestavit, Vyčistit sestavení

Nastavte na hodnotu Pravda, pokud chcete znovu vytvořit kód v projektech kódu.Toto je shodné s MSBuild/target:clean.Tato možnost nemá žádný praktický význam, pokud také nastavíte možnost Vyčistit úložiště na hodnotu Nepravda.

Tip

Může výrazně snížit čas, který je požadován pro sestavení velkých základů kódu, nastavením této možnosti na hodnotu Nepravda.

Ověření kódu oproti diagramům vrstev

Sestavit, Upřesnit, Argumenty MSBuild

Zahrňte do tohoto parametru následující řetězec: /p:ValidateArchitecture=true.

Další informace naleznete v tématu Ověřování kódu pomocí diagramů vrstev.

Zadání argumentů příkazového řádku, které budou předány nástroji MS Build

Sestavit, Upřesnit, Argumenty MSBuild

Vyžaduje-li proces sestavení předání argumentů nástroji MSBuild, zadejte je do parametru Argumenty MSBuild.Další informace naleznete v tématu Referenční dokumentace pro použití nástroje MSBuild v příkazovém řádku.

Určit bitovou verzi nástroje MSBuild použitého ke zpracování sestavení

Sestavit, Upřesnit, Platforma MSBuild

Zadejte jednu z následujících hodnot:

  • Chcete-li spustit nástroj MSBuild s bitovou verzí CPU shodnou se službou Team Foundation Build Service nainstalovanou na sestavovacím agentu, zvolte možnost Automaticky.

  • Chcete-li toto sestavení vždy zpracovat 32bitovou verzí nástroje MSBuild, zvolte možnost X86.

    Jelikož aplikace Visual Studio pracuje jako 32bitová aplikace, může při zpracování sestavení sestavovacím agentem, který pracuje s 64bitovovou verzí služby Team Foundation Build Service, docházet k potížím.Tento typ problémů lze vyřešit zvolením možnosti X86.

Je-li zadána tato hodnota, je vhodné se ujistit (například použitím značky, jak je vysvětleno výše v tomto tématu), že je sestavení zpracováno sestavovacím agentem hostovaným 64bitovým počítačem.V opačném případě se sestavení nezdaří.

Spuštění jiných procesů

Během sestavení můžete spouštět jiné procesy.

Provedení analýzy kódu

Chcete-li najít běžné závady během sestavení, můžete analyzovat svůj kód.Nastavte parametr Provést analýzu kódu v upřesňujících parametrech sestavení.

  • Zvolením možnosti Dle konfigurace dojde k analýze všech projektů kódu, v nichž je tato funkce povolena.

  • Zvolením možnosti Vždy dojde k analýze všech projektů kódu bez ohledu na to, zda je tato funkce v projektech povolena.

  • Zvolení možnosti Nikdy přeskočí analýzu kódu.

Další informace naleznete v jednom z následujících témat:

Správa způsobu, jak servery spouští vaše sestavení

Řízení způsobu spouštění sestavení na serverech sestavení

Určení sestavovacích agentů, které zpracují sestavení

Chcete-li zadat, které sestavovací agenty budou použity pro zpracování sestavení, rozbalte uzel Upřesnit, poté rozbalte uzel Nastavení agenta a následně zadejte hodnoty následujících parametrů:

  • Filtr názvů: Zadáním názvu agenta do tohoto pole lze filtrovat sestavovací agenty použité pro zpracování této definice sestavení.Lze také zadat sadu názvů použitím zástupných znaků * a ?.Například zadáním řetězce CI* lze určit všechny agenty, jejichž název začíná znaky CI.Agenty, které tomuto kritériu vyhovují, jsou například CI, CI1 nebo CI_Agent2.

  • Filtr značek: Zadáním jedné nebo více značek se lze ujistit, že toto sestavení spustí pouze sestavovací agenty, které mají shodné značky .Značky jsou obvykle použity v určitých sestavovacích agentech, aby byly vyhrazeny pro zvláštní účely.Lze tak například na počítači, na němž bude sestavení provedeno, nastavit sestavovacího agenta navrženého tak, aby zpracoval hlídaná sestavení vrácená se změnami.V tomto sestavovacím agentu použijete značku gated.Nakonec použijete značku gated v definici sestavení, díky čemuž bude zpracována pouze agentem, který také obsahuje značku gated.Chcete-li zadat značky, klikněte na tlačítko tří teček (...).

    [!POZNÁMKA]

    Fond sestavovacích agentů dostupných pro zpracování tohoto sestavení je určen kontrolérem sestavení zadaným pro tuto definici sestavení.Chcete-li upravit kontrolér sestavení, zvolte kartu Výchozí hodnoty sestavení, otevřete nabídku Kontrolér sestavení a zvolte kontrolér sestavení.

  • Operátor porovnání značek: Vyberte v nabídce jednu z následujících hodnot:

    • MatchExactly: Tuto hodnotu zvolte, pokud chcete tuto definici sestavení zpracovat pouze těmi sestavovacími agenty, které mají přesně stejnou sadu značek zadaných v poli Filtr značek.Nejsou-li žádné značky zadány, může tuto definici sestavení zpracovat kterýkoli agent.

      Tip

      Výběrem možnosti MatchExactly omezíte agenty dostupné pro tuto definici sestavení na ty, které obsahují přesnou sadu značek zadaných v poli Filtr značek.

    • MatchAtLeast: Tuto hodnotu zvolte v případě, že chcete tuto definici sestavení zpracovat všemi sestavovacími agenty, které mají alespoň stejnou sadu značek zadaných v poli Filtr značek.Nejsou-li žádné značky zadány, může tuto definici sestavení zpracovat pouze agent neobsahující žádné značky.

Určení časových limitů sestavovacích agentů

Chcete-li zadat časové limity, rozbalte uzel Upřesnit, poté rozbalte uzel Nastavení agenta a zadejte parametry do následující tabulky.

Pokud chcete...

Pak nastavte tento parametr...

Pomocí těchto doprovodných materiálů...

Zadání maximální doby, po kterou je sestavovacímu agentu povoleno zpracovávat sestavení

Maximální doba spuštění

Zadejte hodnotu časového rozsahu ve formátu hh:mm:ss.Sestavení se například nezdaří s chybou vypršení časového limitu, je-li zadána hodnota 04:30:15 a sestavovací agent nedokončí svou práci ani po 4 hodinách, 30 minutách a 15 sekundách.Chcete-li dát sestavovacímu agentu neomezeně dlouhou dobu na zpracování sestavení, zadejte hodnotu 00:00:00.

Zadejte maximální dobu, po kterou může být požadavek na sestavení přiřazen k sestavovacímu agentu

Maximální doba čekání

Zadejte hodnotu časového rozsahu ve formátu hh:mm:ss.Sestavení se například nezdaří s chybou vypršení časového limitu, je-li zadána hodnota 01:30:45 a sestavení nebylo přiřazeno k sestavovacímu agentu ani po 1 hodině, 30 minutách a 45 sekundách.Chcete-li dát kontroleru sestavení neomezeně dlouhou dobu na nalezení sestavovacího agenta pro zpracování této definice sestavení, zadejte hodnotu 00:00:00.

Řízení výsledku sestavení

Určení umístění výstupu sestavení

Chcete-li určit, kam nástroj TFBuild umístí výstupy sestavení, zvolte:

  • SingleFolder pro umístění všech výstupních souborů sestavení společně v odkládací složce.

  • PerProject pro seskupení sestavení do podsložek odkládací složky pro každý projekt řešení nebo kódu, který jste zadali v poli Projekty.

  • AsConfigured pro ponechání binárních souborů ve složce zdrojů sestavovacího agenta uspořádané do stejné struktury podsložek, jakou vidíte při vytváření kódu ve vývojářském počítači v aplikaci Visual Studio.Tato struktura je definována v projektech kódu.

    Pokud použijete tuto možnost, nebude nástroj TFBuild kopírovat výstup do odkládací složky.Místo toho můžete naprogramovat skripty ke kopírování výstupů do umístění určeného proměnnou TF_BUILD_BINARIESDIRECTORY, aby se přesunuly do pracovního umístění.Viz skripty po sestavení nebo po testování.

Vytvoření názvů dokončených sestavení, které budou vašemu týmu dávat smysl

Vy a váš tým můžete pomocí volby Upřesnit, Formát čísla sestavení načíst užitečná data do názvu každého dokončeného sestavení.Platné hodnoty pro tento parametr naleznete v tématu Zadávání smysluplných názvů pro dokončená sestavení s použitím čísel sestavení.

Publikování symbolů ze sestavení

Určete parametr Cesta k publikovaným symbolům, chcete-li indexovat a publikovat data symbolu k povolení funkcí, jako je například historické ladění.Další informace naleznete v tématu Indexování a publikování dat symbolů.

Přidružení sad změn, potvrzení změn a pracovních položek

Proces sestavení automaticky propojí všechna dokončená sestavení se všemi sadami změn nebo potvrzeními změn provedenými v kódu i s jejich přidruženými pracovními položkami.Toto chování nelze zakázat, ale v nabídce Upřesnit se můžete rozhodnout, zda chcete Aktualizovat pracovní položky s použitím čísla sestavení výběrem hodnoty Pravda nebo Nepravda.

Jak proces sestavení určuje, kdy přidružit sady změn, vrácení se změnami a pracovní položky?

Vytvoření pracovní položky při selhání

V nabídce Upřesnit, Vytvořit pracovní položku v případě chyby vyberte hodnotu Pravda, pokud v případě, že sestavení selže, chcete, aby proces sestavení vytvořil chybu a přiřadil ji uživateli, který Ikona TFVCvrátil se změnami sadu změn TFVC nebo Ikona Gitschválil potvrzení Git.

Opatření zdrojového kódu popiskem

V nabídce Ikona TFVCSpráva verzí TF, Popsat zdroje vyberte hodnotu Pravda, pokud chcete automaticky označit každý zdrojový soubor popiskem, aby tým mohl snadno určit, která verze každého souboru je zahrnuta v dokončeném sestavení.Toto nastavení se nevztahuje na týmové projekty Git Ikona Git.

Informace o způsobu TFBuild určuje verze, která má popisek naleznete v tématu jak dobré byl, která sestavení?

Dotazy a odpovědi

Jak se mohu ujistit, že používám správnou výchozí šablonu procesu sestavení Git ve službě Visual Studio Online?

Jsou připojeny k Ikona Git Git týmový projekt hostované na Visual Studio Online?Postrádáte parametry Přepsat rezervaci a Projekty?

Objeví se při zobrazení podrobností Výchozí šablona (GitTemplate.xaml)?

Výchozí šablona nesprávné Git

Pokud ano, vyberte možnost GitTemplate.12.xaml.Poté, co tak učiníte, se zobrazí parametr Přepsat rezervaci a tlačítko procházení v parametru Projekty.

Výchozí šablona správné Git

D: Jak proces sestavení určuje, kdy přidružit sady změn, potvrzení změn a pracovní položky?

O: Každá definice sestavení udržuje svůj vlastní záznam o tom, které sady změn (TFVC), potvrzení změn (Git) a pracovní položky čekají na přiřazení k dalšímu dokončenému sestavení.

Sada změn 382 je například sestavena oběma sestaveními A i B.Sestavení A je zařazeno do fronty a úspěšně dokončeno.Sestavení B je zařazeno do fronty a selže.Sada změn 382 je nyní propojena s úspěšně dokončeným Sestavením A a neúspěšně dokončeným Sestavením B. Sada změn 382 nebude propojena s následujícím dokončeným Sestavením A, ale zůstane propojena s následujícím dokončeným Sestavením B.

Informace o Určuje, jak TFBuild verze, která má přidružit, naleznete v části jak dobré byl, která sestavení?

D: je nutné proces sestavení provádět další akce.Jak ji lze přizpůsobit?

A:Customize the process