Mehr von Jürgen Gutsch

Mehr von Jürgen Gutsch

Empfehlungen von Jürgen Gutsch

Blog-Empfehlungen von Jürgen Gutsch

Willkommen bei ASP.NET Zone. Anmelden | Registrieren | Hilfe

Jürgen Gutsch

ASP.NET und mehr...
AppVeyor: Einfacher und intuitiver Build-Server für Open Source Projekte

Für LightCore 2.0 möchte ich öffentlich den Build-Status des Projektes im Repository anzeigen. Ich hätte dafür auch meine Jenkins-Installation auf Azure nutzen können, denn auch Jenkins zeigt über ein Plugin den aktuellen Build-Status in form einer kleinen Grafik an.

Allerdings war das jetzt mal der richtige Anlass um AppVeyor zu testen:

https://ci.appveyor.com/project/JuergenGutsch/lightcore

AppVeyor steht als SaaS (Software as a Service) über eine Web-UI zur Verfügung und bietet relativ viel Möglichkeiten über eine recht einfache, intuitive und aufgeräumte Oberfläche. Sehr leicht kann hier das GitHub Projekt eingebunden werden:

image

Eine kleine Herausforderung war hier eigentlich nur der Build eines .NET Core Projektes und die Ausführung der XUnit Tests innerhalb eines .NET Core Projektes. Aber auch das war schnell eingerichtet, da der .NET Version Manager (DNVM) bereits installiert ist. Man musste nun lediglich herausfinden welche DNX Version installiert ist, bzw. die richtige nachinstallieren. So nutzte ich die ersten paar Builds um über den Build-Output die vorhandenen Runtimes zu ermitteln. Am Ende lasse ich aber dann doch einfach gewünschte beta-8 installieren:

image

dnvm update-self
dnvm install 1.0.0-beta8 -a x86 -r coreclr -OS win 
dnvm alias lccoreclr 1.0.0-beta8 -a x86 -r coreclr -OS win 
dnvm install 1.0.0-beta8 -a x86 -r clr -OS win
dnvm alias lcclr 1.0.0-beta8 -a x86 -r clr -OS win

Bei Build und Test muss ich jeweils die Kommandozeile wählen und folgende Zeilen einfügen:

Build:

image

cd LightCore
dnvm use lccoreclr
dnu restore
dnu build

Test:

image

cd ..\LightCore.Tests
dnvm use lccoreclr
dnu restore
dnx test

Anzeige

Am Ende kann ich mir auf AppVeyor ein Stück MarkUp Code kopieren, dass ich in die Readme.md Datei im Repository einfügen kann, um den aktuellen Buid-Status des Projektes anzuzeigen:

image

[![Build status](https://ci.appveyor.com/api/projects/status/et1fpjlmnsrkw3mv?svg=true)](https://ci.appveyor.com/project/JuergenGutsch/lightcore)

Wie man sieht ist AppVeyor relativ einfach zu handhaben. Ich denke ich werde den SimpleObjectStore ebenfalls hierüber bauen lassen. Vorerst muss ich aber auch dieses Projekt erst nach .NET Core portieren. ;)

Posted: Dienstag, 17. November 2015 08:15 von Jürgen Gutsch

Kommentare

Keine Kommentare

Anonyme Kommentare sind nicht zugelassen