Depuis BizTalk 2016 (FP 2), un nouveau type de projet BizTalk est apparu dans Visual Studio : le BizTalk Server Application Project. Ce type de projet permet de déployer automatiquement un projet BizTalk au travers des différents pipelines (Build, Release) fournis dans Azure DevOps.
Pour réaliser les manipulations décrites dans cet article, il est nécessaire de disposer d’une licence Visual Studio 2015 accompagnée de BizTalk 2016 Developer Tools (Feature Pack 2).
Pour commencer, nous partirons d’une solution Visual Studio contenant un simple projet BizTalk.
Au sein de la même solution, nous allons ajouter un projet BizTalk Server Application. La compilation de ce projet permettra de créer un package de déploiement.
À l’intérieur de ce projet, nous allons retrouver deux fichiers, générés automatiquement :
Le premier fichier permet de lister l’ensemble des fichiers à inclure dans le package de déploiement. La section DeploymentSequence sert à ordonner le déploiement des fichiers listés.
{
"$schema": "C:\\Program Files (x86)\\Microsoft BizTalk Server 2016\\Developer Tools\\BizTalkServerAppplicationSchema.json",
"BizTalkAssemblies": [
{
"Name": "TestVSTSBiztalk",
"Path": "bin\\TestVSTSBizTalk.dll"
}
],
"BindingsFiles": [
{
"Name": "Binding",
"Path": "bindings\\Binding.xml"
}
],
"Assemblies": [
],
"PreProcessingScripts": [
],
"PostProcessingScripts": [
],
"Files": [
],
"DeploymentSequence": [
"TestVSTSBiztalk", "Binding"
]
}
Quant au second fichier, il s’agit de la configuration de l’application BizTalk à déployer, ou fichier de binding. Il est possible de changer le nom de ce fichier (à condition de le changer également dans BizTalkServerInventory.json).
Une fois ces deux fichiers remplis conformément à vos attentes, il est important de vérifier, dans les propriétés du projet, que le nom de l’application correspond bien au nom souhaité de la future application BizTalk.
Après compilation du projet, un fichier .zip est créé dans le répertoire de sortie (qui est paramétrable). Ce fichier sera notre package de déploiement.