Team Foundation Server 2017 Update 1

Last Update: 25/07/2017

Pour afficher les dernières mises à jour, consultez les Notes de mise à jour.

Date de publication : 7 mars 2017

Nous avons le plaisir d’annoncer la sortie de Team Foundation Server 2017 Update 1. Cette nouvelle version inclut nos dernières fonctionnalités et améliorations. Vous trouverez des informations sur la configuration requise dans la page Configuration requise et compatibilité.

Téléchargement : Team Foundation Server 2017 Update 2017

Pour en savoir plus sur d’autres téléchargements associés, consultez la page Téléchargements.

Nouveautés de TFS 2017 Update 1


Problèmes connus


Nouveautés

Expériences plus personnelles

Page d’accueil de collection personnalisée

Avec cette version, il est très facile d’accéder aux artefacts les plus importants. La page de collection a été repensée (Figure 1) et personnalisée pour afficher les projets, les Favoris, le travail et les demandes Pull qui vous intéressent. Vous commencez ainsi la journée de façon idéale. Vous pouvez accéder à un seul emplacement pour trouver rapidement tout ce dont vous avez besoin et ce qui vous intéresse. Pour plus d’informations, consultez Pages Hub du compte.

(Figure 1) Page de collection repensée

Votre projet obtient une identité

Il existe désormais un emplacement pour obtenir une vue d’ensemble de votre projet. La nouvelle page de projet facilite l’affichage et la modification de la description du projet, l’affichage ou l’ajout de membres ainsi que la vérification de l’activité la plus récente. Il est même plus facile de commencer un nouveau projet et d’exploiter toutes les fonctionnalités DevOps intégrées de TFS.

Améliorations apportées à la gestion de version

Modifications de l’autorisation d’administrateur de dépôt

Pour les dépôts Git, nous avons divisé l’autorisation Administrer en plusieurs autorisations plus précises. Ceci vous donne plus de souplesse pour décider qui peut effectuer quelles actions. Par exemple, vous pouvez autoriser tout le monde dans votre compte à créer de nouveaux dépôts, mais leur interdire de supprimer des dépôts ou d’y ajouter de nouveaux utilisateurs. Les nouvelles autorisations sont :

  • Gérer les autorisations : ajouter/supprimer des utilisateurs et des autorisations.
  • Créer : créer un dépôt.
  • Supprimer : supprimer un dépôt.
  • Renommer : renommer un dépôt.
  • Modifier les stratégies : configurer des stratégies de branche.
  • Supprimer les verrous des autres : supprimer les verrous de branche définis par un autre utilisateur.

Ces autorisations peuvent être appliquées à tous les dépôts d’un projet ou à des dépôts individuels.

Améliorations des stratégies de branche

Dans la section Stratégies (Figure 2), les stratégies obligatoires et facultatives sont désormais regroupées en sections. Cela indique exactement quelles stratégies sont nécessaires pour effectuer une demande Pull. Les réviseurs obligatoires figurent dans un résumé de la section concernée. Ils sont marqués comme ayant donné leur validation seulement une fois que tous les réviseurs obligatoires ont approuvé les requêtes.

(Figure 2) Section Stratégies

Si vous devez contourner les stratégies (avec les autorisations nécessaires), la boîte de dialogue Terminer offre une nouvelle expérience (Figure 3). Toutes les stratégies qui ne sont pas satisfaites apparaissent dans un message d’avertissement, et une nouvelle option explicite quant au choix de remplacer les stratégies s’affiche. Choisir l’option de remplacement lance l’action Remplacer et terminer, qui finalise la requête de tirage en remplaçant les stratégies qui ont échoué.

(Figure 3) Boîte de dialogue Terminer

Prendre en charge les exclusions de fichiers dans la stratégie de réviseur obligatoire

Quand vous spécifiez des réviseurs obligatoires pour des chemins de fichiers spécifiques, vous pouvez désormais exclure des chemins en utilisant un « ! » préfixe pour le chemin à exclure. Par exemple, vous pouvez l’utiliser pour exclure un dossier de documents de votre validation normalement obligatoire (Figure 4).

(Figure 4) Prise en charge de l’exclusion de fichiers

Importer un dépôt

Vous pouvez maintenant importer un dépôt Git à partir de GitHub, BitBucket, GitLab ou d’autres emplacements. Procédez à l’importation dans un dépôt vide, nouveau ou existant. Pour plus d’informations, consultez Importer un dépôt Git.

Ajouter un fichier .gitignore pendant la création du dépôt

Lors de la création d’un dépôt Git, vous pouvez maintenant ajouter un fichier .gitignore et l’associer à votre dépôt. Un fichier .gitignore spécifie les fichiers que Git doit ignorer lors de l’exécution d’une validation.

La boîte de dialogue vous permet de sélectionner l’un des nombreux modèles .gitignore disponibles (Figure 5).

(Figure 5) Ajouter un fichier .gitignore pendant la création du dépôt

Sélection Cherry-pick et Rétablir

Nous avons ajouté deux nouvelles fonctionnalités qui facilitent le déplacement ou l’annulation des modifications à partir du portail web : la sélection Cherry-pick et Rétablir.

Utilisez la commande cherry-pick pour déplacer les modifications d’une requête de tirage (Pull) vers plusieurs branches. Vous l’utilisez en général quand un bogue doit être corrigé, mais également résolu dans le code principal. Une fois que vous avez créé la requête de tirage qui contient le correctif pour la branche du correctif logiciel, vous pouvez facilement effectuer une sélection cherry-pick du même correctif dans la branche maître. Pour plus d’informations, consultez Copier les modifications avec la sélection cherry-pick.

Vous pouvez annuler les modifications apportées aux requêtes de tirage terminées. Recherchez la requête de tirage qui présente la modification incorrecte, cliquez sur Rétablir, puis suivez les étapes pour créer une requête qui annule les modifications indésirables. Pour plus d’informations, consultez Annuler les modifications avec Git.

Branche de comparaison configurable

Vous pouvez désormais définir votre branche de comparaison sur une autre valeur que la branche par défaut. Ce paramètre est mémorisé en fonction de chaque utilisateur. Les requêtes de tirage et les nouvelles branches créées à partir de la page Branches sont basées sur la branche que vous définissez comme branche de comparaison. Pour plus d’informations, consultez Gérer vos branches.

Rechercher un fichier ou un dossier

Vous pouvez rechercher rapidement un fichier ou un dossier dans un dépôt à l’aide du hub Code de votre projet Team Services. Le résultat liste les éléments de votre dossier actuel, suivi des fichiers et dossiers du dépôt.

Pour n’importe quel dépôt Git, accédez à la zone de contrôle de chemin (Figure 6) et commencez à taper pour lancer une recherche de navigation du fichier ou dossier voulu.

(Figure 6) Rechercher un fichier ou un dossier

Confirmation de suppression de dépôts

Pour empêcher les suppressions accidentelles de dépôts, vous devez maintenant taper le nom du dépôt à supprimer pour confirmer l’action.

Ajouter des dépôts aux Favoris

Vous pouvez désormais ajouter aux Favoris les dépôts que vous utilisez le plus fréquemment. Dans le sélecteur de dépôts (Figure 7), vous verrez les onglets pour Tous les dépôts et vos Favoris. Cliquez sur l’étoile pour ajouter un dépôt à la liste des Favoris.

(Figure 7) Ajouter des dépôts aux Favoris

Rechercher un fichier ou un dossier dans l’historique de validation

Comme avec l’onglet Fichiers, vous pouvez désormais rechercher un fichier ou un dossier dans un dépôt et consulter l’historique des validations pour ce fichier ou dossier. Pour n’importe quel dépôt Git, accédez à la zone de contrôle de chemin sous l’onglet Historique (Figure 8) et commencez à taper pour lancer une recherche d’historique du fichier ou dossier voulu.

(Figure 8) Historique des validations

Améliorations apportées à la page de validation

Nous avons mis à jour et optimisé votre expérience de la page des détails de la validation et de la page de l’historique des validations. Vous bénéficiez désormais d’une vue d’ensemble pour rechercher et utiliser des informations importantes relatives à la validation.

Voici un exemple de la page des détails de la validation (Figure 9) :

(Figure 9) Détails de la validation

Voici la page de l’historique des validations (Figure 10) :

(Figure 10) Historique des validations

Rechercher des validations dans les branches

Vous pouvez maintenant rechercher une validation dans une branche ou une balise spécifiée en cliquant sur le bouton Rechercher dans les branches dans la page des détails de la validation (Figure 11).

(Figure 11) Recherche de validation

Vous pouvez sélectionner des balises et des branches dans la fenêtre à afficher, même si ces branches et balises ne contiennent pas la validation donnée (Figure 12).

(Figure 12) Boîte de dialogue de recherche de validation

Barre d’outils de contrôle des discussions

Markdown est un outil puissant quand vous ajoutez des commentaires aux requêtes de tirage, mais il peut être difficile de se rappeler de sa syntaxe. Pour faciliter son utilisation, nous avons ajouté une barre d’outils au contrôle des discussions (Figure 13). Elle insère la syntaxe Markdown appropriée pour ajouter les mises en forme courantes. Les titres, les caractères en gras, les caractères en italique, les liens, le code et les listes peuvent tous être ajoutés à l’aide de nouveaux contrôles de la barre d’outils, et des fonctionnalités comme les mentions @ et # peuvent également être entrées à l’aide de la barre d’outils. Des raccourcis clavier sont disponibles pour les caractères en gras (Ctrl+B), pour les caractères en italique (Ctrl+I) et pour la création de liens (Ctrl+K).

(Figure 13) Barre d’outils des discussions

Améliorations des commentaires des requêtes de tirage (Pull)

Pour vous aider à mieux identifier les nouveaux commentaires dans une demande Pull, nous avons ajouté des éléments graphiques supplémentaires aux nouvelles réponses dans les thèmes de discussion existants. Les commentaires de la vue Fichiers mettent également en surbrillance les thèmes qui ont de nouveaux commentaires (Figure 14).

(Figure 14) Améliorations des commentaires des demandes Pull

Affichage des requêtes de tirage (Pull) pour une validation

Vous pouvez désormais afficher toutes les demandes Pull associées à une validation dans la page Détails de la validation. Dans l’image ci-dessous (Figure 15), vous pouvez voir que :

  • Dans la liste déroulante des requêtes de tirage associées, il en existe deux qui sont associées à cette validation.
  • La requête de tirage #2 a fait passer cette validation en « principal » (master).
  • La même validation a été placée dans la branche 4 via la requête de tirage #1.

(Figure 15) Demande Pull dans les validations

Suivre une requête de tirage

Vous pouvez désormais suivre une requête de tirage pour rester informé de toute modification apportée via des alertes par e-mail. L’option Suivre est disponible dans le menu contextuel (Figure 16).

(Figure 16) Suivre une demande Pull

Redémarrer la fusion de la requête de tirage

Une autre option a été ajoutée pour retenter la fusion d’une requête de tirage dans laquelle la branche cible a été mise à jour. Cette option, Redémarrer la fusion, est utile quand vous voulez vérifier que les modifications récentes apportées à la branche cible n’ont pas généré de conflits ni altéré la build de requête de tirage.

Achèvement bloqué pour les requêtes de tirage refusées

Les branches pour lesquelles la stratégie de révision du code est définie indiquent qu’il est impossible d’achever la demande Pull si elle est rejetée par un ou plusieurs réviseurs. Comme un grand nombre d’entre vous s’attendait à ce comportement, nous avons modifié le comportement par défaut. Pour les équipes qui veulent le comportement d’origine, il existe une nouvelle option dans la page des paramètres de stratégie de branche (Figure 17).

(Figure 17) Stratégie de révision du code

Markdown dans la description de la requête de tirage

Agrémentez la description de votre requête de tirage avec Markdown. La prise en charge Markdown que vous connaissez et appréciez dans les commentaires de requête de tirage est désormais disponible dans la description de la requête de tirage.

Pièces jointes dans les discussions de requête de tirage

Vous pouvez maintenant ajouter des pièces jointes à vos commentaires de demande Pull (Figure 18). Vous pouvez les ajouter par glisser-déplacer ou navigation. Pour les images, vous pouvez ajouter les pièces jointes par simple collage à partir du Presse-papiers. L’ajout d’une pièce jointe met automatiquement à jour le commentaire pour inclure une référence Markdown à la nouvelle pièce jointe.

(Figure 18) Pièces jointes dans les discussions de demande Pull

Surligner les requêtes de tirage qui comportent des mises à jour

Il est désormais plus facile de voir les mises à jour pour vos requêtes de tirage. En mode Liste des demandes Pull (Figure 19), les demandes modifiées depuis la dernière fois que vous les avez vues s’affichent avec une nouvelle colonne de mises à jour qui indique un récapitulatif des modifications.

(Figure 19) Fichiers mis à jour de demandes Pull

Quand vous affichez une demande Pull qui comporte des modifications, un message récapitulatif similaire s’affiche dans la vue d’ensemble, où les nouvelles opérations push et nouveaux threads de commentaires sont surlignés en bleu (Figure 20). En cliquant sur le lien Afficher les mises à jour du code, vous accédez à la vue Fichiers, où une diff des nouvelles modifications depuis la dernière fois que vous avez vu la requête de tirage est affichée. Cette fonctionnalité facilite le suivi d’une requête de tirage à laquelle l’auteur apporte des modifications en réponse aux commentaires.

(Figure 20) Récapitulatif de demande Pull

Stratégie de branche pour la stratégie de fusion de la requête de tirage

Nous avons ajouté une nouvelle stratégie de branche (Figure 21) qui vous permet de définir une stratégie de fusion des demandes Pull pour chaque branche. Auparavant, vous preniez la décision de fusionner ou d’effectuer une action squash au moment de terminer une demande Pull. Si elle est activée, cette stratégie remplace vos préférences, en appliquant la spécification définie par la stratégie.

(Figure 21) Stratégie de branche

Exposer des informations sur les conflits de fusion

S’il existe des fichiers présentant des conflits dans une demande Pull, les détails de ces conflits sont désormais visibles dans la vue d’ensemble (Figure 22). Chaque fichier en conflit est répertorié avec un bref récapitulatif du type de conflit entre les branches source et cible.

(Figure 22) Conflits de fusion

Bouton d’aperçu Markdown

Quand vous affichez une diff d’un fichier Markdown dans une validation, une opération push ou une requête de tirage, vous pouvez désormais facilement basculer pour visualiser la vue obtenue.

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

Amélioration de la recherche dans les champs d’identité délimitée

Dans cette version, nous avons mis à jour le comportement du sélecteur d’identités dans les champs d’identité délimitée, par exemple dans les champs d’identité qui sont configurés pour n’autoriser une affectation qu’à un groupe d’utilisateurs spécifique. Dans la version mise à jour, la liste des éléments utilisés récemment du sélecteur et les résultats de recherche retournent uniquement les membres du groupe configuré et non plus tous les utilisateurs valides de la collection.

Améliorations apportées aux builds

Restaurer les définitions de build

Vous pouvez restaurer une version précédente d’une définition de build en accédant à l’onglet Historique lors de la modification d’une définition de build.

Désactiver la synchronisation et l’extraction des sources dans une build

Si vous le voulez, vous pouvez désactiver la synchronisation et l’extraction des sources automatiques pour Git. Cela vous permet de gérer les opérations sources dans une tâche ou un script au lieu de compter sur le comportement intégré de l’agent. Toutes les variables liées à la source standard telles que Source.Version, Source.Branch et Build.SourcesDirectory sont définies.

Clone superficiel Git et Git LFS

L’agent de build prend désormais en charge le clone superficiel Git et Git LFS. Pour plus d’informations, consultez la page du dépôt de définition de build.

Gestion de version de tâche pour les définitions de build et de mise en production

Nous vous permettons de gérer la version principale d’une tâche que vous exécutez dans votre build ou mise en production. Cette modification réduira le nombre d’erreurs imprévisibles provoquées par des mises à jour automatiques de l’agent et de la version de la tâche. Spécifiez désormais la version principale de la tâche sous l’onglet Build de votre définition ou Environnements de votre définition de mise en production.

Quand une version secondaire est publiée (par exemple, 1.2 à 1.3), vous obtenez automatiquement cette modification dans votre build. En revanche, si une nouvelle version principale est publiée (par exemple, 2.0), votre build conserve la version 1.3 jusqu’à ce que vous changiez la définition et passiez manuellement à la nouvelle version principale. Un indicateur dans la définition de build vous avertit de la publication de nouvelles versions principales.

Paiement demandé pour la gestion des packages

Pour continuer à utiliser la gestion des packages, vous avez besoin d’un abonnement Visual Studio Enterprise ou d’une licence Gestion des packages achetée dans la Place de marché. Vous pouvez en savoir plus sur les licences Gestion des packages.

Améliorations apportées aux packages

Affichages de mise en production dans la gestion des packages

Nous avons ajouté une nouvelle fonctionnalité à la gestion des packages appelée affichages de mise en production (Figure 23). Les affichages de mise en production constituent une partie des versions de package de votre flux que vous avez promues dans cet affichage de mise en production. La création d’un affichage de mise en production et le partage de cet affichage avec les consommateurs de votre package vous permettent de gérer les versions sur lesquelles elles prennent une dépendance. Cette fonctionnalité est particulièrement utile dans les scénarios d’intégration continue où vous publiez souvent des versions de package mises à jour, mais ne souhaitez pas forcément annoncer ni prendre en charge chacune d’entre elles.

Recherchez le démarrage rapide dans Web Access ou découvrez les affichages de mise en production pour CI/CD de package pour commencer.

(Figure 23) Affichages de mise en production

npm dans la gestion des packages

Les flux de gestion des packages prennent désormais en charge les packages npm pour le développement en JavaScript et Node.js. En outre, les flux npm prennent en charge npmjs.com comme « source en amont avec mise en cache ». En activant cette option, votre flux va de façon transparente utiliser comme proxy et mettre en cache des packages à partir de npmjs.com (voir Use packages from npmjs.com (Utiliser des packages à partir de npmjs.com)), ce qui signifie que vous devez uniquement obtenir un package package@version particulier de npmjs.com une seule fois ; les demandes ultérieures de ce package seront traitées directement à partir de votre serveur TFS. Si un package est supprimé de npmjs.com, vous pourrez toujours obtenir la version mise en cache à partir de TFS.

Pour commencer, recherchez la nouvelle option npm dans la boîte de dialogue Connexion à un flux (Figure 24).

(Figure 24) npm dans la gestion des packages

Améliorations apportées à la solution multiplateforme

Mise en forme xcpretty de la tâche xcodebuild

Vous pouvez désormais mettre en forme la sortie de build xcode avec xcpretty (Figure 25). Vous pouvez également publier les résultats des tests JUnit sur Team Services avec xcodebuild. Avant, vous deviez utiliser xctool comme outil de build pour publier les résultats des tests. Maintenant, pour activer xcpretty, cochez Utiliser xcpretty et décochez Utiliser xctool dans la section Avancé de la tâche Xcode.

(Figure 25) Mise en forme xcpretty

Publier les résultats de la couverture du code et des tests Jenkins

La build Travail en file d’attente Jenkins et la tâche de version release peuvent désormais récupérer les résultats de la couverture du code et des tests à partir d’un pipeline ou d’un travail Jenkins. Pour cela, vous devez installer le plug-in TFS pour Jenkins 5.2.0 ou ultérieur sur votre serveur Jenkins et configurer l’action post-build Collecter les résultats pour TFS/Team Services. Après avoir récupéré les résultats dans Jenkins, vous pouvez les publier avec les tâches de build Publier les résultats des tests ou Publier les résultats de la couverture du code.

Signature Xcode 8 et exportation de packages dans la tâche de build Xcode

La tâche Xcode prend désormais en charge la génération de vos projets à l’aide de la signature automatique Xcode 8 (Figure 26). Vous pouvez installer les certificats et les profils de configuration manuellement sur le serveur de builds ou faire en sorte que la tâche les installe en spécifiant les options Contenu du fichier.

(Figure 26) Signature automatique Xcode

Xcode 8 nécessite la spécification d’un fichier plist d’options d’exportation (Figure 27) lors de l’exportation d’un package d’application (IPA) à partir d’une archive (.xcarchive). Désormais, la tâche Xcode identifie automatiquement la méthode d’exportation si vous utilisez Xcode 8 ou Xcode 7. Vous pouvez spécifier la méthode d’exportation ou un fichier plist personnalisé à partir de la tâche Xcode. Si vous utilisez une version Xcode antérieure à Xcode 7, la tâche revient à utiliser l’ancien outil (xcrun) pour créer le package d’application.

(Figure 27) Options d’exportation Xcode

Améliorations apportées aux tests

Exécuter des tests créés avec Visual Studio 2017

En utilisant les tâches Déployer l’agent de test et Exécuter les tests fonctionnels dans un pipeline CI/CD (Figure 28), vous pouvez désormais installer des agents de test pour Visual Studio 2017 et exécuter des tests qui ont été créés à l’aide de Visual Studio 2017.

(Figure 28) Exécuter les tests

Vérifier les bogues à partir de l’élément de travail

Vous pouvez désormais vérifier un bogue en réexécutant les tests qui l’ont identifié (Figure 29). Vous pouvez appeler l’option Vérifier dans le menu contextuel du formulaire d’élément de travail bogue pour lancer le cas de test approprié dans l’exécuteur web. Effectuez votre validation à l’aide de l’exécuteur web et mettez à jour l’élément de travail Bogue directement dans l’exécuteur web.

(Figure 29) Vérifier les bogues à partir de l’élément de travail

Programmes d’assistance du client REST pour les opérations des étapes de test

Vous pouvez désormais créer, modifier et supprimer des étapes de test et des pièces jointes d’étapes de test dans des éléments de travail de cas de test en utilisant les classes d’assistance que nous avons ajoutées au client REST (consultez RestApi-Sample).

Mettre à jour les bogues existants à partir de l’exécuteur web

À partir de l’exécuteur web, en plus de la création de bogues, vous pouvez aussi maintenant mettre à jour un bogue existant (Figure 30). L’ensemble des données de diagnostic collectées, des étapes de reproduction et des liens pour la traçabilité de la session active est automatiquement ajouté au bogue existant.

(Figure 30) Mettre à jour un bogue existant

Description de cas de test dans l’exécuteur web

Le champ de description des cas de test était souvent utilisé pour capturer les conditions préalables à remplir pour que l’exécution du cas de test puisse démarrer. Cette mise à jour vous permet d’afficher les informations de description des cas de test dans l’exécuteur web à l’aide de l’option Afficher la description (Figure 31).

(Figure 31) Description des cas de test

Point de contribution du hub de test

Nous avons ajouté un nouveau point de contribution (« ms.vss-test-web.test-plan-pivot-tabs ») (Figure 32) dans le hub Plan de test pour permettre aux développeurs d’écrire des extensions en tant qu’onglet de sélecteur de vue qui apparaît en regard des onglets de tests et de graphiques.

(Figure 32) Point de contribution

Supprimer les artefacts de test

Avant cette version, votre option de suppression était limitée aux éléments de travail. Avec cette mise à jour, vous avez désormais la possibilité de supprimer définitivement les artefacts de test (plans de test, suites de tests, cas de test, étapes partagées et paramètres partagés) à la fois à partir du hub de test et du hub de travail à l’aide de l’option Suppression définitive (Figure 33) du menu contextuel du formulaire d’élément de travail.

(Figure 33) Supprimer les artefacts de test

Favoris pour les plans de test

Vous pouvez désormais ajouter aux Favoris les plans de test que vous utilisez le plus fréquemment. Dans le sélecteur Plans de test, vous verrez des onglets pour Tous vos plans de test et Favoris (Figure 34). Cliquez sur l’étoile pour ajouter un plan de test à la liste des Favoris. Vous pouvez accéder aux plans de test favoris dans le sélecteur Plans de test et dans l’onglet Favoris de la nouvelle page d’accueil du compte. Vous pouvez également filtrer les plans de test en effectuant une recherche sur le champ de titre (Figure 35).

(Figure 34) Plans de test

(Figure 35) Favoris de test

Analyse d’impact des tests pour les tests automatisés gérés

L’analyse d’impact des tests pour les tests automatisés gérés est désormais disponible via une case à cocher dans la version 2.* preview de la tâche VSTest (Figure 36).

(Figure 36) Analyse d’impact des tests

Si cette analyse est activée, seul l’ensemble approprié des tests automatisés gérés nécessaires pour valider une modification de code donnée sera exécuté. L’analyse d’impact des tests nécessite la dernière version de Visual Studio et est actuellement prise en charge dans CI pour les tests automatisés gérés.

Prise en charge de Firefox pour l’extension Test & Feedback

Nous avons le plaisir d’annoncer la disponibilité générale de l’extension Test & Feedback pour Firefox. Vous pouvez télécharger le module complémentaire Firefox à partir de notre site Place de marché.

Remarque : La prise en charge du navigateur Edge est également en préparation ; tenez-vous informé pour ne pas manquer les mises à jour à venir.

Améliorations apportées à Release Management

Prise en charge des groupes de variables dans la version

Des groupes de variables sont utilisés de regrouper vos variables et leurs valeurs, de façon à les rendre disponibles à travers plusieurs définitions de version. Vous pouvez également gérer la sécurité pour des groupes de variables, et choisir qui peut afficher, modifier et utiliser les variables des groupes de variables dans vos définitions de version.

Ouvrez l’onglet Bibliothèque dans le hub Build et version et choisissez + Groupe de variables dans la barre d’outils (Figure 37). Actuellement, les groupes de variables peuvent être utilisés seulement dans les définitions de version. Pour plus d’informations sur les groupes de variables, consultez Release definitions in Microsoft Release Management (Définitions de mises en production dans Microsoft Release Management).

Créez (Figure 37), puis modifiez (Figure 38) un groupe de variables comme indiqué ci-dessous :

(Figure 37) Créer un groupe de variables

(Figure 38) Modifier un groupe de variables

Planifications multiples dans les mises en production

Vous voulez planifier la création de vos mises en production plusieurs fois par jour ? Vous pouvez désormais configurer plusieurs déclencheurs planifiés dans une définition de mise en production (Figure 39).

(Figure 39) Planification de mise en production

Connexions aux services inline dans la build et la mise en production

Avec cette fonctionnalité, vous pouvez créer des connexions aux services directement dans la définition de build/mise en production sans naviguer jusqu’à l’onglet Services. Cette fonctionnalité est activée automatiquement pour toutes les extensions qui sont définies de façon déclarative, par exemple Docker, Jenkins, VMWare et SCVMM.

Jusqu’à présent, les définitions de mise en production pouvaient uniquement lier des sources d’artefact à partir du projet en cours. Maintenant, vous pouvez lier également des artefacts de build (Figure 40) à partir d’un autre projet. Lors de la liaison d’un artefact, la liste déroulante du projet répertorie tous les projets dans le compte.

(Figure 40) Lier des artefacts de build

Améliorations apportées au groupe de ressources Azure

Avant cette version, la tâche de groupe de ressources Azure ne pouvait pas valider la syntaxe du modèle ARM, ou le modèle était accepté sans déployer réellement les ressources. Cette amélioration permet un nouveau mode de déploiement appelé Validation uniquement où vous pouvez rencontrer des problèmes liés à la création de modèles avant de créer réellement des ressources Azure.

Une autre amélioration apportée à la tâche de groupe de ressources Azure consiste à autoriser des déploiements complets ou incrémentiels (Figure 41). Auparavant, la tâche déployait les modèles ARM en utilisant le mode incrémentiel. Toutefois, elle ne modifiait pas les ressources qui existaient dans le groupe de ressources, mais qui n’étaient pas spécifiées dans le modèle. Le mode complet supprime les ressources qui ne sont pas dans votre modèle. Par défaut, le mode incrémentiel est utilisé.

(Figure 41) Groupes de ressources Azure

Tâche Azure CLI

La nouvelle tâche Azure CLI (Figure 42) prend en charge l’exécution de commandes Azure CLI sur des agents multiplateformes comme Windows, Linux et Mac. La tâche prend en charge les abonnements classiques et ARM. Elle prend en charge deux modes pour fournir le script, le premier comme un artefact lié et le second comme un script inline.

(Figure 42) Tâche Azure CLI

Dans TFS 2017 Update 1, le service Code Search comprend Elasticsearch version 2.4.1. Si le service Code Search est configuré sur un serveur exécutant TFS 2017, il est mis à jour dans le cadre de la mise à niveau TFS. Si le service Code Search est configuré sur un serveur distant, copiez le contenu du package du service Search fourni avec le programme d’installation sur l’ordinateur distant et suivez les instructions dans le fichier Lisez-moi pour mettre à niveau le service Search manuellement.

Améliorations apportées aux insights de code

Tâches MSBuild SonarQube

Les tâches MSBuild SonarQube sont désormais disponibles à partir d’une extension fournie par SonarSource. Pour plus d’informations, lisez l’article SonarSource have announced their own SonarQube Team Services / TFS integration.

Améliorations apportées à l’administration

Nouvelle expérience en matière de paramètres de notification

Les notifications permettent à vos équipes et à vous-même de rester informés des activités dans vos projets Team Services. Avec cette mise à jour, il est désormais plus facile de gérer les notifications que vous et vos équipes recevez.

Vous avez maintenant votre propre expérience au niveau des comptes dans le menu de profil pour la gestion du paramètre des notifications (Figure 43).

(Figure 43) Paramètres de notification

Cette vue vous permet de gérer les abonnements personnels que vous créez (Figure 44). Elle affiche également les abonnements créés par les administrateurs d’équipe pour tous les projets du compte.

(Figure 44) Gérer les abonnements personnels

Découvrez plus en détail la gestion des paramètres de notification personnels.

addProjectReports est maintenant dans TfsConfig

Vous pouvez maintenant utiliser la commande addProjectReports pour ajouter des rapports à vos projets d’équipe. Il s’agit d’une ancienne commande Power Tool qui fait désormais partie de la commande TfsConfig.exe. Pour plus d’informations, consultez Charger des rapports dans un projet d’équipe.

Dépréciation de la salle de l’équipe

Avec un si grand nombre de solutions intéressantes disponibles et parfaitement intégrées à TFS et Team Services, comme Slack et Microsoft Teams, nous avons décidé de déprécier la fonctionnalité Salle de l’équipe dans TFS et Team Services. Si vous travaillez dans Team Services, vous verrez une nouvelle bannière jaune qui vous annonce notre décision. Plus tard cette année, nous prévoyons de désactiver entièrement la fonctionnalité Salle de l’équipe.

Vous avez plusieurs autres possibilités à votre disposition. La fonctionnalité Salle de l’équipe est utilisée à la fois pour un hub de notification et une conversation. TFS et Team Services sont déjà intégrés à de nombreux autres produits de collaboration, dont Microsoft Teams, Slack, HipChat, Campfire et Flowdock. Vous pouvez également utiliser Zapier pour créer vos propres intégrations ou obtenir un contrôle très précis sur les notifications qui s’affichent.

Pour plus d’informations sur la désapprobation des salles d’équipe dans Team Services, consultez ce billet de blog.

Markdown ne prend plus en charge les liens de fichiers

Avec Update 1, les pages d’accueil, le widget Markdown sur les tableaux de bord d’équipes et la définition de Terminé sur les tableaux Kanban ne prennent plus en charge les liens de fichiers dans leur balisage Markdown. Pour résoudre ce problème, vous pouvez inclure votre lien de fichier sous forme de texte dans Markdown. Pour plus d’informations, consultez Aide sur Markdown.

Annonce de l’éditeur de modèles de processus

Nous avons publié l’extension Éditeur de modèles de processus pour Visual Studio 2017. Cette extension offre une méthode pratique pour afficher et mettre à jour des modèles de processus, ainsi que des outils de mise à jour des listes globales et des types d’éléments de travail, et pour afficher les attributs des champs des éléments de travail. Ceci fonctionne avec les serveurs TFS 2017 et TFS 2017 Update 1.


Problèmes connus

La build ne fonctionne pas lors de la mise à niveau vers TFS 2017 Update 1 Build 15.112.26301.0 à partir de TFS 2013 ou version antérieure

  • Problème :

    Notez que ce problème se produit uniquement si vous mettez à niveau TFS 2017 Update 1 build 15.112.26301.0, publiée le 7 mars 2017. Si vous avez effectué une mise à niveau à partir de la build 15.112.26307.0, publiée le 9 mars, vous ne rencontrerez pas ce problème.

    Après la mise à niveau de TFS 2013 (RTM ou toute mise à jour) ou version antérieure, la build affiche une erreur « Le compteur TaskReferenceId n’existe pas ».

  • Solution de contournement :

    Exécutez le script suivant sur vos bases de données de collection mises à niveau :

    INSERT  tbl_Counter (PartitionId, DataspaceId, CounterName, CounterValue)
    SELECT  DISTINCT
              dpm.PartitionId,
              ds.DataspaceId,
              N'TaskReferenceId',
              1
      FROM    tbl_DatabasePartitionMap dpm
      INNER LOOP JOIN Task.tbl_Hub h
      ON      h.PartitionId = dpm.PartitionId
      INNER LOOP JOIN tbl_Dataspace ds
      ON      ds.PartitionId = dpm.PartitionId
              AND ds.DataspaceCategory = h.DataspaceCategory
              AND ds.DataspaceIdentifier <> '00000000-0000-0000-0000-000000000000'
      WHERE   dpm.PartitionId > 0
              AND dpm.HostType = 4
              AND NOT EXISTS (
                  SELECT  *
                  FROM    tbl_Counter c
                  WHERE   c.PartitionId = dpm.PartitionId
                          AND c.DataspaceId = ds.DataspaceId
                          AND c.CounterName = N'TaskReferenceId'
              ) 
    

Les clients doivent effectuer la mise à jour vers Git LFS version 1.3.1 ou supérieure

  • Problème :

    Les versions Git LFS antérieures à 1.3.1 ne sont plus prises en charge.

  • Solution de contournement :

    Si vous utilisez Git LFS, vous devez effectuer une mise à jour vers Git LFS version 1.3.1 ou ultérieure. Les versions antérieures du client LFS ne sont pas compatibles avec les modifications d’authentification dans cette version de TFS.

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

  • Problème :

    Si vous utilisez un contrôle personnalisé hérité dans vos formulaires d’éléments de travail, tel que le contrôle à valeurs multiples hérité, vos formulaires d’éléments de travail risquent de ne pas s’afficher.

  • Solution de contournement :

    Vous devez effectuer une mise à jour vers la dernière version de votre contrôle. Vous trouverez le dernier contrôle à valeurs multiples pour TFS 2017 Update 1 ici.

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

Les formulaires d’éléments de travail ne masquent pas les champs en lecture seule

  • Problème :

    Si vous utilisez un ancien formulaire d’éléments de travail avec la propriété HideReadonlyEmptyFields définie sur True dans la disposition, votre formulaire ne masque pas les champs vides et en lecture seule.

  • Solution de contournement :

    Il n’existe aucune solution de contournement pour l’instant. Ce problème sera résolu dans TFS 2017 Update 2.

Les formulaires d’éléments de travail deviennent incorrects en cas d’affichage

  • Problème :

    Ce problème est propre à IE 11 sur TFS 2017 Update 1 quand vous choisissez le nouveau formulaire d’élément de travail. Si votre profil est défini sur Français, Coréen, Russe, Turc, Japonais ou Chinois et que l’élément de travail est affecté à n’importe quelle identité, le formulaire d’élément de travail est incorrect quand il est affiché. Si vous enregistrez l’élément de travail, le champ Affecté à prend la valeur Non affecté.

  • Solution de contournement :

    Utilisez un navigateur autre que IE11. Si vous utilisez IE11, cliquez sur Annuler/Actualiser à partir de la barre d’outils d’élément de travail pour restaurer la valeur Affecté à correcte.

Échec de la mise en cache des packages NPM en amont

  • Problème :

    Si votre serveur TFS est derrière un proxy, la mise en cache des packages NPM en amont échoue.

  • Solution de contournement :

    Si votre serveur TFS est derrière un proxy d’entreprise, apportez les changements suivants au fichier web.config de votre serveur TFS (par exemple, %ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config).

    Remplacez ce bloc de configuration :

      <!-- ASP.NET Proxy Usage for HttpWebRequests 
            "usesystemdefault" 
               false - stops the server using the default proxy configuration or proxy
                     auto-detection. 
            "bypassonlocal"
               true - this tells all requests to a local address to ignore configured proxies.
        -->
      <defaultProxy>
        <proxy usesystemdefault="False" bypassonlocal="True" />
      </defaultProxy>
    

    Par :

      <defaultProxy useDefaultCredentials="true" />
    

Le menu déroulant de code affiche des pages de gestion de version incorrectes

  • #### Problème : Si vous accédez à la page admin d’un dépôt git, comme indiqué dans l’image ci-dessous (Figure 45), et cliquez sur le hub Code, les liens Changesets et Shelvesets s’affichent au lieu du lien Historique.

(Figure 45) Menu déroulant Code

  • #### Solution de contournement : Sortez de la page admin du dépôt git et vous verrez les liens appropriés.

Les extensions ne sont pas mises à jour automatiquement

  • Problème :

    Si vous mettez à niveau une version antérieure de TFS vers TFS 2017 et que vous exécutez TFS 2017 en mode connecté, vos extensions ne seront pas mises à jour automatiquement comme elles devraient l’être.

  • Solution de contournement :

    Il n’existe aucune solution de contournement pour l’instant. Nous avons résolu le problème et le comportement de mise à jour automatique sera correct dans TFS 2017 Update 2. Si pour une raison quelconque vous ne pouvez pas attendre la publication d’Update 2, contactez-nous via le canal de support technique et nous partagerons le correctif plus rapidement.

Les extensions ne peuvent pas être acquises ou ne fonctionnent pas correctement si l’URL publique n’est pas définie correctement

  • Problème :

    L’acquisition d’extension à partir de Visual Studio Marketplace échoue.

    Les extensions déjà acquises sont susceptibles de ne pas fonctionner comme prévu.

  • Solution de contournement :

    Ce problème est résolu dans TFS 2017 Update 2 et nous vous recommandons d’effectuer la mise à niveau. Si vous en avez besoin pour travailler sur Update 1, définissez l’« URL publique » dans la console Administrateur Team Foundation Server pour qu’elle soit accessible à partir d’un autre système dans votre environnement d’entreprise (Figure 46).

(Figure 46) Menu Code