9
votes

Qu'est-ce qu'un bon processus d'automatisation de construction et de déploiement à utiliser avec ASP.NET?

Je recherche des recommandations pour faire le bâtiment et le déploiement de projet automatiquement.

Notre configuration de développement actuelle utilise ASP.NET, SVN, CCNet et un script MSBUILD pour la construction du serveur DEV. Je pensais à passer à la croisière au lieu de CCNet si je ne suis pas sûr que cela me donne tout ce que je n'en ai pas déjà.

Ce que je voudrais automatiser, c'est le processus d'après une version automatisée effectuée pour mettre à jour le site en direct avec les nouveaux changements. Les mises à jour du site peuvent inclure des mises à jour de site de base ainsi que des mises à jour des clients pouvant être modifiées de code et / ou de base de données afin que le processus nécessite suffisamment flexible afin qu'il puisse gérer ces scénarios.

Une de mes sources d'inspiration pour cela est venue de cette vidéo ainsi que les heures sans fin consacrées à faire des mises à jour chaque mois.


1 commentaires

Juste une mise à jour après 6 ans; Automatisation de la version de l'application Les outils sont spécialement conçus pour exactement cela. Buildmaster est l'un des outils là-bas et Ce didacticiel décrit le processus mentionné.


3 Réponses :



0
votes

On dirait que les deux fonctions majeures pour le déploiement de vos modifications de code sont les suivantes: 1. Copie de fichiers et 2. Exécuter des modifications de script DB. Si vous regardez à l'aide d'utiliser MSBUILD Community Tasks Il y a beaucoup de tâches de construction pratiques pouvant vous aider en cours de route. Sqlexecute et robocopy sonnent comme ils seraient tout ce dont vous auriez besoin d'utiliser. Cela vous obligerait à modifier vos fichiers de projet pour étendre leur comportement de construction, mais une fois que cela est fait, vous pourrez "script" sur la partie manuelle de ce qui est fait.


0 commentaires

4
votes

pour projets plus petits ou personnels , je recommanderais d'utiliser quelque chose comme le gratuit (et excellent) TeamCity de Jetbrains. Automatisation des tests d'unités, intégration continue et règles de ce qui se passe après une construction (y compris la déplaçant vers différents endroits).

pour équipes plus grandes , j'ai effectivement trouvé un peu d'automatisation de construction sous la forme de tâches MSbuild personnalisées et que Robocopy fonctionne le mieux. Cette belle combinaison entre promouvoir manuellement des constructions entre les environnements et utiliser Msbuild & Robocopy pour automatiser certaines parties de ce processus crée des pauses propres entre les environnements (avec très peu de oups, je ne voulais pas pousser qu'il y a des erreurs). Il nous permet également de faire des constructions d'évaluation de l'assurance qualité avant de promouvoir.

mise à jour 7/31/2014:

J'ai utilisé Appattoyer . J'ai quelques projets tels que MailChimp.Net qui possède une automatisation complète de la construction et de Nuget Déployer.


1 commentaires

Je suis maintenant mis à niveau, enfin, de Cruisecontrol.net à TeamCity et d'aimer. Cela a été beaucoup plus facile à utiliser même avec des scripts personnalisés Msbuild.