6

Nous sommes un magasin ColdFusion depuis 10 ans et passons maintenant à ASP.net MVC. Notre framework cible est .net 4.0 BETA 2 utilisant VS 2010 BETA 2. Nous avons mis en place deux instances de Windows Server 2008 (staging et production), et utiliserons notre serveur de base de données existant (SQL Server 2008). Aucun d'entre nous n'a vraiment beaucoup d'expérience dans ASP.net lui-même, même si nous sommes tous très à l'aise en C# et le modèle MVC. Le codage lui-même n'est pas vraiment un problème; mais le processus de déploiement est. Notre objectif est de pouvoir disposer d'une configuration CI qui déploiera et testera automatiquement nos applications dans la mise en scène en validation - puis aura la possibilité de marquer, puis de passer, les extractions sur nos sites de production lorsque les sites passent le contrôle qualité.Déploiement d'applications ASP.net MVC à la mise en scène et à la production avec SQL

Certaines des choses que j'ai des problèmes avec ici est le concept d'une application ASP.net et comment il s'intègre dans SVN. CF, comme PHP ou RoR, sont tous des langages de script et en tant que tels ne nécessitent aucun processus de construction (vérifier la source dans la production est très simple). Mais dans ce cas, les applications doivent être compilées - c'est là que nous commençons à avoir des problèmes. Aurons-nous besoin de créer un autre serveur (ou d'en utiliser un existant) qui a une sorte d'application qui tire le code, le compile, puis le pousse d'une manière ou d'une autre sur les serveurs live? Si oui, quelle est la meilleure façon d'y parvenir? J'imagine que si nous finissons par utiliser un outil de construction tel que Nant, ajouter des étapes supplémentaires pour migrer la base de données serait trivial, mais quelle est la meilleure façon d'y parvenir?

Un autre problème, sans rapport, est de savoir comment nos concepteurs vont travailler avec notre code. La plupart d'entre eux sont sur Mac, et l'utilisation de VS n'est pas vraiment une option. Comment pourront-ils éditer facilement les fichiers aspx, css et image? Notre objectif est de rendre cela aussi transparent que possible pour eux. ASP12 MVC semble être la meilleure option en ce qui concerne notre connaissance de la langue et de notre plate-forme actuelle. Nous avons juste besoin de trouver un bon processus de construction afin que tout soit aussi transparent que possible. Je comprends qu'il y a une tonne de ressources disponibles à ce sujet, mais je voulais obtenir l'opinion des gens ici d'une expérience de première main.

Répondre

2

Microsoft TFS est doté d'une solution de build géniale. C'est coûteux, mais efficace. En outre, vous ne pouvez pas perdre en regardant CruiseControl, qui est gratuit. TeamCity de JetBrains est également une excellente option. Toutes ces solutions de construction et d'intégration continues constitueraient un bon point de départ pour vos recherches.

http://msdn.microsoft.com/en-us/teamsystem/dd408382.aspx

http://www.cruisecontrol.com/

http://www.jetbrains.com/teamcity/

Même Draco.net est une bonne considération:

http://draconet.sourceforge.net/

+0

Je devrais le mentionner, mais nous avons examiné TFS et avons décidé de ne pas y aller à cause du coût. Cela ressemble à un excellent paquet, mais nous ne pouvons pas justifier d'y aller après avoir dépensé autant d'efforts sur notre infrastructure existante (SVN, JIRA, FishEye). Merci pour vos liens si :) – nlaq

+0

TeamCity a bien fonctionné pour moi dans le passé et mérite un bon coup d'oeil. J'espère que les autres liens vous fourniront un début. En tant que côté, assurez-vous d'utiliser dans votre fichier web.config ... cela vous évitera de faire mal. –

0

Nous utilisons http://www.cruisecontrol.com/ (CC) en cours d'exécution sur notre SVN/Création du serveur . Vous pouvez configurer CC via ses propres fichiers config/script pour extraire la dernière source de SVN et générer un ou plusieurs scripts Nant ou MSBuild pouvant effectuer votre build et votre déploiement.

Nous écrivons toutes nos modifications de base de données dans des scripts de modification qui vont également dans SVN. Nous disposons ensuite d'un outil de ligne de commande personnalisé qui déploiera les scripts de modification sur SQL Server lors du déploiement du site Web. Tout cela est fait dans le script Nant. Par conséquent, le script Nant de chaque projet gère la génération, le déploiement du site Web et le déploiement du script de changement SQL.La partie délicate consiste à gérer les rollbacks si/quand quelque chose se passe horriblement mal. Je suggère d'afficher une autre question pour ce problème spécifique.