Frage

Ich bin für einige Empfehlungen der Suche automatisch Projekt Aufbau und Einsatz zu tun.

Unser aktuelles Entwicklungs-Setup verwendet ASP.NET, SVN, CCNET und ein MSBuild-Skript für die dev-Server zu bauen. Ich war von der Umstellung auf Cruise statt CCNET denken, obwohl ich bin mir nicht sicher, ob das gibt mir nichts extra, dass ich noch nicht installiert haben.

Was ich zu automatisieren möchte ist der Prozess aus, nachdem ein automatisiertes Build auf der Aktualisierung die Live-Site mit den neuen Änderungen erfolgt. Website-Updates kann Basisstations-Updates sowie Client-Updates enthält, den Code und / oder Datenbankänderungen werden kann, so dass die Prozessanforderungen flexibel genug sein, so dass es diese Szenarien umgehen kann.

Eine meiner Inspirationsquellen dazu kam von dieses Video sowie die endlosen Stunden tun Updates jeden Monat ausgegeben.

War es hilfreich?

Lösung

klein oder persönliche Projekte , ich würde empfehlen, so etwas wie die freie (und sehr gut) Teamcity von JetBrains. Unit-Test-Automatisierung, die kontinuierliche Integration und Regeln für das, was passiert nach einem Build (einschließlich es um an verschiedenen Orten zu bewegen).

größere Teams , habe ich festgestellt tatsächlich ein wenig Build-Automatisierung in Form von benutzerdefinierten MSBuild Aufgaben und RoboCopy am besten funktioniert. Diese schöne Kombination zwischen manuell baut zwischen den Umgebungen zu fördern und mit MSBuild & RoboCopy Teile zu automatisieren dieser Prozess sauber Pausen zwischen den Umgebungen erzeugt (mit sehr wenige "oops ich wollte nicht zu schieben, dass die Fehler). Sie können damit auch wir haben QA-Prüfung baut vor zu fördern.

Update 2014.07.31:

Ich habe ein href verwendet <= "http://www.asp.net/web-forms/tutorials/deployment/configuring-team-foundation-server-for-web-deployment/creating-a-build- Definition-that-Träger-Deployment“rel = "nofollow noreferrer"> benutzerdefinierte TFS Build-Vorlagen mit Erfolg. Sie sind ein bisschen kompliziert, aber man kann mit ihnen durchaus ein paar coole Dinge zu tun.

Für Open-Source-Projekte (wie NuGet Bibliotheken) auf GitHub, ich glaube nicht, Sie zu schlagen AppVeyor . Ich habe ein paar Projekte bekam wie Mailchimp.NET die komplette Build und NuGet deploy Automatisierung haben.

Andere Tipps

Sounds wie die beiden Hauptfunktionen für Ihre Codeänderungen bereitstellen: 1. Kopieren von Dateien und 2. Ausführen von DB Script Änderungen. Wenn Sie MsBuild Community-Aufgaben zu buchen, mit es viel handlicher Build-Tasks, die Sie auf dem Weg helfen können. SqlExecute und RoboCopy klingen wie sie alle würden Sie verwenden müssten. Dies würde erfordern Sie Ihre Projektdateien zu modifizieren ihre Build-Verhalten zu verlängern, aber sobald das geschehen ist würden Sie auf „Skript“ aus dem Handbuch Teil in der Lage sein, was getan wird.

Ich habe für ähnliche Aufgaben mit vielen Glück Nant in der Vergangenheit verwendet. Sie können es kick off Ihre automatisierten Build verwenden. ( http://nant.sourceforge.net/ )

Wenn Sie etwas umfassenderes Sie heraus überprüfen können Wix ( http://wix.sourceforge.net/)

Jetzt sind Sie wirklich sicher, dass alles, was ein autmatic Build Kicks off Sie die Live-Website zu aktualisieren? Oder meinen Sie, dass Sie aus einem Build treten, mit Ihrem cc-Tool, und erzeugt dann einen Build live gehen?

würde ich hasse das Live-Site-Update zu haben, wenn jemand in einer neuen Version einer Datei überprüft.

Ihr Datenbank-Updates wird wahrscheinlich der schwierigste Aspekt sein. Aber solange das, was in der databvase Update überprüft wird, ist ein Änderungsskript, es ist nicht schlecht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top