Použití výchozí šablony pro proces sestavení
Výchozí šablonu ( TfvcTemplate.12.xaml nebo 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
(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.
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).
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í.
Na kartě Proces v oddílu Šablona procesu sestavení je standardně vybrána Výchozí šablona.
Upozornění Jsou připojeny k Git týmový projekt hostované na Visual Studio Online?Postrádáte parametry Přepsat rezervaci a Projekty?
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?
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í.
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í
Spuštění dalších procesů během sestavení
Provedení analýzy kódu 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í. |
TFVC: Vyčistit pracovní prostor 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 |
TFVC: Získat verzi 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é |
---|
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:
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:
Postupy: Nastavení vlastností analýzy kódu pro projekty C/C++
Postupy: Konfigurace Analýzy kódu pro spravovaný projekt kódu
Postupy: Konfigurace Analýzy kódu pro webovou aplikaci ASP.NET
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ý vrátil se změnami sadu změn TFVC nebo schválil potvrzení Git.
Opatření zdrojového kódu popiskem
V nabídce Sprá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 .
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 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)?
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.
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í?