This project has moved and is read-only. For the latest updates, please go here.

Starts, restarts, and no-starts after BTDF deploy

Topics: General Questions
Jul 27, 2010 at 3:00 AM

Is there an easy way to accomplish the following:

1) Don't do any restart host instances until the end of 7 related deploys? I think we discussed before... as users of BTDF we have to code at least one host instance BizTalkHosts element, or else BTDF will restart all host instances.  But what if I don't want to do even that one?  Would I have to create a dummy host instance

2) Deploy and don't start a receive location (or maybe don't start the app)?   Is there a <StartOnDeploy>false</StartOnDeploy> option, or something similar.
For example, we might have data coming in to SQL while we are deploying.  We have SQL polling in one of our 7 apps, but the other 6 apps need to be available at the same time that the polling app is made ready.


Neal Walters


Jul 27, 2010 at 4:51 AM

1) Today you must restart a minimum of one host instance.  I logged a feature request.

2) Yes.  First, keep in mind that all PropertyGroup's and ItemGroup's may carry a Condition attribute.  You'll find different PropertyGroup's for Debug, Release and Server already in your .btdfproj.  Any of the properties normally defined in the default unconditional PropertyGroup may be moved down to the conditional PropertyGroup's.  If you want to restart IIS only on Server deploys, you can move the property into one of the conditional PropertyGroup's, and so on.

That said, there are several properties related to app startup: StartApplicationOnDeploy, EnableAllReceiveLocationsOnDeploy and StartReferencedApplicationsOnDeploy.  I think those are what you're looking for.  You may want different behavior for server deploys vs. Visual Studio deploys.


Jul 27, 2010 at 6:11 PM

Thanks, I see those now in the Q&A section of the PDF doc.  (In future DOC, might be nice to have an alphabetical listing or dictionary of all parms that are not included in the sample files).

What is the purpose of EnableAllReceiveLocationsOnDeploy?  If you do a StartApplicationOnDeploy, I presume that would start all the receive locations.  Would there be a purpose in starting the receive locations without starting the entire app?





Jul 27, 2010 at 6:21 PM

When StartApplicationOnDeploy is false, then EnableAllReceiveLocationsOnDeploy and StartReferencedApplicationsOnDeploy do not have any effect.  If you want to start the app but keep receive locations disabled, you would need to override the default value of true for EnableAllReceiveLocationsOnDeploy.