2010-11-03 17 views
15

Je suis en train de me familiariser avec TeamCity et MSDeploy et de déployer le déploiement dans un environnement de développement déclenché par SVN. La question que j'ai est en termes de libération dans un environnement de test; Je veux le faire sur demande et sur la base d'un numéro de révision spécifique. Quelle est la meilleure façon de configurer une build TeamCity basée sur une révision définie par l'utilisateur?Construire et déployer un numéro de révision spécifique avec TeamCity

Répondre

9

Vous pouvez utiliser Run Custom Build Dialog dans TeamCity et personnaliser Modifications pour inclure le paramètre, où vous devez spécifier la révision SVN à construire.

+0

Que diriez-vous de le faire par programmation? Comment diriez-vous à Build B de construire la révision source qui a été la dernière fois réussie pour Build A? –

+0

@JosephLust, vous pouvez probablement obtenir le comportement souhaité en créant une [Build Chain] (http://confluence.jetbrains.net/display/TCD65/Build+Chain). Cependant, je vous recommande de créer une question séparée sur SO pour obtenir plus d'aide. –

3

Jetez un oeil sur Pin fonctionnalité dans TeamCity. Vous pouvez épingler une certaine construction et ensuite déployer la dernière version épinglée. Vous avez donc une tâche 'Créer un développement de développement' dans TeamCity qui se déploie dans l'environnement de développement et expose des artefacts. Vous pouvez créer une autre tâche dans TeamCity qui utilisera les artefacts issus de la dernière version épinglée dans la tâche "Créer une build de développement" et déployer dans votre environnement de test.

Vous pouvez créer une autre tâche qui sera déployée sur la dernière version épinglée de la production. Le retour en arrière peut être obtenu simplement en libérant la dernière version épinglée.

Vous avez également un historique de build déployé.

+0

Merci Jakub, le seul problème que j'ai avec cela est que si j'utilise des transformations de configuration, alors les artefacts (à savoir le web.config) seront différents dans une construction de développement par rapport à une construction de production. Ou est-ce que je manque quelque chose? –

+0

@Troy Hunt - Mes tâches TeamCity ne font qu'exécuter des scripts MSBUild - J'exécute mes transformations manuellement dans MSBuild (+ tout autre changement dépendant de l'environnement). –