1 Guide d'installation Release Management pour Visual Studio 2013
Le contenu de ce document est fourni «en l'état». Les informations et les points de vue contenus dans ce document, y compris les URL et autres références de sites Web Internet, pourront faire l'objet de modifications sans préavis. Ce document ne vous confère aucun droit de propriété intellectuelle sur les produits Microsoft. Vous êtes autorisé à copier et à utiliser ce document à des fins de référence interne. 2013 Microsoft. Tous droits réservés. Microsoft, Visual Studio et Windows Azure sont des marques du groupe Microsoft. Toutes les autres marques sont détenues par leurs propriétaires respectifs. 2
Sommaire 1 VUE D'ENSEMBLE... 4 1.1 INTRODUCTION... 4 1.2 VUE D'ENSEMBLE DU DEPLOIEMENT... 4 1.2.1 Release Management Client pour Visual Studio 2013... 4 1.2.2 Release Management Server pour Team Foundation Server 2013... 4 1.2.3 Microsoft Deployment Agent 2013... 4 1.2.4 Composant Outils de l'agent de déploiement... 5 1.2.5 Mécanisme entre Release Management Server et les Agents de déploiement... 5 1.2.6 Autres composants... 6 2 CONFIGURATION SYSTEME REQUISE... 7 2.1 RELEASE MANAGEMENT SERVER POUR TEAM FOUNDATION SERVER 2013... 7 2.2 RELEASE MANAGEMENT CLIENT POUR VISUAL STUDIO 2013... 7 2.3 MICROSOFT DEPLOYMENT AGENT 2013... 7 3 CONFIGURATION... 9 3.1 COMPTES REQUIS... 9 3.2 COMPTE DE SERVICE CONNEXION TFS... 10 3.3 PREPARATION SUPPLEMENTAIRE... 10 4 INSTALLATION... 11 4.1 RELEASE MANAGEMENT SERVERPOUR TEAM FOUNDATION SERVER 2013... 11 4.2 RELEASE MANAGEMENT CLIENT... 14 4.3 AGENT DEDEPLOIEMENT... 15 5 MISE A NIVEAU DE LA VERSION D'EVALUATION VERS LA VERSION COMPLETE... 17 6 CONFIGURATION INITIALE DE RELEASE MANAGEMENT... 17 7 CONFIGURATION DE TEAM FOUNDATION BUILD [FACULTATIF]... 18 3
1 VUE D'ENSEMBLE 1.1 Introduction Ce document contient des informations et le guide d'installation des composants de gestion des versions. Il présente en détail les scénarios de déploiement pris en charge pour les différents composants. Il suppose que la version de Team Foundation Server prise en charge a déjà été installée et configurée pour être prête à l'emploi. 1.2 Vue d'ensemble du déploiement La figure suivante montre les principaux composants qui doivent être déployés pour que la gestion des versions fonctionne correctement. Figure 1 Vue d'ensemble du déploiement des composants Release Management 1.2.1 Release Management Client pour Visual Studio 2013 Le composant Release Management Client est une application Windows Presentation Foundation (WPF) qui sert de point d'interface principal pour gérer les informations de version de la gestion des versions. C'est le composant qui fournit l'interface utilisateur avec laquelle tous les utilisateurs interagissent. 1.2.2 Release Management Server pour Team Foundation Server 2013 Le composant Release Management Server est le cœur de la gestion des versions. C'est une combinaison de services Web et Windows qui exposent les contrats utilisés par tous les autres composants RM. 1.2.3 Microsoft Deployment Agent 2013 Le composant Agent de déploiement est un service qui doit être installé sur les serveurs cibles des environnements dans lesquels les composants d'application seront hébergés. 4
1.2.4 Composant Outils de l'agent de déploiement Le composant Outils de l'agent de déploiement permet de mieux exécuter différents scénarios de développement, par exemple : Installation d'une version d'un composant dans un environnement spécifique Désinstallation d'une version précédente d'un composant avant un redéploiement Déplacement de fichiers dans des emplacements spécifiques Modèle extensible Microsoft Deployment Agent L'Agent de déploiement utilise un modèle ouvert et extensible qui autorise l'intégration de tout type d'outil de l'agent de déploiement qui peut être exécuté sous forme de processus. Le composant Outil de l'agent de déploiement peut se présenter sous la forme d'un fichier Windows Installer (.msi), d'un fichier batch (.bat ou.cmd), d'un script PowerShell (.ps1) ou d'un fichier exécutable (.exe), etc. 1.2.5 Mécanisme entre Release Management Server et les Agents de déploiement Le mécanisme qui permet à l'agent de déploiement de communiquer avec le serveur est un mécanisme d'extraction unidirectionnelle entre les agents de déploiement et le serveur. Figure 2 Mécanismes de communication des composants Release Management L'agent de déploiement exécute en fait deux threads selon une minuterie prédéfinie et configurable. La pulsation fournit l'état de l'agent de déploiement au serveur pour permettre au serveur de détecter si l'agent de déploiement n'est plus disponible et s'il agit en conséquence. Le deuxième thread surveille le serveur afin d'exécuter les instructions de déploiement. Si un déploiement est mis en file d'attente, l'agent de déploiement demande les informations au serveur et récupère le package de build dans l'emplacement cible fourni. Il installe ensuite le composant et retourne l'état de déploiement au serveur. Ce mécanisme permet aux composants Release Management de fonctionner sans qu'un port n'ait été ouvert sur les serveurs cibles, étant donné que Release Management Server ne peut peut-être pas accéder à l'environnement cible, ce qui est assez courant dans les environnements plus proches de la production. 5
1.2.6 Autres composants Pour l'intégrer avec TFS, quelques composants supplémentaires sont requis : 1. Release Management Client doit être installé sur le serveur Team Foundation Build. Cette condition et nécessaire pour que Team Foundation Build puisse créer des versions automatiquement dans le cadre de son exécution. C'est particulièrement pratique pour l'intégration continue et le déploiement. 2. Le modèle de build de Release Management personnalisé comporte quelques opérations à inclure dans la définition de build d'une application déployée par Release Management. Ce modèle de build peut être ajouté au serveur TFS et utilisé tel quel ou peut aussi être fusionné manuellement avec un modèle de build existant si le modèle standard a été personnalisé. 6
2 CONFIGURATION SYSTEME REQUISE 2.1 Release Management Server pour Team Foundation Server 2013 Processeur : processeur Pentium 1 GHz ou équivalent (minimum) ; processeur Pentium 2 GHz ou équivalent (recommandé) Mémoire RAM : 1024 Mo (minimum) ; 2048 Mo (recommandé) Disque dur : sur un ordinateur nettoyé, jusqu'à 2,2 Go d'espace disponible peuvent être nécessaires. Cela provient de la dépendance vis-à-vis du.net. La base de données peut croître jusqu'à 1 Go par an (peut avoir une faible capacité de 10 Mo selon son utilisation) Écran : résolution de 1024 x 768, ainsi que 65 536 couleurs, couleurs 16 bits (minimum) ; résolution de 1280 x 1024, ainsi que 65 536 couleurs, 32 bits (recommandé) Plateforme prise en charge : Windows Server 2008 R2 SP1 Windows Server 2012 Windows Server 2012 R2 Configuration requise pour la base de données : Microsoft SQL Server 2008 ou 2008 R2 ou 2012. 2.2 Release Management Client pour Visual Studio 2013 Processeur : processeur Pentium 1 GHz ou équivalent (minimum) ; processeur Pentium 2 GHz ou équivalent (recommandé) Mémoire RAM : 512 Mo (minimum) ; 1024 Mo (recommandé) Disque dur : sur un ordinateur nettoyé, jusqu'à 2,2 Go d'espace disponible peuvent être nécessaires. Cela provient de la dépendance vis-à-vis du.net. Écran : résolution de 1024 x 768, ainsi que 65 536 couleurs, couleurs 16 bits (minimum) ; résolution de 1280 x 1024, ainsi que 65 536 couleurs, 32 bits (recommandé) Plateformes prises en charge : Windows 7 SP1 Windows 8 Windows 8.1 Windows Server 2008 R2 SP1 Windows Server 2012 Windows Server 2012 R2 2.3 Microsoft Deployment Agent 2013 Processeur : processeur Pentium 400 MHz ou équivalent (minimum) ; processeur Pentium 1 GHz ou équivalent (recommandé). Mémoire RAM : 256 Mo (minimum) ; 512 Mo (recommandé). Disque dur : sur un ordinateur nettoyé, jusqu'à 2,2 Go d'espace disponible peuvent être nécessaires. Cela provient de la dépendance vis-à-vis du.net. De l'espace supplémentaire peut être requis en fonction de la taille des fichiers pris en charge pour les composants à déployer (taille de l'application). 7
8 Plateformes prises en charge : Vista (dernier service pack) Windows 7 SP1 Windows 8 Windows 8.1 Windows Server 2008 R2 SP1 Windows Server 2012 Windows Server 2012 R2 Écran : résolution de 1024 x 768, ainsi que 65 536 couleurs, couleurs 16 bits (minimum) ; résolution de 1280 x 1024, ainsi que 65 536 couleurs, 32 bits (recommandé)
3 CONFIGURATION Le programme assure l'automatisation de toutes les configurations pour la majorité des systèmes/environnements. Dans certains cas toutefois, d'autres configurations doivent être effectuées manuellement. La section ci-dessous présente ces configurations. 3.1 Comptes requis Compte Rôle Spécification Utilisateur de l'installation de Release Management Server Utilisateur de l'installation de Release Management Client Utilisateur de l'installation de l'agent de déploiement Identité du pool d'applications du serveur Identité du service Windows de l'agent de déploiement Identité du service Windows du moniteur Utilisateur de Release Management Client Utilisateur du client Web Release Management (utilisateur du flux de travail uniquement) Utilisateur de Release Management dans TFS Identité sous laquelle le serveur est installé Identité sous laquelle le client est installé sur l'ordinateur de l'utilisateur final Identité sous laquelle l'agent de déploiement est installé sur le serveur cible Identité sous laquelle les services serveur sont exécutés Identité sous laquelle le service de l'agent de déploiement est exécuté Identité sous laquelle le service Moniteur de Release Management est exécuté Utilisateur final qui crée les versions, configure les composants et/ou les connexions TFS Utilisateur final de Release Management qui ne crée pas de versions et ne configure pas de composants ou de connexions TFS Identité configurée dans Release Management pour accéder à TFS Droits de l'administrateur local Droits sysadmin sur SQL Server Droits de l'administrateur local Droits de l'administrateur local Doit être le compte Service TFS (souvent appelé TFSService) Droits de connexion à SQL Server et db_owner de la base de données de gestion des versions Utilisateur de service de Release Management Accès en écriture au dossier d'installation (pour activer la journalisation) Droits de l'administrateur local Accès en lecture à l'emplacement cible TFS Utilisateur de service de Release Management Doit être le compte Service TFS (souvent appelé TFSService) Utilisateur de service de Release Management Utilisateur de domaine Accès à TFS (avec le CAL approprié) Accès en écriture au dossier d'installation Release Management (pour activer la journalisation) Utilisateur de domaine Cet utilisateur doit recevoir l'autorisation «Faire des demandes pour le compte de tiers» au niveau collection dans TFS 9
3.2 Compte de service Connexion TFS Lors de la création d'une connexion TFS dans Release Management, un compte de service de gestion des versions doit être spécifié. Ce compte sert à effectuer une tâche liée à TFS. Étant donné que ce compte possède des droits de niveau collection dans TFS et que les utilisateurs normaux de Release Management ne doivent pas voir les projets d'équipe auxquels ils ne peuvent normalement pas accéder, Release Management effectue des demandes à TFS pour le compte de l'utilisateur actuellement connecté. C'est pourquoi le compte utilisé comme informations d'identification de connexion TFS doit avoir l'autorisation «Faire des demandes pour le compte de tiers» activée au niveau collection. 3.3 Préparation supplémentaire Les éléments ci-dessous doivent être connus avant l'installation de Release Management Server pour Team Foundation Server 2013. 1. Serveur SMTP (pour envoyer des messages électroniques) : nom du serveur, port, nom d'utilisateur/mot de passe (si nécessaire, ce champ peut être laissé vide dans la plupart des configurations). 2. Port services Web de Release Management Server. Un port doit être ouvert pour les communications entrantes issues des Agents de déploiement, de Release Management Client et du client Web. 10
4 INSTALLATION 4.1 Release Management Serverpour Team Foundation Server 2013 Installation du composant serveur Pour installer Release Management Server, l'utilisateur qui effectue l'installation doit être un administrateur local de l'ordinateur et disposer des droits sysadmin sur SQL Server. 1. Exécutez le fichier d'installation fourni rm_server.exe. Cette opération lancera l'installation de Release Management Server pour TFS 2013. a. Sélectionnez le dossier de destination. b. Lisez et acceptez les termes du contrat de licence et la déclaration de confidentialité. 2. Cliquez sur Installer pour démarrer le processus d'installation. L'installation dure quelques minutes. 3. Redémarrez l'ordinateur si vous y êtes invité. 4. Configurez Release Management Server. a. Compte : Spécifiez les informations d'identification nécessaires pour exécuter Release Management Server.. L'option par défaut consiste à exécuter le serveur comme 11
NetworkService. Vous pouvez aussi indiquer un utilisateur spécifique appartenant au groupe des administrateurs locaux. Cet utilisateur sera le compte utilisé pour l'exécution des services Release Management, notamment le service de surveillance de la gestion des versions et les pools d'applications. b. Service Web : le numéro de port par défaut est 1000. L'URI du service Web est http://<nom_ordinateur:port>/releasemanagement L'application Web sera hébergée sur le port indiqué ci-dessus. 5. Base de données : permet de spécifier une instance de serveur de base de données à utiliser pour la gestion des versions. Release Management Server peut s'exécuter sur toutes les versions de SQL Server 2008, 2008 R2 et 2012. 6. Pour vérifier si la connexion fonctionne, connectez-vous au serveur de base de données en tant qu'utilisateur interactif. Le compte d'identité de service sera utilisé comme propriétaire de la base de données pour se connecter à la base de données dans Release Management Server. Le lien Test de base de données valide que l'utilisateur interactif dispose des droits nécessaires pour effectuer l'installation de la base de données. 12
7. Configuration effectuée en arrière-plan lorsque l'utilisateur choisit Appliquer les paramètres. a. Compte : une identité de service de gestion des versions est créée dans la base de données comme utilisateur du service de gestion des versions. b. Base de données c. Serveur Web une base de données nommée ReleaseManagement est créée. Une identité de service de gestion des versions db_owner est créée. Un utilisateur interactif est créé en tant que superutilisateur valide de la gestion des versions. Si nécessaire, Internet Information Services (IIS) 8.0 ou 7.5 est installé et configuré selon le système d'exploitation de Release Management Server. Si le service Windows pour IIS (service de publication World Wide Web) n'est pas démarré, il est configuré. Le pool d'applications Release Management est créé. Le service Web Release Management est créé. L'identité du service Release Management est définie comme l'identité du pool d'applications. d. Service Windows Le service de surveillance est démarré et l'identité du service Release Management est définie comme étant le compte RunAs du service de surveillance. 13
4.2 Release Management Client 1. Exécutez le fichier d'installation fourni rm_client.exe. Cette opération lancera l'installation de Release Management Client pour Visual Studio 2013. a. Sélectionnez le dossier de destination. b. Lisez et acceptez les termes du contrat de licence et la déclaration de confidentialité. c. Cliquez sur Installer pour démarrer le processus d'installation. L'installation dure quelques minutes. 2. Lorsque l'installation de Release Management Client est terminée, lancez celui-ci dans le dossier des programmes. 14
3. Configurez le client pour qu'il puisse se connecter à Release Management Server. 4.3 Agent dedéploiement 1. Exécutez le fichier d'installation fourni rm_deployment.exe. Cette opération lancera l'installation de Microsoft Deployment Agent 2013. 2. Lisez et acceptez les termes du contrat de licence et la déclaration de confidentialité. 3. Cliquez sur Installer pour démarrer le processus d'installation. L'installation dure quelques minutes. 15
4. Configurez l'agent de déploiement. a. Configurez le service Agent de déploiement en spécifiant une identité. L'option par défaut consiste ici à exécuter l'agent de déploiement en tant que NetworkService. Des informations d'identification d'utilisateur spécifique peuvent être aussi fournies, qui doivent avoir les autorisations nécessaires pour effectuer des déploiements d'applications localement. b. Spécifiez l'url de Release Management Server. 5. Configuration requise : a. L'utilisateur interactif doit être l'administrateur local. b. L'utilisateur interactif doit avoir les privilèges nécessaires pour créer un utilisateur dans Release Management Server. c. L'URL de Release Management Server doit être valide et accessible par l'utilisateur interactif. Les tâches ci-dessous sont effectuées. a. Si l'utilisateur du compte du service Agent de déploiement n'existe pas déjà, il est créé dans Release Management Server. b. Les données de configuration sont enregistrées dans la base de données Release Management Server. 16
5 MISE A NIVEAU DE LA VERSION D'EVALUATION VERS LA VERSION COMPLETE Release Management pour Visual Studio 2013 comporte trois composants (serveur, client et agent de déploiement) et vous devez vous efforcer d'utiliser la même version de tous ces composants dans votre déploiement intégral. Si vous avez installé la version d'évaluation et que vous effectuez une mise à niveau, vous devez mettre à niveau tous les composants avant de commencer à gérer des versions. Remarque : La version d'évaluation des composants Release Management pour Visual Studio 2013 doit être désinstallée avant de mettre à niveau vers la version complète. 6 CONFIGURATION INITIALE DE RELEASE MANAGEMENT À ce stade, Release Management Server pour Team Foundation Server 2013 et Release Management Client pour Visual Studio 2013 doivent être opérationnels. Pour permettre à Release Management Server de communiquer avec l'agent de déploiement, des opérations de configuration supplémentaires doivent être effectuées dans Release Management : Dans la section Administration : Configuration de l'agent de déploiement : 1. Pour chaque identité sous laquelle les agents de déploiement s'exécutent, un utilisateur correspondant doit être ajouté à Release Management. Cet utilisateur doit être configuré comme un utilisateur de service. 2. Créez les serveurs sur lesquels les Agents de déploiement ont été installés. La fonctionnalité Rechercher de nouveaux peut aussi servir à accélérer la création des serveurs. Pour plus d'informations sur l'utilisation des Agents de déploiement pour votre version finale, reportez-vous au guide de l'utilisateur. 17
Configuration de Team Foundation Server : Ajoutez une connexion TFS afin d'établir la connexion avec TFS et pouvoir sélectionner les builds à commercialiser. Pour chaque collection à laquelle les composants appartiennent, il doit y avoir une connexion dédiée configurée avec TFS à ce niveau de la collection. L'utilisateur peut spécifier les informations d'identification de l'utilisateur à indiquer lors de la connexion à la collection de projet d'équipe. 7 CONFIGURATION DE TEAM FOUNDATION BUILD [FACULTATIF] Le dernier élément à configurer est l'ajout du modèle Team Build de Release Management. Ajoutez ReleaseDefaultTemplate.xaml (pour TFS 2010) ou ReleaseDefaultTemplate.11.1.xaml (pour TFS 2012 et TFS 2013) à votre TFS selon la procédure TFS standard. 18