Vítejte na blog.vyvojar.cz Přihlásit | Registrovat | Pomoc

Detekce build serveru na TFS 2010

Po upgrade serveru z TFS 2005 na TFS 2010 mi u nově zakládaných projektů chyběla property $(IsDesktopBuild), pomocí které detekoval build server a v případě buildu na vývojářském stroji přeskakoval dlouhotrvající a zbytečné akce. Od VS2005 je k dispozici property $(BuildingInsideVisualStudio), která je nastavena při spuštění z prostředí Visual Studio. Pokud je ale opravdu potřeba detekovat spuštění na build serveru/agentovi, používám následujících pár řádek v csproj souboru:

 

   1: <PropertyGroup Condition=" '$(IsDesktopBuild)'=='' ">
   2:   <IsDesktopBuild>true</IsDesktopBuild>
   3:   <IsDesktopBuild Condition="'$(BuildUri)'!='' and '$(TeamFoundationServerUrl)'!=''">false</IsDesktopBuild>
   4: </PropertyGroup>

Property $(IsDesktopBuild) je nastavena na false pouze na build serveru/agentovi. Podobně jako tomu bylo u starších verzí build serverů.

Není z mé hlavy, našel jsem je na Internetu, ale vážně si nepamatuji kde. Pokud někdo víte původní zdroj, tak ho rád uvedu.

Edit 6.1.2015: Funguje to i na Visual Studio Online Hosted Build Controller

Zveřejněno 9. července 2013 12:30 by arci

Komentář

Žádné komentáře
Neregistrovaní uživatele nemužou přidávat komentáře.
 
Vyvojar.cz na prodej!