13. May 2018

GitHub zu NuGet mit AppVeyor

AppVeyor Dashboard

Guten Morgen,

wie ich in meinem letzten Post geschrieben habe, habe ich jetzt eine Reihe .NET-Projekte auf GitHub. Da all diese Bibliotheken sind, wollte ich sie zur einfachen Nutzung über NuGet zur Verfügung stellen (nicht zuletzt, weil ich selbst sie regelmäßig verwende und jederzeit zur Hand haben will). Ab in die Welt der Continuous Integration (CI) Services.

Es gibt zwei große Anbieter von CI-Services mit sehr guter GitHub-Anbindung: Travis-CI und AppVeyor. Als .NET-Entwickler hat Travis leider einen deutlichen Nachteil: ihre Server laufen mit Linux und unterstützen nur Mono und .NET Core. AppVeyor, auf der anderen Seite, bietet Windows-Server an, mit allen .NET Frameworks, die man sich nur wünschen kann. Noch dazu kostenlos für Open-Source-Projekte. Ein Fest!

Die Integration ist einfach: Man wählt das GitHub-Projekt aus, fügt den NuGet-Provider hinzu und gibt den NuGet-API-Schlüssel ein. Für meine Projekte habe ich zudem einen Release-Branch angelegt und AppVeyor so eingestellt, dass alle Branches gebaut werden, aber nur vom Release-Branch NuGet-Pakete hochgeladen werden. Außerdem war es bei einigen .NET Standard-Projekten notwendig "dotnet restore" als Pre-Build-Script einzustellen, um alle Abhängigkeiten zu aktualisieren.

Alles in allem kann ich nur empfehlen, AppVeyor auszuprobieren - insbesondere als .NET-Entwickler.