Utilisation d'un modèle de processus de construction TFS (workflow) pour le déploiement

10

Je pense à utiliser les workflows TFS Build pour des déploiements complexes. Nous en avons peut-être besoin de déployer:

  1. Applications et services Web
  2. Base de données
  3. Rapports SSRS
  4. Packages SSIS
  5. Qui sait quoi d'autre

J'aime le fait que je puisse donner au flux de travail des paramètres de base comme la génération à déployer et il fonctionnerait simplement. Potentiellement, certaines parties pourraient nécessiter une approbation humaine, et je sais que le flux de travail peut également gérer cela. Un exemple est que nous pouvons utiliser le workflow pour créer un script de modification à partir de nos projets de base de données Visual Studio, mais le groupe DBA voudra approuver le script avant de l'exécuter.

Je suis intéressé de savoir si d'autres ont utilisé des "builds" pour cela dans le passé, et quels problèmes ont été trouvés.

John Saunders
la source
Nous utilisons TFS 2010 pour gérer nos builds / déploiements. Je n'ai pas de réponses rapides pour vous; mais à mesure que des problèmes surviennent, n'hésitez pas à m'envoyer un e-mail et nous pouvons au moins essayer de le comprendre.
Stephen Gross

Réponses:

1

Nous avons utilisé TFS pour déclencher nos builds mais utilisé msbuild pour construire nos projets. Le principal avantage est que nous avons un script de construction que nous pouvons modifier un garder sous contrôle de version. La chose est avec les workflows, par exemple: comment allez-vous construire une ancienne version de votre projet? Avec un script de construction, vous obtenez simplement l'ancienne version du contrôle de code source et c'est parti. Il est également agréable de pouvoir jouer avec lui et activer / désactiver différentes options.

Si vous êtes certain d'avoir un cycle de construction fixe, vous pouvez probablement le retirer, sinon avoir un script est probablement l'option la plus sûre et la plus flexible.

Carlo Kuip
la source
Les workflows sont des fichiers .xaml stockés dans le contrôle de code source. J'aurai besoin d'un processus qui branche les fichiers .xaml avec le code source. Vous branchez sans aucun doute vos fichiers msbuild avec la source.
John Saunders,
@JohnSaunders oui, nous branchons nos scripts de construction. C'est cool que la configuration de votre flux de travail soit stockée dans un fichier xml mais quelle influence la modification de la configuration a-t-elle sur les éléments qui sont dans une version différente de votre flux de travail (les éléments de travail, les tâches, etc. dans votre projet se trouvent également dans ce même flux de travail, n'est-ce pas? C'est là que je vois un risque, changer le comportement de la façon dont TFS gère votre projet à la volée.
Carlo Kuip
Je ne sais pas ce que tu veux dire. La modification du modèle de processus de génération ne modifiera pas les éléments de travail. Que voulez-vous dire par «éléments qui se trouvent dans une version différente de votre flux de travail»?
John Saunders,
Le modèle de processus que vous appliquez lors de la création d'un projet TFS crée un flux de travail. Cela signifie que si vous créez un élément de travail, il est lié aux différentes étapes de ce flux de travail. Votre processus de génération va-t-il être une extension de ce flux de travail ou est-ce un processus séparé?
Carlo Kuip
Désolé, vous confondez un modèle de processus et un modèle de processus de génération. Microsoft a mal choisi ses conditions. En outre, le modèle de processus que vous utilisez lors de la création d'un projet d'équipe ne crée pas de flux de travail à ma connaissance.
John Saunders,