TFS Tutorial: TFS för att automatisera bygga, testa och driftsättning för NET-projekt
använda Microsoft TFS 2015 Update-3 för NET (Build, Test och distribuera): TFS Tutorial
TFS är mer allmänt används för net utveckling med Visual Studio.Net IDE. Med TFS 2015 Update 3 kan man ansluta till någon Team Foundation Server Git repo, med hjälp av en SSH-nyckel.
Team Foundation Server (TFS) är en Alm-produkt från Microsoft som tillhandahåller kapacitet för en end-to-end-utveckling och testning med hjälp av Arbetsobjekthantering, projektplanering (vattenfall eller Scrum), versionskontroll, Bygg / släpp (distribuera) och testfunktioner.
OBS: Denna TFS-handledning har många bilder så att den kan laddas ordentligt.
Läs också => TFS för JAVA-projekt med Eclipse i DevOps
introduktion
TFS är skräddarsydd för Microsoft Visual Studio och Eclipse på alla plattformar, men det kan också användas som en back-end till flera IDEs (Integrated Development Environments).
Vi kommer nu att ta en titt på hur Team Foundation Server (TFS) kommer att användas för att bygga, testa och distribuera.Net webbapplikationer som traditionellt är styrkan i verktyget.
förutsättning:
- Microsoft TFS 2015 Uppdatering 3
- Microsoft Visual Studio. Net 2015 (30-dagars testversion)
- SonarQube 6.4 eller högre
- IIS webbserver aktiverad. Eftersom jag använder en Windows 7-ruta kan du kolla den här handledningen om hur du aktiverar IIS 7. Så här installerar du Internet Information Services (IIS 7) på Windows 7 Ultimate
- Det finns flera YouTube-videor om hur du aktiverar IIS på Windows 2008 / 2012 / 2016.
vanligtvis för att utföra stegen som nämns i handledningen behöver du en Build-Server, där Builds kommer att utföras och Distributionsmaskiner eller miljöer där applikationer kommer att distribueras till IIS, med agenter installerade och körda. Se min tidigare handledning för att veta hur man installerar agenter.
Ställ in en C # – applikation
förutsatt att uppgiftsarbetsobjekt skapas i TFS och tilldelas utvecklarens att arbeta på samma. Jag har alltid märkt att spårbarhet är mycket viktigt med tanke på att spåra något arbete över programvarans livscykel.
innan du lägger till ett. NET-program i TFS source control repository ska du kontrollera om det finns ett samlings-och teamprojekt eller inte.
en samling skapas av TFS-administratören. Den består av en grupp teamprojekt i alla serviceorganisationer, där projekt för flera kunder genomförs. Du kan skapa enskilda samlingar för varje kundprojekt i TFS.
när en samling har skapats kan du skapa flera teamprojekt inom den. Ett enda lagprojekt består av alla arbetsobjekt, källkod, testartefakter, mätvärden för rapporter etc., Team project kan skapas med hjälp av olika inbyggda processmallar som Scrum, Agile, CMMI etc.
- mer om att skapa samlingar finns @ Manage team project collections i Team Foundation Server
- här kommer jag att använda Standardsamlingen som skapas när TFS har installerats
- för att skapa teamprojekt i en samling, följ stegen som visas nedan.
Starta TFS webbgränssnitt med webbadressenhttp://<ServerName>:port/tfs och du kan se det skapade projektet.
klicka på projektet och du kommer vidare till Team Dashboard
(Obs: klicka på en bild för förstorad vy)
nu har vi skapat en samling och ett teamprojekt. Låt oss starta visuellt Studio.NET och skapa en ny C # webbapplikation och dela projektet till TFS source control repository. Detta är det första steget mot att etablera praxis för kontinuerlig Integration (CI).
1) Starta visuellt Studio.NET och ställ in TFS som standardkällkontrollförvaret. Gå till Tools => Options => källkontroll. Klicka sedan på OK.
2) gå till View => Team Explorer och anslut till TFS – servern med ikonen
3) Skapa en C# ASP.NET webbprojekt
4) Eftersom vi skapar en webbapplikation väljer du webbformulärsmallen
klicka på OK för att skapa projektet.
5) det skapade projektet kan ses i Solution Explorer. . Net använder begreppet .sln-fil eller lösning för att innehålla alla projekt. När du öppnar lösningen öppnas också alla tillhörande projekt. Vi måste lägga till lösningen till TFS source control repository
6) ändra filen standard.aspx som visas, spara den och lägg sedan till hela lösningen i TFS-källkontrollförvaret
Välj designvyn så kan du se hela sidan
7) Lägg till lösningen i TFS-källkontrollen. Högerklicka på lösningen och välj ’Lägg till lösning i källkontroll’
8) Välj Teamprojektet som skapats tidigare och klicka sedan på OK
9) lösningen är ännu inte incheckad till TFS. I Team Explorer klickar du på source control explorer och du kan se lösningen som läggs till för att checkas in.
10) Incheckningsändringar. Gå till Team Explorer => väntande ändringar
Ange en kommentar och dra-släpp ett uppgiftsarbete för att säkerställa spårbarhet. Klicka på Incheckningsknappen.
11) för att testa webbplatsen som körs lokalt, klicka på Firefox-ikonen i Visual Studio.NET. kom ihåg att det ännu inte är utplacerat till IIS på någon speciell miljö.
skapa Byggdefinition med kodanalys
en byggdefinition består av en serie uppgifter som utförs under en automatiserad byggprocess. Exempel på uppgifterna kan bestå av att köra en Visual Studio Build, MS Build,exekvera PowerShell-eller skalskript etc.
1) för att skapa en Build Definition, logga in på TFS webbgränssnitt och gå till fliken bygger. Klicka på + för att skapa en byggdefinition. Börja med Tom definition och klicka sedan på Nästa.
Välj Teamprojektet och klicka på Skapa
klicka på Redigera, som finns bredvid den tomma definitionen
spara byggdefinitionen som något som”huvudbyggnad”
eftersom SonarQube kommer att användas för kodanalys, lägg därför till de 2 sonarstegen ”SonarQube – skanner för MSBuild – begin Analysis” och ” SonarQube-skanner för MSBuild-End Analysens uppgifter.
Lägg till begin Analysis-steget innan någon MS Build eller Visual Studio Build. Detta steg Hämtar detaljer från Sonarqube server för att konfigurera analysen.
Lägg till slutanalyssteg senare.
stegen som läggs till kommer att se ut som följande med MS Build step däremellan.
börja definiera detaljerna för Sonarqube server. Definiera slutpunkt där Sonarqube-servern och autentiseringsinformationen läggs till. Klicka på ’Hantera’ för att lägga till Sonarqube-serverinformationen.
klicka på ’New Service Endpoint => Generic’
gå nu tillbaka till huvudskärmen för Byggdefinition och välj slutpunkten som just skapades.
slutförd konfiguration för Begin-analys, ser ut som visas nedan
Välj lösningen. I Advanced = > ytterligare inställningar anger du följande och sparar Byggdefinitionen
/d:sonar.scm.enabled = true / d: ekolod.scm.leverantör=tfvc / d:ekolod.tfvc.användarnamn = niranjan / d: ekolod.tfvc.lösenord.secured = <lösenord>
SonarQube – End Analysis. Avsluta analysen och ladda sedan upp resultaten till SonarQube-projektet.
Lägg till ett steg för att publicera artefakter till servern. Artefakterna lagras i en droppmapp på servern och kommer att användas under distribution.
2) Installera agenten på Bygg-och Distributionsmaskinen. Du kan hänvisa till min tidigare handledning för att veta hur du installerar agenten. Nu antar att agenten är installerad, se till om agenten körs eller inte.
3) Se till att SonarQube SCM tfvc-plugin laddas ner härifrån. och kopieras till SonarQube installation\extensions\plugins katalog. Denna plugin säkerställer att källkoden tas från TFS source control repository och görs tillgänglig för SonarQube för kodanalys.
4) Efter plugin hämtas och kopieras, starta sonar server
5) initiera en Build för att kontrollera om stegen fungerar bra. Öppna Byggdefinitionen och klicka på ’Köbyggnad’
Bygg framgångsrikt. Alla steg gick bra.
klicka på byggnumret, i det här fallet är det Build 217 och gå till fliken artefakter för att titta på droppmappen som skapats på servernivå.
Obs: i nästa avsnitt release processen visar hur någon av ändringarna kan återspeglas under hela distributionsprocessen. För detta säkerställa att projektartefakterna kopieras genom KOPIERINGSSTEGET i byggdefinitionen efter kompileringssteget eller manuellt kopiera projektartefaktkatalogen till C:\ Inetpub \ wwwroot katalog. Detta måste bara göras en gång.
skapa Release för distribution
i föregående avsnitt såg vi om Build, följt av kodanalys med SonarQube. Vi skapar nu en Release för att distribuera artefakterna från mappen ’drop’ till IIS.
med skapandet av utgåvan automatiseras hela kontinuerlig Integration och kontinuerlig leverans utan manuell ingrepp.
gå till Release hub och skapa en Release Definition.
börja med Tom definition och klicka på OK.
spara Release-definitionen och byt namn på Standardmiljön till QA. Baserat på projekten, ytterligare miljöer som Staging Pre-Prod etc. kan också läggas till och distribution skulle automatiseras till hela miljöer efter varandra.
länka Byggdefinitionen till Släppdefinitionen så att utplaceringen är automatiserad. Klicka på ’länk till en build definition’. Välj den byggdefinition som skapats tidigare.
klicka på länken
Aktivera Distributionsvillkoret för att initiera distributionen omedelbart efter Utgivningsskapandet
Aktivera också utlösaren för distribution efter att byggnaden har lyckats. I Release definition, gå till fliken Trigger och aktivera ’kontinuerlig distribution’, välj build definition.
Spara senare Release-definitionen.
tillbaka i fliken miljöer i release-definitionen Lägg till uppgifterna för att distribuera artefakterna till IIS-servern.
Lägg till en uppgift att kopiera filer från ’drop’ mapp som skapats under byggprocessen till IIS wwwrootdirectory.
källmapp – bläddra och välj Webapplication1-projektet i droppmappen
målmappen ska vara katalogen Inetpub\wwwroot-C:\Inetpub \ wwwroot \ WebApplication1
exekvera Release for Deployment
I release hub skapar du en release för att starta utplaceringen
välj den senaste stabila byggnaden och klicka på Skapa för att starta utplaceringen.
distribution lyckas med QA-miljö
kör inetmgr som är IIS-hanteraren, där du kan hantera alla webbplatser/applikationer installerade i IIS. Bläddra till webbapplikationen distribuerad.
för att avsluta när du initierar byggnaden kommer distributionen också att slutföras till alla definierade miljöer, eftersom utgåvan är länkad till byggdefinitionen.
slutsats
i denna TFS-handledning har vi nu sett hur Microsoft ALM platform kan användas för att automatisera bygga, testa och distribuera för.NET-applikationer. TFS spelar en viktig roll här.
därför i dagens värld, AUTOMATION är nyckeln för framgångsrik och snabbare leverans för att ligga steget före.
Senast uppdaterad: 18 februari 2021