ProGet als bessere Chocolatey Repository Verwaltung
So, eine kleine Forsetzung vom letzten Beitrag. Ich hatte gezeigt das Chocolatey auch CIFS-Shares bzw. UNC-Pfade und lokale Verzeichnise als Install Source supportet. Für eine sehr kleine lokale Repository reicht das auch aus. Leider muss man dann natürlich auf das nette Feature von pushen von Paketen verzichten. Außerdem bin ich als Linux Admin selbst kein wirklicher Freund von CIFS. Generell war ich mit der Lösung nicht voll zufrieden.
Mein primäres Ziel war eigentlich einen NuGet.Server aufzusetzen. Versucht habe ich es, aber nach einigen Studen Arbeit in Visual Studio for Web und der Anpassung IIS Konfiguration habe ich es nun aufgegeben. Viel mehr als die Startseite funktionierte nicht, beim Package Discovery blieb es bei einem HTTP Error 404.
Durch das Debugging bin ich aber über eine Google Group an eine deutlich schönere und auch einfachere Lösung gestoßen. ProGet ist ein Repository Server für NuGet und Chocolatey mit kommerziellen Hintergrund, den es aber auch freie Version gibt.
Die Installation ist Windowstypisch extrem einfach. Durchklicken und es funktioniert. ProGet benötigt einen SQL-Server (SQL Express) und einen Webserver (wahlweise einen eigenen eine vorhandene IIS Instanz). Das wars.
ProGet hat viele nette Features. Pakete können über Web oder den NuGet Push hochgeladen werden. Das Caching sowie das Staging von Paketen in verschiedenen Environments ist möglich und die Webadministration kann sauber in eine LDAP Struktur integriert werden.
An dieser Stelle sei nochmal erwähnt: Microsofts One-Get setzt auf dem Chocolatey Paketmanagement auf. Mit dem offiziellen Release von PowerShell v5 (aktuell ist das Projekt noch im „Preview“ Status) können diese Repositorys auch nativ in Windows genutzt werden.
Ich halte Chocolatey und NuGet für eine zukunftsweisende Lösung von einfacher Softwareverteilung unter Windows. Gerade dann, wenn man das ganze als eine Art Framework nutzt und in Puppet etc. einbindet. Wir werden sehen wie es mit dem Chocolatey Projekt weiter geht. Aktuell läuft hier auf Kickstarter ein Crowdfunding, mit dem sich das Projekt dann sein Büro einrichten möchte und eine kommerzielle „Chocolatey Enterprise“ Lösung schaffen möchte. Dazu kommt natürlich Microsoft, die durch One-Get hier auch einiges voran bringen sollten.
Der Php Nuget Server (http://www.kendar.org/?p=/dotnet/phpnuget) ist auch ein Blick wert.