Notes de publication de Team Foundation Server 2017 Update 2

Last Update: 25/09/2017

Dans cet article, vous trouverez des informations sur les dernières publications de Team Foundation Server 2017 Update 2. Cliquez sur le bouton pour télécharger.

<img src="media/tfs_download_button.png"alt="Téléchargez la version la plus récente de Team Foundation Server">

Pour les autres formats ou langues, consultez le site de téléchargement.

Pour en savoir plus sur Team Foundation Server 2017, consultez la page Configuration requise et compatibilité de Team Foundation Server.


Commentaires

Nous aimerions connaître votre opinion ! Vous pouvez signaler un problème et effectuer le suivi sur le portail de la Communauté de développeurs. Envoyez-nous vos suggestions par le biais du site de Mises à jour du produit Visual Studio Team Services.


Date de publication : 24 juillet 2017

Récapitulatif des mises à jour de TFS 2017 Update 2

Nous avons ajouté un grand nombre de nouvelles fonctionnalités à Team Foundation Server 2017 Update 2. Voici les principales :

Vous pouvez voir les détails de toutes les nouvelles fonctionnalités en consultant les améliorations par zone fonctionnelle :


Nouveautés de cette version

Améliorations du suivi des éléments de travail

Icônes de type d’élément de travail

Nous nous sommes engagés à l’échelle mondiale à rendre nos produits totalement accessibles à nos clients. Dans le cadre de cet engagement, nous avons recherché et résolu de nombreux problèmes d’accessibilité, tels que les modèles de clavier, la conception visuelle ou la disposition.

Dans de nombreuses expériences, le suivi des éléments de travail reposait exclusivement sur la couleur pour indiquer le type d’élément de travail. Toutefois, cela peut être problématique pour les utilisateurs daltoniens ou malvoyants qui peuvent se trouver dans l’incapacité de faire la distinction entre les éléments en raison des similitudes de couleur. Pour que l’ensemble de nos clients reconnaissent mieux les types d’éléments de travail, nous avons ajouté des icônes au langage visuel du type d’élément de travail. Vous pouvez personnaliser vos types d’éléments de travail en faisant votre choix dans notre bibliothèque d’icônes.

Les barres de couleur indiquant le type dans les grilles de backlogs et de requêtes ont été remplacées par des icônes de couleur (Figure 1).

<img src="media/tfsu2_01-1.png"; alt="Icônes WIT dans une requête" width="650" height="388" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 1) Icônes colorées dans une requête

Les cartes dans le tableau incluent à présent une icône de type (Figure 2).

<img src="media/tfsu2_02-2.png"; alt="Tableau avec type d’icône" width="600" height="187" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 2) Tableau avec type d’icône

Plans de livraison

Plans de livraison est un outil organisationnel qui permet de favoriser l’alignement et la visibilité entre les équipes en effectuant le suivi de l’état des travaux sur un calendrier d’itérations. Vous pouvez personnaliser votre plan afin d’inclure n’importe quel niveau d’équipe ou de backlog parmi les projets du compte. En outre, des critères de champ sur les plans vous permettent de personnaliser davantage votre affichage, tandis que des marqueurs soulignent les dates importantes.

Pour en savoir plus et installer l’extension, consultez la page Marketplace de Plans de livraison.

Les utilisateurs avec une instance TFS déconnectée d’Internet peuvent accéder aux plans de livraison directement à partir de l’option Gérer les extensions dans l’accès web, sans passer par VSTS Marketplace. Dans Gérer les extensions, cliquez sur Rechercher les extensions locales, puis sélectionnez Plans de livraison et cliquez sur Installer. Pour plus d’informations, consultez la documentation sur les extensions préinstallées.

Liaison automatique des éléments de travail aux builds

Avec ce nouveau paramètre dans la définition de build, vous pouvez suivre les builds qui intègrent votre travail sans avoir à parcourir un grand ensemble de builds manuellement. Chaque build réussie associée à l’élément de travail apparaît automatiquement dans la section de développement du formulaire d’élément de travail.

Pour activer cette fonctionnalité, activez le paramètre sous Options dans votre définition de build (Figure 3).

<img src="media/tfsu2_03-3.png"; alt="Liaison de build WIT" width="600" height="160" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 3) Liaison de build WIT

Dépréciation de l’ancien formulaire d’élément de travail

Les commentaires relatifs au nouveau formulaire d’élément de travail ayant été positifs, nous avons désormais une adoption à 100 % sur nos comptes hébergés. Nous souhaitons que les clients locaux bénéficient des mêmes avantages que ceux dont profitent nos utilisateurs VSTS. Nous avons donc décidé de déprécier l’ancien formulaire d’élément de travail et l’ancien modèle d’extensibilité. Pour en savoir plus sur nos plans, consultez la page Microsoft Application Lifecycle Management.

Recherche d’éléments de travail

Recherche d’éléments de travail fournit une recherche rapide et souple parmi tous vos éléments de travail dans tous les projets d’une collection (Figure 4). Vous pouvez utiliser le moteur de recherche de texte intégral de Recherche d’éléments de travail pour rechercher facilement des termes dans tous les champs d’éléments de travail et pour identifier efficacement les éléments de travail pertinents. Utilisez des filtres de recherche en ligne sur n’importe quel champ d’élément de travail pour afficher rapidement une liste d’éléments de travail réduite.

Une fois le service de recherche configuré dans TFS, vous pouvez effectuer des recherches sans avoir à installer d’autres éléments. Recherche d’éléments de travail vous permet de :

  • Rechercher dans tous vos projets : recherchez dans votre propre backlog et dans celui de vos équipes partenaires. Effectuez des recherches entre projets afin de rechercher parmi tous les éléments de travail de votre organisation. Affinez votre recherche à l’aide de filtres de chemin de zone et de projet.
  • Rechercher dans tous les champs d’éléments de travail : trouvez rapidement et facilement les éléments de travail pertinents en effectuant une recherche dans l’ensemble des champs d’éléments de travail (notamment les champs de règle attendue). Effectuez une recherche en texte intégral parmi tous les champs pour identifier efficacement les éléments de travail pertinents. La vue d’extrait de code indique où les correspondances ont été trouvées.
  • Rechercher dans des champs spécifiques : utilisez les filtres de recherche in-line rapides sur n’importe quel champ d’élément de travail pour réduire la liste des éléments de travail en quelques secondes. La liste déroulante de suggestions vous permet d’accélérer votre recherche. Par exemple, une recherche comme AssignedTo:Chris WorkItemType:Bug State:Active recherche tous les bogues actifs affectés à un utilisateur nommé Chris.
  • Tirer parti de l’intégration au suivi des éléments de travail : l’interface de recherche d’élément de travail s’intègre aux contrôles familiers dans le hub de travail, ce qui vous permet d’afficher, de modifier, de commenter, de partager et bien plus encore.

<img src="media/wishero-4.png"; alt="Recherche d’élément de travail" width="800" height="412" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 4) Recherche d’élément de travail

Améliorations apportées à la gestion de version

Nouvelle expérience de configuration de stratégies de branche

Nous avons repensé l’expérience de configuration des stratégies de branche et ajouté des fonctions très utiles (Figure 5). L’une des fonctionnalités les plus puissantes est la possibilité de configurer des stratégies pour des dossiers de branches. Vous pouvez le faire à partir de la vue Branches en sélectionnant un dossier de branches et en choisissant Stratégies de branche dans le menu contextuel.

<img src="media/tfsu2_32-5.png"; alt="Configurer des stratégies de branche" width="500" height="252" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 5) Configurer des stratégies de branche

Cela fait apparaître la nouvelle expérience utilisateur de configuration de stratégies, où vous pouvez configurer des stratégies qui s’appliquent à toutes les branches du dossier de branches (Figure 6).

<img src="media/tfsu2_33-6.png"; alt="Page Stratégies" width="700" height="781" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 6) Page Stratégies

Si vous utilisez la stratégie de build, vous pouvez désormais configurer plusieurs builds pour une même branche. Il existe également de nouvelles options permettant de spécifier un déclencheur automatique ou manuel (Figure 7). Les déclencheurs manuels sont utiles pour des choses telles que les séries de tests automatisées dont l’exécution peut prendre beaucoup de temps, et que vous ne devez exécuter qu’une seule fois avant d’effectuer la requête de tirage. La stratégie de build a également un nom complet qui est utile si vous configurez plusieurs builds.

<img src="media/tfsu2_34-7.png"; alt="Build manuelle" width="375" height="539" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 7) Build manuelle

Une fois que vous avez configuré une stratégie déclenchée manuellement, vous pouvez l’exécuter en sélectionnant l’option Mettre la build en file d’attente dans la section Stratégies de la requête de tirage (Figure 8).

<img src="media/tfsu2_35-8.png"; alt="File d’attente de builds manuelles" width="400" height="350" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 8) File d’attente de builds manuelles

Pour les stratégies de réviseur obligatoires (Figure 9), nous avons ajouté la possibilité pour les administrateurs de spécifier une remarque qui est ajoutée à la chronologie de requête de tirage quand la stratégie s’applique (Figure 10).

<img src="media/tfsu2_36-9.png"; alt="Boîte de dialogue de réviseur obligatoire" width="400" height="387" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 9) Boîte de dialogue de réviseur obligatoire

<img src="media/tfsu2_37-10.png"; alt="Remarque de réviseur obligatoire" width="700" height="204" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 10) Remarque de réviseur obligatoire

Nouvelle stratégie pour aucun commentaire actif

Assurez-vous que tous les commentaires de vos requêtes de tirage sont traités avec la nouvelle stratégie Commentaires. Quand cette stratégie est activée, les commentaires actifs bloquent l’achèvement de la requête de tirage, forçant la résolution de tous les commentaires. Les réviseurs qui laissent des commentaires pour l’auteur de la requête de tirage mais qui approuvent de manière optimiste la requête de tirage peuvent être sûrs qu’un auteur souhaitant une fusion ne manquera pas de commentaires.

Améliorations apportées au hub Fichiers

Nous avons apporté plusieurs mises à jour au hub Fichiers pour améliorer les expériences d’affichage et de modification.

Pour l’affichage, nous avons ajouté des tableaux croisés dynamiques qui vous permettent de consulter le fichier Lisez-moi dans le dossier actif (Figure 11), d’afficher un aperçu des fichiers Markdown, de comparer un fichier à une version précédente (Figure 12) et d’afficher la responsabilité.

<img src="media/tfsu2_14-11.png"; alt="Affichage des fichiers" width="550" height="143" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 11) Affichage des fichiers

<img src="media/tfsu2_15-12.png"; alt="Files compare" width="600" height="133" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 12) Comparer de fichiers

Pour la modification, vous pouvez maintenant afficher un aperçu de vos modifications, ajouter facilement un commentaire, valider dans une nouvelle branche et lier des éléments de travail (Figure 13).

<img src="media/tfsu2_16-13.png"; alt="Modification de fichiers" width="600" height="87" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 13) Modification de fichiers

Visualiser votre dépôt Git

Vous pouvez maintenant voir un graphique tout en affichant l’historique de validation pour les dépôts ou les fichiers. Cela vous permet de créer facilement un modèle mental de toutes vos branches et validations pour vos dépôts Git à l’aide d’un graphique git (Figure 14). Le graphique affiche toutes les validations par ordre topologique.

<img src="media/tfsu2_43-14.png"; alt="Graphique Git" width="800" height="348" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 14) Graphique Git

Les principales caractéristiques du graphique Git sont les suivantes (Figure 15) :

  1. Le graphique Git est aligné à droite. Ainsi, les validations associées à la branche par défaut ou à la branche sélectionnée apparaissent à droite, tandis que le reste du graphique se développe sur la gauche.
  2. Les validations de fusion sont représentées par des points gris connectés à leur premier parent et à leur second parent.
  3. Les validations normales sont représentées par des points bleus.
  4. Si la validation parente d’une validation n’est pas visible dans la fenêtre d’affichage des 50 validations suivantes, la connexion de validation est sectionnée. Une fois que vous cliquez sur la flèche, la validation est connectée à sa validation parente.

<img src="media/tfsu2_44-15.png"; alt="Éléments du graphique Git" width="800" height="189" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 15) Éléments du graphique Git

Afficher les balises Git sur les validations

Si votre équipe utilise des balises Git pour marquer un point spécifique dans l’historique de votre dépôt, vos validations afficheront désormais les balises que vous avez créées. Vous pourrez afficher les balises (Figure 16) d’une validation spécifique dans la vue Liste de validations et la page Détails.

<img src="media/tfsu2_45-16.png"; alt="Afficher les balises" width="800" height="199" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 16) Afficher les balises

Ajouter des balises à des validations

Au lieu de créer des balises à partir de la ligne de commande et d’envoyer des balises vers le dépôt, vous pouvez désormais simplement accéder à une validation et ajouter une balise (Figure 17). La boîte de dialogue de création de balise vous permet également de baliser n’importe quelle autre référence dans le dépôt.

<img src="media/tfsu2_46-17.png"; alt="Détails de création de balise" width="800" height="215" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 17) Détails de création de balise

La vue de liste de validations prend également en charge un menu contextuel (Figure 18). Inutile d’accéder à la page de détails des validations pour créer des balises et des branches (Figure 19).

<img src="media/tfsu2_47-18.png"; alt="Historique de création de balises" width="800" height="207" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 18) Historique de création de balises

<img src="media/tfsu2_48-19.png"; alt="Branche de balise" width="450" height="306" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 19) Branche de balise

Mises à jour des pages d’ensemble de modifications et de jeu de réservations

Nous avons modernisé les pages d’ensemble de modifications et de jeu de réservations dans TFVC. Les deux pages sont plus accessibles à ceux qui utilisent les technologies d’assistance. Les nouvelles pages ont également un nouvel en-tête qui contient le titre de l’ensemble de modifications et des informations associées, telles que des détails sur l’auteur (Figure 20).

<img src="media/tfsu2_41-20.png"; alt="Page d’ensemble de modifications" width="800" height="317" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 20) Page d’ensemble de modifications

Les pages d’ensemble de modifications et de jeu de réservations hébergent également un nouveau contrôle de discussion markdown (Figure 21) qui permet de taper des commentaires dans un fichier markdown, de @mention des utilisateurs, d’associer des éléments de travail à l’aide de #, et de joindre facilement des fichiers et des images.

<img src="media/tfsu2_42-21.png"; alt="Discussion d’ensemble de modifications" width="650" height="506" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 21) Discussion d’ensemble de modifications

Amélioration du filtrage de validation

Vous pouvez désormais filtrer les résultats de l’historique de validation (Figure 22) avec des options de filtrage avancées. Vous pouvez filtrer les validations par :

  • Historique complet
  • Historique complet avec fusions simplifiées
  • Premier parent
  • Historique simple (il s’agit du paramètre de filtre par défaut)

<img src="media/tfsu2_49-22.png"; alt="Amélioration du filtrage de validation" width="800" height="151" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 22) Amélioration du filtrage de validation

Importer des dépôts à partir de TFVC vers Git

Vous pouvez migrer du code à partir de vos dépôts TFVC vers des dépôts Git dans le même compte. Pour démarrer la migration, sélectionnez Importer le dépôt dans la liste déroulante du sélecteur de dépôt (Figure 23).

<img src="media/tfsu2_50.png"; alt="Liste déroulante du sélecteur de dépôt" width="239" height="312" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 23) Liste déroulante du sélecteur de dépôt

Vous pouvez importer des dossiers ou des branches spécifiques vers le dépôt Git, ou importer l’intégralité du dépôt TFVC (moins les branches) (Figure 24). Vous pouvez également importer jusqu’à 180 jours d’historique.

<img src="media/tfsu2_51.png"; alt="Importation de dépôt terminée" width="437" height="462" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 24) Importation de dépôt terminée

Verrouillage des fichiers GIT LFS

Nous avons ajouté la fonctionnalité de verrouillage de fichier Git LFS. Elle évite aux équipes qui travaillent avec des fichiers volumineux incomparables de perdre du travail quand plusieurs personnes essaient de modifier le même fichier à la fois. Quand quelqu’un souhaite commencer à modifier le fichier, il prend un verrou, ce qui informe le serveur. Quand un autre utilisateur tente d’acquérir un verrou, le serveur rejette la demande et signale à la deuxième personne que quelqu’un d’autre travaille déjà sur ce fichier. Pour utiliser cette fonctionnalité, effectuez la mise à niveau vers Git LFS 2.1 ou version ultérieure.

Les commentaires de validation Git utilisent le nouveau contrôle de discussion

Les commentaires allégés laissés sur des validations Git ont été mis à jour pour utiliser le nouveau contrôle discussion. Cela ajoute la prise en charge de Markdown à ces commentaires, et regroupe toutes les fonctionnalités de commentaires de code sur le web pour que Git et TFVC utilisent l’expérience la plus récente.

Nouveau contrôle arborescence

La vue Fichiers de requête de tirage, les détails de validation Git, les détails Git push, les détails de jeu de réservations TFVC, les détails d’ensemble de modifications TFVC, le hub d’ensemble de modifications TFVC et le hub d’historique Git ont été mis à jour avec un nouveau contrôle arborescence (Figure 25). L’arborescence offre quelques améliorations d’utilisation. Tout d’abord, nous avons changé la vue pour afficher une d’arborescence condensée qui réduit automatiquement les nœuds de dossiers vides, ce qui optimise le nombre de fichiers visibles.

L’arborescence montre également les commentaires d’une manière plus compacte. Les fichiers avec des commentaires affichent un élément enfant pour chaque thread de commentaire, avec l’avatar indiquant l’utilisateur qui a créé le thread. Les nouveaux threads de commentaires et ceux ayant des réponses sont indiqués par un point bleu, et le nombre de réponses est indiqué par un chiffre.

<img src="media/tfsu2_40.png"; alt="Nouvelle arborescence" width="448" height="634" style="border:2px solid Silver; display: block; margin: auto;">

*(Figure 25) Nouvelle arborescence *

Améliorations des requêtes de tirage

Amélioration des appels à action pour les auteurs et réviseurs de requêtes de tirage

Pour les équipes qui utilisent des stratégies de branche, il peut parfois être difficile de savoir exactement quelle action est nécessaire quand vous affichez une requête de tirage. Si l’appel à action principal est le bouton Terminé, cela signifie-t-il qu’il est prêt à être effectué ? Grâce aux informations sur la personne qui consulte la page et à l’état des stratégies de branche configurées, la vue de requête de tirage présente maintenant l’appel à action le plus logique pour cet utilisateur.

Quand des stratégies sont configurées mais qu’elles n’ont pas encore été passées, le bouton Terminé (Figure 26) encourage maintenant l’utilisation de la fonctionnalité de Saisie semi-automatique. Il est peu probable que vous puissiez effectuer la requête de tirage correctement si des stratégies bloquent. Nous proposons donc une option qui effectue la requête de tirage quand ces stratégies sont satisfaites.

<img src="media/tfsu2_62.png"; alt=" Fonctionnalité de Saisie semi-automatique" width="502" height="65" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 26) Fonctionnalité de Saisie semi-automatique

Il est plus probable que les réviseurs souhaitent approuver une requête de tirage plutôt que de l’effectuer. Ils verront donc le bouton Approuver (Figure 27) mis en surbrillance comme appel à action principal si vous n’avez pas encore approuvé.

<img src="media/tfsu2_20.png"; alt="Approbation d’appel à action" width="566" height="65" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 27) Approbation d’appel à action

Une fois l’approbation donnée, les réviseurs verront le bouton Terminé (ou Saisie semi-automatique) mis en surbrillance comme appel à action dans les cas où un réviseur est également la personne qui effectue la requête de tirage.

Commentaires avec action possible

Dans une requête de tirage avec de nombreux commentaires, il peut être difficile d’effectuer le suivi de toutes les conversations. Pour vous aider à mieux gérer les commentaires, nous avons simplifié le processus de résolution des éléments qui ont été traités avec un certain nombre d’améliorations :

  • Dans l’en-tête de chaque requête de tirage figure désormais le nombre de commentaires qui ont été résolus (Figure 28).

<img src="media/tfsu2_22.png"; alt="En-tête de requête de tirage" width="800" height="61" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 28) En-tête de requête de tirage

  • Quand un commentaire a été traité, vous pouvez le résoudre en un seul clic (Figure 29).

<img src="media/tfsu2_24-29.png"; alt="Bouton Résoudre" width="600" height="165" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 29) Bouton Résoudre

  • Si vous avez des commentaires à ajouter pendant que vous êtes en train de résoudre, vous pouvez répondre et résoudre en un seul geste (Figure 30).

<img src="media/tfsu2_25-30.png"; alt="Répondre et résoudre" width="600" height="258" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 30) Répondre et résoudre

  • À mesure que les commentaires sont résolus, le décompte augmente jusqu’à ce que tout ait été adressé (Figure 31).

<img src="media/tfsu2_26-31.png"; alt="Taux de traitement des commentaires" width="600" height="42" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 31) Taux de traitement des commentaires

  • Le filtre dans la vue d’ensemble a été amélioré pour permettre le filtrage en fonction de différents états de commentaire et pour afficher le nombre de commentaires pour chaque option de filtre (Figure 32).

<img src="media/tfsu2_23.png"; alt="Améliorations apportées aux filtres" width="225" height="241" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 32) Améliorations apportées aux filtres

La vue des mises à jour montre les rebasages et les opérations push forcées

Dans la vue Détails de la requête de tirage, l’onglet Mises à jour a été amélioré pour afficher quand une opération push forcée s’est produite et si la validation de base a changé (Figure 33). Ces deux fonctionnalités sont très utiles si vous rebasez des changements dans vos branches de rubriques avant d’effectuer vos requêtes de tirage. Les réviseurs auront maintenant suffisamment d’informations pour savoir exactement ce qui s’est produit.

<img src="media/tfsu2_30-33.png"; alt="Vues de mises à jour" width="700" height="344" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 33) Vues de mises à jour

Filtrage des requêtes de tirage par personne

Il est désormais plus facile de trouver des requêtes de tirage. Nous avons ajouté de nouvelles options de filtrage pour vous permettre de rechercher les requêtes de tirage créées par un auteur spécifique ou assignées à un relecteur spécifique (Figure 34). Il suffit de sélectionner un utilisateur dans le filtre d’auteur ou de réviseur, et la liste est mise à jour pour afficher uniquement les requêtes de tirage qui correspondent au filtre.

<img src="media/tfsu2_29-34.png"; alt="Filtrage par personne" width="700" height="126" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 34) Filtrage par personne

Raison requise lors du contournement des stratégies de requête de tirage

Quand vous contournez une stratégie de requête de tirage, vous devez spécifier une raison. Dans la boîte de dialogue Achever la requête de tirage, un nouveau champ Raison apparaît si vous choisissez de contourner (Figure 35).

<img src="media/tfsu2_38-35.png"; alt="Bypass dialog" width="450" height="425" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 35) Boîte de dialogue de contournement

Une fois que vous avez entré la raison et terminé la requête de tirage, le message s’affiche dans la Vue d’ensemble (Figure 36).

<img src="media/tfsu2_39-36.png"; alt="Message de contournement" width="700" height="54" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 36) Message de contournement

Partager des requêtes de tirage avec des équipes

L’action Partager la requête de tirage est pratique pour informer des réviseurs (Figure 37). Dans cette version, nous avons ajouté la prise en charge des équipes et des groupes. Ainsi, vous pouvez informer tous les participants à la requête de tirage en une seule étape.

<img src="media/tfsu2_17-37.png"; alt="Partager une requête de tirage avec des équipes" width="500" height="457" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 37) Partager une requête de tirage avec des équipes

Améliorations apportées aux requêtes de tirage pour les équipes

Si vous êtes membre de plusieurs équipes, vous voyez maintenant toutes les requêtes de tirage affectées aux équipes répertoriées dans la vue Mes demandes de tirage (Pull requests) (Figure 38). La vue Mes demandes de tirage (Pull requests) est ainsi l’emplacement central et unique où vous pouvez voir toutes vos requêtes de tirage.

<img src="media/tfsu2_18-38.png"; alt="Améliorations apportées aux requêtes de tirage pour les équipes" width="800" height="383" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 38) Améliorations apportées aux requêtes de tirage pour les équipes

Dans une version ultérieure, nous ajouterons les équipes au hub Requêtes de tirage sous Code pour qu’il soit plus facile de voir toutes les requêtes de tirage pour un même projet.

Notifications par défaut pour les commentaires de requêtes de tirage

Restez à jour avec les conversations qui ont lieu dans vos requêtes de tirage grâce aux nouvelles notifications de commentaires (Figure 39). Pour les requêtes de tirage que vous avez créées, vous êtes automatiquement averti quand un utilisateur ajoute un nouveau thread de commentaire ou répond à un thread existant. Quand vous commentez la requête de tirage d’un autre utilisateur, vous êtes averti de toutes les réponses ultérieures aux threads de commentaires que vous créez ou auxquels vous répondez.

<img src="media/tfsu2_19-39.png"; alt="Notifications de requêtes de tirage par défaut" width="450" height="299" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 39) Notifications de requêtes de tirage par défaut

Ces notifications sont disponibles dans le cadre des abonnements prêts à l’emploi, et sont configurables dans la page de paramètres Notifications.

Améliorations apportées à la gestion des packages

Mise à jour de l’expérience de gestion des packages

Nous avons mis à jour l’expérience utilisateur de gestion des packages pour la rendre plus rapide, pour résoudre les problèmes courants signalés par les utilisateurs et pour permettre l’application des fonctionnalités de cycle de vie de package à venir (Figure 40). Pour en savoir plus, consultez la page relative à la mise à jour de l’expérience.

<img src="media/tfsu2_04-40.png"; alt="Gestion des packages" width="700" height="238" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 40) Gestion des packages

La gestion des packages ajoute des fichiers Lisez-moi npm et le bouton de téléchargement

Vous pouvez maintenant voir le fichier Lisez-moi de n’importe quel package npm qui contient un fichier README.md (Figure 41). Les fichiers Lisez-moi peuvent aider votre équipe à documenter et à partager ses connaissances sur vos packages.

Vous pouvez également télécharger tout package npm à l’aide du bouton Télécharger qui se trouve dans la barre de commandes.

<img src="media/tfsu2_05.png"; alt="Fichier Lisez-moi npm de Gestion des packages" width="800" height="426" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 41) Fichier Lisez-moi npm de Gestion des packages

Tâches de génération Restauration NuGet Restore et Commande NuGet

Nous avons apporté des mises à jour importantes à la tâche Programme d’installation de NuGet (maintenant appelée Restauration NuGet) et nous avons ajouté une nouvelle tâche NuGet : Commande NuGet. Plus spécifiquement, les tâches Commande NuGet et Restauration NuGet utilisent maintenant nuget.exe 4.0.0 par défaut.

La tâche Restauration NuGet est maintenant optimisée pour le scénario le plus courant de restauration de packages avant une étape de build Visual Studio. Elle offre également une meilleure prise en charge des petits projets qui partagent un même flux NuGet : vous pouvez maintenant choisir un flux Team Services et l’ajouter à un fichier NuGet.Config généré automatiquement.

Pour les opérations NuGet plus complexes, la tâche Commande NuGet fournit la flexibilité nécessaire pour spécifier n’importe quelle commande et jeu d’arguments (Figure 42).

<img src="media/tfsu2_06-42.png"; alt="NuGet command" width="600" height="374" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 42) Commande NuGet

Améliorations de build et de mise en production

Nouvel éditeur de définition de build

Nous avons changé la conception de notre éditeur de définition de build pour fournir une expérience plus intuitive, corriger certains points faibles et ajouter de nouvelles fonctionnalités. Nous espérons que vous trouverez plus faciles l’utilisation des modèles, l’ajout des tâches et la modification des paramètres. De plus, vous pouvez désormais utiliser les paramètres de processus pour simplifier la spécification des bits de données les plus importants sans avoir à vous plonger dans vos tâches.

Recherchez des modèles

Recherchez le modèle souhaité puis appliquez-le, ou commencez avec un processus vide (Figure 43).

<img src="media/tfsu2_09-43.png"; alt="Build template search" width="600" height="248" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 43) Recherche de modèle de build

Recherchez et ajoutez rapidement une tâche exactement là où vous le souhaitez

Recherchez la tâche que vous souhaitez utiliser et, une fois que vous l’avez trouvée, ajoutez-la après la tâche actuellement sélectionnée sur le côté gauche ou faites-la glisser à l’endroit souhaité (Figure 44).

<img src="media/tfsu2_10-44.png"; alt="Build task search" width="600" height="473" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 44) Recherche de tâche de build

Vous pouvez également glisser-déplacer une tâche pour la déplacer, ou effectuer un glisser-déplacer tout en maintenant la touche Ctrl enfoncée pour copier la tâche.

Utilisez des paramètres de processus pour transmettre des arguments clés à vos tâches

Vous pouvez maintenant utiliser des paramètres de processus (Figure 45 pour que ceux qui utilisent votre modèle ou votre définition de build puissent plus facilement spécifier les bits de données les plus importants sans avoir à se plonger dans vos tâches.

<img src="media/tfsu2_11-45.png"; alt="Process parameters" width="600" height="467" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 45) Paramètres de processus

Si vous créez une build à partir de certains des modèles intégrés (par exemple Visual Studio et Maven), vous pouvez voir des exemples de fonctionnement.

Le nouvel éditeur offre plusieurs autres améliorations, par exemple un accès plus rapide à vos paramètres sources.

Pour obtenir une procédure pas à pas qui vous montre comment créer votre première définition de build à l’aide du nouvel éditeur, consultez CI/CD for newbies (Intégration continue et Déploiement continu pour les débutants).

Pour en savoir plus, consultez la page relative à l’Expérience utilisateur 2017.

Tâches de build conditionnelles

Si vous souhaitez mieux contrôler vos tâches de build, par exemple avoir une tâche qui effectue un nettoyage ou qui envoie un message quand une erreur survient, nous proposons désormais quatre choix intégrés qui vous permettent de contrôler quand une tâche est exécutée (Figure 46).

<img src="media/tfsu2_07-46.png"; alt="Tâches de build conditionnelles" width="600" height="300" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 46) Tâches de build conditionnelles

Si vous recherchez davantage de souplesse, par exemple avoir une tâche qui s’exécute uniquement pour certaines branches, avec certains déclencheurs, sous certaines conditions, vous pouvez exprimer vos propres conditions personnalisées :

and(failed(), eq(variables['Build.Reason'], 'PullRequest'))

Consultez la page Specify conditions for running a task (Spécifier des conditions pour l’exécution d’une tâche).

Tâches intégrées pour construire et déployer des applications basées sur un conteneur

Avec cette version, nous avons intégré par défaut la plupart des tâches de notre extension Docker dans le produit, nous les avons améliorées et nous avons introduit un ensemble de nouvelles tâches et de nouveaux modèles pour simplifier un jeu de scénarios de conteneur.

  • Docker : générer, effectuer un Push ou exécuter des images Docker, ou exécuter une commande Docker. Vous pouvez utiliser cette tâche avec Docker ou Azure Container Registry. Vous pouvez maintenant utiliser notre authentification du principal de service intégrée avec ACR pour rendre son utilisation encore plus simple.
  • Docker-Compose : générer, effectuer un Push ou exécuter des applications à plusieurs conteneurs Docker. Vous pouvez utiliser cette tâche avec Docker ou Azure Container Registry.
  • Kubernetes : déployer, configurer ou mettre à jour votre cluster Kubernetes dans Azure Container Service en exécutant des commandes kubectl.
  • Service Fabric : déployer des conteneurs sur un cluster Service Fabric. Service Fabric est aujourd’hui le meilleur choix pour l’exécution des conteneurs Windows dans le cloud.

Mises à jour de déploiement d’Application web Azure

Nous avons apporté de nombreuses améliorations pour les Applications web Azure :

  • La tâche de déploiement Azure App Service prend en charge les fichiers WAR Java, Node.js, Python, et les applications PHP à déployer.
  • La tâche de déploiement Azure App Service prend en charge le déploiement sur l’Application web Azure pour Linux à l’aide de conteneurs.
  • Le Portail Azure Livraison continue a été étendu et prend désormais en charge les applications Node.
  • La tâche de gestion Azure App Service a été ajoutée à Démarrer, arrêter ou redémarrer Azure App Service ou effectuer un échange d’emplacement. Elle prend également en charge l’installation des extensions de site pour permettre l’installation de la version requise de PHP ou Python ou l’installation d’IIS Manager ou Application Insights.

Nous avons aussi introduit la prise en charge de l’Intégration continue et du Déploiement continu dans la dernière version de l’interface de ligne de commande Azure pour la configuration de l’Intégration continue et du Déploiement continu. Voici un exemple :

az appservice web source-control config --name mywebapp --resource-group mywebapp_rg --repo-url https://myaccount.visualstudio.com/myproject/_git/myrepo --cd-provider vsts --cd-app-type AspNetCore

Les tâches .NET Core prennent en charge les fichiers projet

Dans la mise à jour actuelle, nous avons amélioré les tâches .NET Core pour prendre en charge les fichiers *.csproj en plus de project.json. Vous pouvez maintenant utiliser Visual Studio 2017 sur vos agents de build pour générer des applications .NET Core à l’aide de fichiers csproj.

Améliorations en matière de déploiement SSH

La tâche de build/mise en production Copier des fichiers via SSH prend désormais en charge les tildes(~) dans le chemin de destination pour simplifier la copie des fichiers vers le répertoire de base d’un utilisateur distant. En outre, une nouvelle option entraîne l’échec de la build/mise en production quand il n’y a aucun fichier à copier.

La tâche de build/mise en production SSH prend désormais en charge l’exécution de scripts avec des fins de ligne Windows sur les ordinateurs distants Linux ou macOS.

Installer une clé SSH lors d’une build ou d’une mise en production

Une nouvelle tâche d’aperçu, Installer la clé SSH (préversion), installe une clé SSH avant une build ou une mise en production et la supprime de l’agent quand la build ou la mise en production est terminée. La clé installée peut être utilisée pour l’extraction de code à partir de sous-modules ou d’un dépôt Git, pour l’exécution de scripts de déploiement ou pour d’autres activités qui nécessitent une authentification SSH. Elle sera améliorée prochainement afin de prendre en charge les phrases secrètes et d’autres fonctionnalités.

Les tâches échouent si Visual Studio 2017 est spécifié mais n’est pas présent sur l’agent

Les tâches Build Visual Studio et MSBuild vous permettent de sélectionner une version spécifique de Visual Studio. Jusqu’à présent, si la version Visual Studio 2017 n’était pas disponible, ces tâches sélectionnaient automatiquement la version suivante disponible.

Nous avons changé ce comportement. Maintenant, la build échoue si vous sélectionnez Visual Studio 2017 mais que cette version n’est pas présente sur l’agent.

Nous avons apporté cette modification pour les raisons suivantes :

  • Les types d’applications plus récents tels que .NET Core ne se compilent pas avec les outils de génération antérieurs. Ils nécessitent explicitement Visual Studio 2017 ou version ultérieure.

  • Vous obtenez des résultats plus cohérents et prévisibles quand vous utilisez la même version de Visual Studio.

  • Chaque fois que des tâches de build sont annulées, vous risquez d’obtenir des erreurs de compilation qui sont difficiles à comprendre.

Conseil

Veillez à utiliser une file d’attente connectée à un pool comportant des agents disposant de Visual Studio 2017, et vérifiez qu’aucun agent n’a que des versions antérieures de Visual Studio.

Nettoyage automatique de l’espace de travail de l’agent privé

Vous pouvez désormais configurer un pool d’agents pour nettoyer périodiquement les dépôts et répertoires de travail obsolètes (Figure 47). Par exemple, le pool supprimera les espaces de travail laissés par les définitions de mises en production et de builds supprimées.

<img src="media/tfsu2_08-47.png"; alt="Maintenance d’agent" width="600" height="386" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 47) Maintenance d’agent

Grâce à cette option, vos agents privés de build et de mise en production ne devraient pas courir le risque de manquer d’espace disque. La maintenance étant effectuée par agent (et non par ordinateur), si vous avez plusieurs agents sur un même ordinateur vous risquez quand même de rencontrer des problèmes d’espace disque.

État de mise à niveau de l’agent de build

Quand un agent est en cours de mise à niveau, il indique désormais l’état de la mise à niveau dans le portail de gestion de file d’attente et de pool.

Sélection des agents privés sur les ordinateurs qui ne sont pas en cours d’utilisation

Le système utilise maintenant le nom de l’ordinateur comme facteur lors de l’allocation d’une build ou d’une mise en production à un agent privé. Ainsi, il préfèrera un agent sur un ordinateur inactif à un agent sur un ordinateur occupé lors de l’allocation du travail.

Améliorations iOS DevOps

L’extension Apple App Store prend désormais en charge une vérification en deux étapes (authentification à deux facteurs) et la publication des builds sur des testeurs externes (Figure 48).

<img src="media/tfsu2_12-48.png"; alt="Connexion à l’Apple App Store" width="450" height="292" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 48) Connexion à l’Apple App Store

Installer le certificat Apple (préversion) est une nouvelle tâche de build qui installe un certificat de signature P12 sur l’agent pour une utilisation par une build Xcode ou Xamarin.iOS ultérieure.

Installer le profil Apple (préversion) est une nouvelle tâche de build pour l’installation de profils d’approvisionnement sur l’agent pour une utilisation par une build Xcode ou Xamarin.iOS ultérieure.

Les tâches de build MSBuild, Xamarin.Android et Xamarin.iOS prennent désormais en charge la génération avec Visual Studio pour l’ensemble d’outils Mac.

Améliorations de la couverture du code Java

La tâche de build Publier les résultats de la couverture du code indique la couverture du code Cobertura ou JaCoCo dans le cadre d’une build. Elle prend désormais en charge la spécification des caractères génériques et des modèles minimatch dans les champs Fichier de résumé et Répertoire de rapports, ce qui permet de résoudre les fichiers et les répertoires à chaque build pour les chemins qui changent d’une build à une autre.

Améliorations Maven et SonarQube

La tâche de build Maven permet désormais de spécifier un projet SonarQube pour les résultats de l’analyse dans les cas où il diffère de ce qui est spécifié dans le fichier pom.xml Maven.

Amélioration de l’intégration Jenkins

La tâche de build/mise en production Mettre en file d’attente un travail Jenkins prend maintenant en charge l’exécution des travaux de pipeline multibranche Jenkins pendant l’affichage de la sortie de console Jenkins dans Team Services (Figure 49). Les résultats de pipeline sont publiés dans le résumé de la build Team Services.

<img src="media/tfsu2_13.png"; alt="Amélioration de l’intégration Jenkins" width="336" height="314" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 49) Amélioration de l’intégration Jenkins

Déploiement de groupes identiques de machines virtuelles Azure

L’un des modèles communs utilisés pour le déploiement consiste à créer puis à déployer une image complète d’ordinateur pour chaque version de l’application. Pour faciliter cette opération, il existe une nouvelle tâche permettant de générer une image de machine immuable. Cette tâche utilise Packer pour générer une image d’ordinateur après avoir déployé les applications et tous les composants prérequis. Elle prend le script de déploiement ou le modèle de configuration Packer pour créer l’image de l’ordinateur, et la stocke dans un compte de stockage Azure. Vous pouvez ensuite utiliser cette image pour les déploiements de groupes identiques de machines virtuelles Azure qui fonctionnent correctement avec ce type de déploiement d’image immuable.

Substituer les paramètres de modèle dans les déploiements de groupes de ressources Azure

Actuellement, dans les tâches de déploiement de groupe de ressources Azure, les utilisateurs sélectionnent les fichiers template.json et parameters.json, et fournissent les valeurs de paramètres de substitution dans une zone de texte, en respectant une syntaxe spécifique. Cette expérience a été améliorée afin que les paramètres du modèle soient affichés dans une grille où vous pouvez les modifier et les substituer (Figure 50). Vous pouvez accéder à cette fonctionnalité en cliquant sur le ... en regard du champ de paramètres de substitution, ce qui ouvre une boîte de dialogue contenant les paramètres du modèle et leurs valeurs par défaut et valeurs autorisées (si elles sont définies dans les fichiers .json de modèles et de paramètres). Cette fonctionnalité impose que les règles CORS soient activées au niveau de la source. Si les fichiers .json de modèles et de paramètres sont dans Azure Storage Blob, consultez la documentation des services Microsoft Azure Storage pour activer CORS.

<img src="media/tfsu2_56-50.png"; alt="Paramètres de groupes de ressources Azure" width="625" height="524" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 50) Paramètres de groupes de ressources Azure

Plusieurs déclencheurs de mise en production avec filtres de branche et de balise

La gestion des mises en production prend maintenant en charge la configuration de déclencheurs de Déploiement continu sur plusieurs sources d’artefacts de type « Build ». Une fois ajoutée, une nouvelle mise en production est créée automatiquement quand une nouvelle version d’artefact est disponible pour l’une des sources d’artefacts spécifiées. Vous pouvez également spécifier la branche source à laquelle la nouvelle build doit appartenir pour déclencher une mise en production. Vous pouvez également définir des filtres de balise pour filtrer davantage les builds qui doivent déclencher une mise en production.

Définir les valeurs par défaut pour des sources d’artefacts dans une mise en production

Les utilisateurs peuvent définir la version d’artefact par défaut à déployer dans une mise en production lors de la liaison d’une source d’artefact dans une définition (Figure 51). Quand une mise en production est créée automatiquement, la version par défaut de toutes les sources d’artefacts est déployée.

<img src="media/tfsu2_58-51.png"; alt="Version d’artefact par défaut" width="450" height="410" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 51) Version d’artefact par défaut

Séparation des responsabilités pour les demandeurs et les approbateurs de déploiement

Auparavant, les propriétaires d’environnement pouvaient empêcher les créateurs de mise en production d’approuver les déploiements de la mise en production sur un environnement. Toutefois, vous pouviez démarrer manuellement le déploiement d’une mise en production créée par un autre utilisateur et l’approuver vous-même.

Nous avons corrigé cette incohérence en considérant le créateur de déploiement en tant que rôle d’utilisateur distinct pour les déploiements. Vous pouvez empêcher d’approuver des déploiements soit le créateur de mise en production, soit le créateur de déploiement.

Approbations au niveau de la mise en production

Vous pouvez maintenant choisir d’approuver automatiquement les déploiements qui ont été déclenchés automatiquement après un déploiement réussi dans un autre environnement (Figure 52). L’approbation d’une chaîne de déploiements (qui ont les mêmes approbateurs) peut être effectuée en une seule étape si vous choisissez de ne pas approuver chaque déploiement.

Supposez que vous disposez de deux environnements, Dev et Test, avec les approbateurs de prédéploiement « utilisateurA » et « utilisateurB », tous deux étant contraints d’approuver le déploiement. Si la stratégie de Test est configurée comme illustrée ci-dessous, au moment du déploiement il suffira qu’UtilisateurA et UtilisateurB approuvent uniquement Dev. Le déploiement sur Test sera approuvé automatiquement. Si le déploiement sur Test est déclenché manuellement, les approbations seront nécessaires avant le déploiement pour garantir des approbations correctes.

<img src="media/tfsu2_57.png"; alt="Approbations au niveau de la mise en production" width="650" height="534" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 52) Approbations au niveau de la mise en production

Déploiement sur Azure Government Cloud

Les clients ayant des abonnements Azure dans des clouds gouvernementaux peuvent désormais configurer un point de terminaison de service Azure Resource Manager pour cibler des clouds nationaux.

Ainsi, vous pouvez maintenant utiliser Release Management pour déployer n’importe quelle application sur des ressources Azure hébergées dans des clouds gouvernementaux, à l’aide des mêmes tâches de déploiement (Figure 53).

<img src="media/tfsu2_55-53.png"; alt="Cloud gouvernemental" width="500" height="507" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 53) Cloud gouvernemental

Définir le nombre maximal de déploiements parallèles

Cette fonctionnalité vous permet de contrôler la manière dont plusieurs mises en production en attente sont déployées sur un environnement donné (Figure 54). Par exemple, si votre pipeline de mise en production effectue la validation des builds dans un environnement d’assurance qualité et que le taux de génération des builds est plus élevé que le taux d’achèvement des déploiements, vous pouvez configurer plusieurs agents et autant de builds à valider en parallèle. Cela signifie que chacune des builds générées est validée, et que le temps d’attente dépend du nombre d’agents disponibles. Grâce à cette fonctionnalité, vous pouvez optimiser les validations en effectuant la validation des n versions les plus récentes en parallèle et en annulant les demandes de déploiement plus anciennes.

<img src="media/tfsu2_60-54.png"; alt="Déploiements parallèles" width="600" height="441" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 54) Déploiements parallèles

Améliorations du délai d’attente de la tâche Intervention manuelle

La tâche Intervention manuelle peut maintenant reprendre ou être rejetée automatiquement quand elle est en attente depuis 60 jours ou depuis la valeur de délai d’attente spécifiée, si elle est antérieure. Vous pouvez spécifier la valeur de délai d’attente dans la section d’options de contrôle de la tâche.

Exécution en parallèle de Release Management

Release Management prend désormais en charge une option d’exécution en parallèle pour une phase (Figure 55). Sélectionnez cette option pour déployer une phase en utilisant Multiconfiguration ou Multi-agent comme option de multiplicateur de phase.

<img src="media/tfsu2_61-55.png"; alt="Prise en charge de l’exécution en parallèle" width="600" height="146" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 55) Prise en charge de l’exécution en parallèle

Multiconfiguration : sélectionnez cette option pour exécuter la phase pour chaque valeur de multiconfiguration. Par exemple, si vous souhaitez déployer sur deux zones géographiques différentes en même temps, l’utilisation d’une variable ReleasePlatform définie sous l’onglet Variables avec des valeurs « Est des États-Unis, Ouest des États-Unis » exécuterait la phase en parallèle, une fois avec la valeur « Est des États-Unis » et une autre avec « Ouest des États-Unis ». Multi-agent : sélectionnez cette option pour exécuter la phase avec une ou plusieurs tâches sur plusieurs agents en parallèle.

Historique de déploiement d’application web dans le portail Azure

Release Management met désormais à jour les journaux de déploiement d’Azure App Service quand un déploiement est effectué à l’aide de la tâche de déploiement App Service. Vous pouvez afficher l’historique de déploiement dans le portail Azure en sélectionnant l’option Livraison continue dans le panneau App Service.

Améliorations apportées aux tests

Exécuter des tests à l’aide de phases de l’agent

Grâce à la Tâche de test Visual Studio, vous pouvez maintenant exécuter des tests automatisés à l’aide de phases de l’agent (Figure 56).

Il existe désormais un agent automation unifié pour les builds, les mises en production et les tests. Cela offre les avantages suivants :

  1. Vous pouvez utiliser un pool d’agents pour vos besoins de tests.
  2. Vous pouvez exécuter des tests dans différents modes avec la même Tâche de test Visual Studio, en fonction de vos besoins : exécution basée sur un agent unique, exécution de tests distribuée basée sur plusieurs agents, ou exécution multi-configuration afin d’exécuter des tests sur différents navigateurs, par exemple.

<img src="media/tfsu2_53-56.png"; alt="Exécuter des tests à l’aide de phases de l’agent" width="600" height="434" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 56) Exécuter des tests à l’aide de phases de l’agent

Pour plus d’informations, consultez ce billet de blog Microsoft Application Lifecycle Management.

Déclenchement à la demande de tests automatisés

Le hub Test prend désormais en charge le déclenchement de cas de test automatisés à partir de plans de test et de suites de tests (Figure 57). L’exécution de tests automatisés à partir du hub Test nécessite une configuration similaire à celle que vous effectuez quand vous exécutez des tests de manière planifiée dans des environnements de mise en production. Vous devez configurer un environnement dans la définition de mise en production à l’aide du modèle Exécuter les tests automatisés à partir de plans de test et associer le plan de test pour exécuter les tests automatisés. Pour obtenir des instructions étape par étape expliquant comment configurer des environnements et exécuter des tests automatisés à partir du hub Test, consultez la documentation.

<img src="media/tfsu2_54.png"; alt="Déclenchement à la demande de tests automatisés" width="721" height="408" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 57) Déclenchement à la demande de tests automatisés

Améliorations de l’entrepôt

Améliorations des performances dans le traitement des cubes Analysis Services

Nous avons apporté des améliorations des performances à la vue vDimWorkItemTreeOverlay, qui est utilisée pour créer une dimension Hiérarchie d’arborescence d’éléments de travail basée sur les liens. Bien qu’elle dépende des liens System.LinkTypes.Hierarchy, nous avons observé que la durée du traitement était aussi affectée par d’autres liaisons (par exemple System.LinkTypes.Related). Nous avons optimisé la vue afin d’ignorer les types de liens d’addition qui limitent la quantité de données lues. Cette modification réduit considérablement le temps de traitement pour certains entrepôts.

Réconciliation de schémas sans respect de la casse

Le schéma de la base de données de l’entrepôt est créé en fusionnant les champs de toutes les bases de données de collection attachées dans le processus de réconciliation de schémas. Auparavant, toutes les comparaisons respectaient la casse et les administrateurs devaient vérifier qu’il existait une correspondance exacte sur les noms de référence des champs. Ceci conduisait à des problèmes où il y avait de très légères différences de casse. Avec cette version, nous rendons le processus plus tolérant à ces divergences.

Améliorations apportées à l’administration

Destinataires de courrier électronique combinés pour les notifications

Les destinataires de la même notification par courrier électronique sont désormais regroupés sur la ligne À : et un même email leur est envoyé. Auparavant, des emails distincts étaient envoyés à chaque destinataire. Il était ainsi difficile de savoir qui d’autre avait reçu la notification et d’avoir une conversation par email au sujet de l’événement. Cette fonctionnalité s’applique aux abonnements par défaut et aux abonnements d’équipe capables de cibler plusieurs destinataires. Par exemple, tous les réviseurs d’une requête de tirage reçoivent maintenant le même email quand la requête de tirage est modifiée.

En savoir plus sur la combinaison des destinataires de courrier électronique.

Notifications prêtes à l’emploi

Les utilisateurs et les équipes sont désormais avertis automatiquement par email en cas d’activité dans le compte qui les concerne directement, par exemple :

  • Quand un élément de travail est assigné à un utilisateur
  • Quand un utilisateur ou une équipe est ajouté en tant que réviseur pour une requête de tirage
  • Quand un utilisateur ou une équipe est un réviseur sur une requête de tirage qui est mise à jour
  • Quand un autre utilisateur répond à un commentaire de requête de tirage
  • Quand une build demandée par un utilisateur se termine
  • Quand une extension est installée ou demandée (administrateurs uniquement)

Les utilisateurs peuvent annuler leur abonnement à l’une de ces activités en accédant aux paramètres de Notification dans le menu du profil utilisateur et en désactivant l’option appropriée.

Un administrateur de compte peut désactiver un ou plusieurs de ces abonnements automatiques en accédant au hub Notifications au niveau de la collection sous l’engrenage Paramètres. Vous pouvez désactiver n’importe lequel de ces abonnements en cliquant sur Désactiver sous l’action « ... ». Une fois qu’un abonnement est désactivé, il n’est plus visible par les utilisateurs dans leur page de paramètres de notifications personnelles.

En savoir plus sur les notifications prêtes à l’emploi.

Autorisations relatives à la gestion des extensions

Un administrateur peut maintenant autoriser d’autres utilisateurs et groupes à gérer les extensions de la collection (Figure 58). Auparavant, seuls les administrateurs de collection (par exemple les membres du groupe Administrateurs de la collection de projets) pouvaient examiner les demandes d’extension et installer, désactiver ou désinstaller des extensions.

Pour accorder cette autorisation, un administrateur peut accéder au hub d’administration Extensions en ouvrant le menu Marketplace, en sélectionnant Gérer les extensions, puis en cliquant sur le bouton Sécurité :

<img src="media/tfsu2_52-58.png"; alt="Autorisations relatives à la gestion des extensions" width="650" height="290" style="border:2px solid Silver; display: block; margin: auto;">

(Figure 58) Autorisations relatives à la gestion des extensions

Recevoir une notification quand des extensions sont installées, nécessitent une attention, et autres

Les administrateurs, ou ceux ayant la capacité à gérer des extensions, sont désormais avertis automatiquement quand une extension est installée, désinstallée, activée, désactivée ou nécessite une attention. Cela est particulièrement utile dans les déploiements à grande échelle où plusieurs personnes ont la responsabilité de la gestion des extensions. Les administrateurs peuvent désactiver ces notifications en accédant aux paramètres de Notification sous le menu de profil et en désactivant le bouton bascule des extensions.

Les administrateurs peuvent également définir des abonnements personnalisés pour les événements liés aux extensions. Par exemple, un administrateur peut être averti chaque fois qu’une extension est mise à jour.

Les utilisateurs peuvent désormais également désactiver les notifications automatiques concernant leurs demandes d’extension.

Autoriser les administrateurs TFS à ajouter des abonnés au niveau d’accès avancé

Le niveau d’accès Avancé sera supprimé dans les prochaines versions de Team Foundation Server. Jusqu’à ce moment-là, les administrateurs TFS auront néanmoins la possibilité d’ajouter des abonnés à Plateforme MSDN et à Visual Studio Test Professional au niveau d’accès Avancé avec Update 2.

Les abonnés à Visual Studio Enterprise doivent être ajoutés au niveau d’accès Visual Studio Enterprise plutôt qu’au niveau Avancé. Si vous avez acheté l’extension Test Manager, continuez à la gérer dans le hub Utilisateurs dans le projet d’équipe où vous avez effectué l’achat.

Intégration de Microsoft Teams

Les organisations utilisant Microsoft Teams pour collaborer peuvent désormais voir l’activité de leurs projets TFS dans les canaux de leur équipe. Ceci permet aux équipes de rester informées des modifications des éléments de travail pertinents, des demandes d’extraction, des builds, des versions et d’autres événements dès lors qu’elles travaillent dans Microsoft Teams. Pour plus d’informations, consultez notre documentation.


Problèmes connus

Les formulaires d’éléments de travail ne s’affichent pas correctement dans le web

  • Problème :

    Si vous avez installé un contrôle personnalisé, comme le contrôle à valeurs multiples, pour le client Visual Studio et non pour le client web, les formulaires d’éléments de travail ne s’affichent pas dans le web.

  • Solution de contournement :

    Vous devez effectuer une mise à jour vers la dernière version de votre contrôle. Vous devez ajouter une disposition web qui ne contient pas l’élément de contrôle manquant. Le contrôle à valeurs multiples le plus récent pour TFS 2017 est accessible dans la page Contrôles personnalisés pour TFS Work Item Tracking. Pour plus d’informations sur la disposition, consultez All FORM XML elements reference (TFS 2015) (Référence des éléments XML FORM (TFS 2015).

Problèmes connus

La version de TFS est RC2, et non pas la version release finale

  • Problème :

    Après avoir téléchargé TFS 2017 Update 2 avant le 1er août 2017 et l’avoir installé, vous avez une version RC2.

  • Solution de contournement :

    Il s’agissait d’un problème intermittent dans les liens d’installation qui a été résolu le 1er août 2017. Retéléchargez TFS 2017 Update 2 et installez cette version release finale.


The Developer Community Portal Voir les problèmes signalés par les clients pour Team Foundation Server 2017.


Haut de page