Continuous delivery op een IIS Server ?>

Continuous delivery op een IIS Server

Tegenwoordig is het steeds vaker mogelijk om aanpassingen, verbeteringen en foutoplossingen van een code direct vrij te geven voor een webapplicatie. In deze blog wil ik een stappenplan doornemen voor het instellen van het “Continuous delivery” op een Windows webserver met IIS door gebruik te maken van functionaliteiten van Visual Studio Team Services (VSTS).

Voor dit voorbeeld heb ik gebruik gemaakt van een standaard project van Microsoft die hier te downloaden is.

Voorwaarden

  • Account voor visual studio online;
  • Webserver (Windows);
  • IIS geïnstalleerd op de webserver;
  • Continous Integration ingesteld voor de webapplicatie.

Stap 1: Deployment Group aanmaken

Door gebruik te maken van Deployment Groups kun je de servers die je gebruikt voor het hosten van je app makkelijker organiseren en beheren. Om een Deployment Group in te stellen, open je je eigen VSTS webportaal (https://{your-account}.visualstudio.com) en navigeer je via de navigatiebalk naar Build and Release.In de subnavigatiebalk kies je vervolgens voor  Deployment Groups.

Wanneer je nog niet eerder een Deployment Group aangemaakt hebt kun je kiezen voor “Add Deployment group”. Wanneer je eerder een Deployement Group hebt aangemaakt kies je voor “New”. Geef de Deployment Group een naam en eventueel een omschrijving. In mijn voorbeeld is dit “DelyTestDeploymentGroup”. Bij de volgende pagina krijg je een script die je moet uitvoeren als administrator op je Windows webserver. Zorg ervoor dat de target op Windows staat en het vinkje aanstaat bij “Use a personal access token in the script for authentication”. Na een goede uitvoering van het script geeft deze de volgende melding: Service vstsagent.account.computername started successfully.

Op het tabblad met machines (Targets) van de aangemaakte Deployment Group moet de machine nu aanwezig zijn, waar je zojuist het script op uitgevoerd hebt.

Stap 2: Releaseproces definiëren

Om een nieuwe release aan te maken kies je in dezelfde subnavigatiebalk als Deployment Groups voor “Releases”. Klik in het submenu op de plus (+) en vervolgens kies je “Create new release definition”.

Bij de keuze voor een template kun je zoeken op IIS en kies vervolgens de template “IIS Website Deployment”.

Ga vervolgens naar de tab “Tasks” en bij de instellingen van IIS Deployment moet je de eerder aangemaakte Deployment Group selecteren onder Deployment Targets. Om ervoor te zorgen dat na elke succesvolle build er automatisch een release aangemaakt wordt, kun je bij de artifacts op het scherm met de pipeline bij het tekentje van een bliksemstraal instellen dat na elke build er automatisch een release gedaan wordt.

Stap 3: Release starten en valideren

Wanneer alle instellingen goed staan kun je de definitie testen en gebruiken door bovenin te kiezen voor Release en dan Create release. In de log kun je vervolgens bijhouden of het met de release goed gaat. 

Nadat de release uitgevoerd is kun je naar de website/ip-adres van je webserver gaan en controleren of  je website daadwerkelijk zichtbaar is.

Conclusie

Deze automatische release kan een hoop tijd wegnemen rondom het vrijgeven van nieuwe webapplicaties, maar ook het vrijgeven van kleine veranderingen binnen een webapplicatie. Daarnaast zorgt het stukje Continious Integration ervoor dat je tests rondom code kunt automatiseren en daarmee ook alleen goede code kunt vrijgeven aan de gebruikers.

Klik hier om naar onze site te gaan

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *