2010-09-30 7 views
4

J'ai besoin de déployer un site Web à partir du SVN vers différents serveurs au sein de notre propre réseau. Le code n'est actuellement pas compilé mais sera probablement dans le futur. Tout d'abord, le site devra être déployé sur le serveur de développement pour que les développeurs puissent le tester. Une fois le développeur déconnecté, il sera déployé sur le serveur de transfert pour les testeurs. Une fois la déconnexion finale donnée, elle sera déployée sur une batterie de serveurs, soit deux serveurs actifs.Déployer le site Web ASP.Net de SVN vers plusieurs serveurs?

Chaque serveur dispose de quelques paramètres dans le fichier web.config qui sont différents (à l'exception des deux serveurs actifs, bien sûr). Je voudrais utiliser des modèles, comme le fait le monde de Ruby on Rails. Cela semble être une solution élégante pour plusieurs fichiers web.config.

J'ai également besoin de créer une liste/un rapport des fichiers qui ont été changés et ce que le changement a été depuis le dernier déploiement.

Je pense à écrire un script qui va faire ce qui suit: 1. Prenez args pour le serveur à déployer, et la révision
2. Exporter une copie de la source dans un répertoire avec svn export -r <deploy revision>
3. Supprimer le fichier web.config
4. Utilisez Ttree (un outil de modèle http://template-toolkit.org/) pour créer le web.config correct
5. Créer une liste des modifications de fichiers avec svn list -r <deploy revision>:<current server revision>
6. Stockez le <current server revision> du site lorsque le script est exécuté la prochaine fois

Le problème que j'ai est qu'il ne semble pas être la solution la plus élégante. Cela pourrait devenir impossible à maintenir, et je préfère utiliser des outils déjà disponibles plutôt que de réinventer la roue. Malheureusement, je ne pense pas que MSDeploy fera ce dont j'ai besoin, mais je suis heureux de l'utiliser, ou n'importe quoi d'autre, s'il fera ce dont j'ai besoin. Est-ce que quelqu'un connaît des outils qui sont à la hauteur de la tâche ou est-ce que le script est ma seule option?

Répondre

1

Découvrez TeamCity. J'ai ma configuration de serveur de construction afin qu'il puisse se déployer dans différents environnements avec différents paramètres basés sur la configuration de construction tout en "One Click". Il est relativement facile à configurer et s'intègre directement avec Subversion et d'autres systèmes de contrôle de source. Ce serait une solution plus élégante à la question que vous traitez ...

+0

malheureusement pour le moment le code source est déployé sur les serveurs web, mais comme je reçois les processus de développement triés, je vais regarder CI serveurs, et de déployer à partir d'eux. – TheLukeMcCarthy

Questions connexes