How to override BTDF Settings file name?

290 Views Asked by At

I am creating the release pipeline for the BizTalk solution (2010) in Azure DevOps.

In BTDF - the environment specific settings file generated, will be of the format Exported_DevSettings, Exported_TestSettings.

But the BTDF - deploy in azure expects the settings file name of the following format: {0}_settings.xml

If the file name in the settings file is changed BTDF build fails with the following error in XmlPreprocess.exe:

/s:: Argument expects a parameter

Is there any setting in the .btdfproj file that allows to override the local settings name?

1

There are 1 best solutions below

2
Dijkgraaf On

Yes. Edit the Settings File Name: settings in SettingsFileGenerator.xml

And change

   <Row ss:AutoFitHeight="0">
    <Cell ss:StyleID="s62"><Data ss:Type="String">Settings File Name:</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Exported_LocalSettings.xml</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">DevSettings.xml</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Exported_TestSettings.xml</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Exported_ProdSettings.xml</Data></Cell>
   </Row>

To

   <Row ss:AutoFitHeight="0">
    <Cell ss:StyleID="s62"><Data ss:Type="String">Settings File Name:</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Local_settings.xml</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Dev_settings.xml</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Test_settings.xml</Data></Cell>
    <Cell ss:StyleID="s40"><Data ss:Type="String">Prod_settings.xml</Data></Cell>
   </Row>

Also as per the TechNet thread Not ble to deploy application through BTDF framework in Visual Studio 2013 make sure that the SkipExportSettings is set to False in the Properties in the MSBuild section

<MSBuild
      Projects="$(MSBuildProjectFullPath)"
      Properties="LoadedPropsFromEnvSettings=True;SkipExportSettings=True;$(PropsFromEnvSettingsDelimited)"
      Targets="$(TargetsAfterLoadPropsFromEnvSettings)"
      UseResultsCache="false" UnloadProjectsOnCompletion="true" />