0

Je suis actuellement en train de migrer de la version complète de la gestion des versions sur site à la version Web de TFS 2015. Une chose que j'ai remarquée est que dans l'ancien client, vous pouvez créer une séquence de déploiement et de configurer des actions à exécuter en parallèle, par exemple, je pourrais avoir ces deux étapes en cours d'exécution en même temps:Gestion des versions TFS 2015 - Pas de tâches parallèles

SQLServer - DeployDatabase.ps1
AppServer - DeployWebApp.ps1

dans le web basé version, il semble que l'équivalent de «Actions» (maintenant appelé «Tâches») ne peut être défini en série. Vous pouvez donc constater une perte de temps potentiellement importante lorsque vous étendez l'idée de tâches parallèles à plusieurs rôles de serveur (toutes ces étapes étant indépendantes). Par souci de clarté, je sais que vous pouvez configurer une tâche pour cibler un groupe de serveurs, mais cela vous limitera à l'exécution d'un seul type de tâche à la fois. Donc, ma question est la suivante: Cette fonctionnalité existe-t-elle? Ai-je manqué un tour quelque part? Il semble que la nouvelle gestion des versions basée sur le Web se concentre davantage sur l'aspect du déploiement de l'environnement parallèle, oubliant le besoin de déployer le plus rapidement possible dans chaque environnement.

Éditer: Un exemple de ce que je décris ci-dessus.

Parallel Template

Vous pouvez voir que j'ai des déploiements parallèles qui se produisent sur les différents rôles de serveur withing un environnement. Je comprends que la recommandation faite par Daniel Mann est de créer plusieurs environnements et de se déclencher en conséquence, le problème avec l'ajout de plusieurs "Envs" pour cela est que nous perdons toutes les bonnes choses comme la possibilité de copier et manipuler rapidement les environnements . IE Je configure un modèle d'environnement DEV et copiez celui-ci "environnement" pour créer "QA", mais si j'avais 10 "Environnements" pour un vrai "Environnement" alors je devrais gérer cette surcharge. Il semble qu'une grande partie de la convivialité ait été supprimée dans la nouvelle offre. Ou est-ce que je rate le nouveau concept?

Répondre

1

L'offre de TFS 2015 est un peu limitée à cet égard, mais l'offre s'est rapidement améliorée depuis. Dans TFS 2017 (et VS Team Services), vous pouvez définir des déclencheurs d'environnement et des conditions de déploiement plus robustes pour les environnements. Cela vous permet de "déployer" vers plusieurs environnements simultanés, puis de "se connecter" aux environnements suivants. Avec cela, vous pouvez, par exemple, ont un pipeline de l'environnement qui ressemble à ceci:

  Dev 
    _____|_________ 
    |    | 
QA Database Tier QA Web Tier 
    |_______________| 
      | 
     Staging 
      | 
     etc 

Les deux environnements peuvent être déployer indépendamment « QA » en parallèle tant qu'il y avait plusieurs agents disponibles pour les exécuter. Cependant, gardez également à l'esprit que les exigences de licence concernant les builds/déploiements simultanés sont différentes dans TFS 2017 et VS Team Services. Le concentrateur de versions de TFS 2015 était considéré comme un "aperçu" et ne nécessitait aucune licence particulière en termes de nombre de pipelines de build/deploy simultanés pouvant être exécutés.

+0

Merci pour la réponse Daniel. Je pense que je suis, mais pour clarifier, est-ce que vous scindez effectivement l'environnement «QA» en deux environnements distincts afin de forcer des tâches parallèles à fonctionner sur deux rôles distincts? IE Je créerais une définition de construction, j'ajouterais 2 environnements à ceci et placerais des tâches ou des tâches pour chacun, je placerais alors le déclenchement de pipeline pour couper ces deux "environnements" en même temps (mais ce déclenchement anticipé n'est pas disponible en 2015). – Re1ease

+0

@ Re1ease C'est correct. –

+0

J'ai modifié ma question avec plus de détails, je ne pouvais pas adapter ma réponse dans un commentaire :) – Re1ease