TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto...
Transcript of TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto...
![Page 2: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/2.jpg)
Build
• Pro kontinuální integraci:• Vstup = zdrojáky
• Výstup = případná notifikace
• Pro kontinuální nasazení:• Vstup = zdrojáky
• Výstup = artefakt(y)
• Provádí agent:• Agent nabízí tzv. capabilities
• Build vyžaduje tzv. demands
• Musí se nalézt průnik
![Page 3: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/3.jpg)
Artefakt
• Nasaditelná součást aplikace
• Neměl by obsahovat jména serverů, connect stringy, … (nahradit)
• Např.:• ZIP pro Azure Web App• CSCFG+CSPKG pro Azure Cloud Service• Transformovaný web adresář pro ASP.NET web aplikaci• JAR/WAR soubor pro Java aplikaci• WSP balíček pro SharePoint• APK pro Android
• Plus zaZIPované skripty pro nasazení aplikace
![Page 4: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/4.jpg)
Typický build pro .NET
• Restore Packages
• Visual Studio Build (VS na agentovi, licence není třeba)
• Visual Studio Test – volitelně
• Nějaké skripty pro úpravu artefaktů
• Publish Artifact - 1 nebo více
![Page 5: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/5.jpg)
demo
![Page 6: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/6.jpg)
Typický build pro Javu/Android a jiné
• Ant/Maven/Gradle/XCode/…• Typicky stahuje balíčky
• Volitelně spouští unit testy
• Volitelně Docker pro vytvoření kontejneru
• Nějaké skripty pro úpravu artefaktů
• Publish Artifact – 1 nebo více
![Page 7: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/7.jpg)
demo
![Page 8: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/8.jpg)
Release
• Vstup = artefakty
• Výstup = nasazená aplikace
Posloupnost kroků pro nasazení aplikace, typicky:• Stažení artefaktů
• Nahrazení tokenů hodnotami pro konkrétní prostředí
• Zastavení aplikace
• Nakopírování souborů do cílového místa
• Spuštění aplikace
![Page 9: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/9.jpg)
Release – základní pojmy
• Agent – vykonává release definici (posloupnost kroků)
• Release definice:• Prostředí – např. Dev/Test/Production
• Posloupnost kroků v jednotlivých prostředích
• Parametery (variables) pro nasazení v jednotlivých prostředích
• Nastavení – přiřazení agentů, kdo-co schvaluje, …
• Release:• Spuštění release definice pro konkrétní build
• Možnost automatického spuštění, pokud se objeví nový build
![Page 10: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/10.jpg)
demo
![Page 11: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/11.jpg)
Release – .NET aplikace
• Azure• Speciální úlohy pro jednotlivé typy aplikací
• Web App, Cloud Service, SQL database, Service Fabric
• Obecné úlohy• Azure Powershell, Azure RG deployment
• On-premises• Typicky posloupnost zastav/nakopíruj/nakonfiguruj/spusť• Používané úlohy
• Powershell• Powershell on Target Machines• Copy Files• Windows Machine File Copy
![Page 12: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/12.jpg)
Release – jiné aplikace
• Kopírování na web server pomocí FTP
• SSH
• Copy Files over SSH
• Nasazení na „marketplace“ pro mobilní aplikace• Extenze dostupné zdarma na VS market place
![Page 13: TFS/VSTS Build & Release - Microsoft › media › ... · TFS Build & Release ve Škoda Auto Author: Michael Jurek Created Date: 1/26/2017 11:19:41 AM ...](https://reader033.fdocument.pub/reader033/viewer/2022053013/5f10832f7e708231d44979e2/html5/thumbnails/13.jpg)
demo