Voir le flux RSS

Hinault Romaric

[Actualité] Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure

Note : 2 votes pour une moyenne de 5,00.
par , 24/09/2016 à 22h30 (1069 Affichages)
Ce billet est la troisième et dernière partie de cette série sur l’intégration et le déploiement continu avec TeamCity, Bitbucket et Azure.
Pour comprendre ce billet, vous devez lire les deux billets précédents dont voici les liens :





Désormais que nous sommes en mesure de générer un package de déploiement de notre application à chaque Build, il sera maintenant question de procéder au déploiement de ce dernier sur Azure.

Pour cela, nous allons ajouter une nouvelle Build Configuration a notre projet. Pour éviter d’avoir à refaire certaines configurations, nous allons utiliser les paramètres de la précédente Build Configuration, pour notre nouvelle Build Configuration. Pour le faire :

  • Depuis la page d’administration de votre Build dans TeamCity ;
  • Cliquez sur le bouton Actions puis sur « Copy Configuration » ;
  • Dans la fenêtre qui s’affiche, entrez le nom de la « Build Configuration ;
  • Cliquez sur Ok, pour enregistrer les modifications.


Nom : image16.png
Affichages : 695
Taille : 9,5 Ko

Nous allons apporter quelques changements à cette nouvelle « Build Configuration » que nous avons créée.

La première chose à faire sera l’ajout d’une dépendance avec la Build Configuration précédente. L’objectif est de permettre de lancer la tâche de déploiement uniquement après que l’étape de Build se soit effectuée correctement. Pour le faire :

  • Cliquez sur « Dependencies » ;
  • Puis sur « Add new snapshot dependency » ;
  • Dans la fenêtre qui s’affiche, sélectionnez votre build ;
  • Et cliquez enfin sur Save.


Nom : image17.png
Affichages : 912
Taille : 18,0 Ko

Pour garder une certaine cohérence dans la numérotation des Builds, vous allez modifier les paramètres généraux de votre Build et éditer la zone « Build number format » pour saisir « %dep.NomdeVotreProjet_NomDeVotreBuild.build.counter% ».

Exemple : %dep.Teamcity_Build.build.counter%.

En procédant ainsi, vous serez en mesure d’identifier quelle Build a été déployée, et de ce fait le commit en rapport avec cette dernière.

Vous allez ensuite supprimer le trigger qui a été repris de la configuration précédente. S’il reste actif, à chaque modification de votre repository, le déploiement se fera automatiquement après la Build. En fonction de votre stratégie de déploiement continue, vous pouvez bien évidement décider de maintenir ce trigger.

Passons maintenant à la création de la Build Step qui permettra le déploiement de votre application dans Azure. Revenez sur la page de votre Build Configuration, cliquez sur « Build Steps » dans le menu à gauche. Cliquez ensuite sur « Add build step ». Dans la fenêtre qui va s’afficher :

  • Sélectionnez « Command Line » dans la zone « Runner type » ;
  • Renseignez le champ « Step name » ;
  • Saisissez les informations suivantes dans la zone de saisie « Custom script ».


"C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -source:package='artifacts\WebDeploy\Integration\TeamCityTest.zip' -dest:auto,computerName="https://teamcitytest.scm.azurewebsites.net:443/msdeploy.axd?site=teamcitytest",userName="userName",password="pwd",authtype="Basic",includeAcls="False" -verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension -disableLink:CertificateExtension

Pour récupérer les informations nécessaires à la création de votre profil de publication, vous pouvez :

  • vous connecter au portail Microsoft Azure ;
  • accéder à la liste des « App Services » ;
  • sélectionner votre application Web ;
  • cliquer sur Obtenir le profil de publication dans la boite d’outils pour télécharger les informations sur votre profil de publication.


Nom : image18.png
Affichages : 684
Taille : 29,7 Ko

Ceci fait, pour lancer le déploiement de votre application, vous pouvez simplement vous positionner sur la dernière Build qui s’est effectuée avec succès, puis cliquer sur Actions, ensuite sur Promote.

Nom : image19.png
Affichages : 681
Taille : 7,5 Ko

Puisque nous avons mentionné que notre Build Configuration de déploiement dépend de cette Build, TeamCity affichera dans une fenêtre le nom de la build de déploiement. Vous n’aurez plus qu’à cliquer sur Run pour lancer le déploiement.

Nom : image20.png
Affichages : 665
Taille : 2,4 Ko

En fonction de vos environnements (par exemple : Dev, Préprod, Prod) vous pouvez créer plusieurs Build Configuration de déploiement. Par exemple, si vous disposez d’un Serveur Azure pour les développeurs, vous devez créer une Build configuration pour les déploiements qui dépendra de la Build Configuration de l’intégration continue. Le déploiement pourrait se faire automatiquement sur le serveur de développement. Ensuite, pour les testeurs, vous allez créer une Build configuration qui dépendra de la build configuration Dev.

Lorsque votre application sera prête pour la préproduction, vous allez simplement promouvoir la build correspondante dans la build configuration Dev.

Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Viadeo Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Twitter Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Google Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Facebook Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Digg Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Delicious Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog MySpace Envoyer le billet « Intégration et déploiement continu avec TeamCity, Bitbucket et Azure, partie 3 : livraison continue sur Azure » dans le blog Yahoo

Commentaires