biztalkbiztalk-orchestrationsbiztalk-deploymentbtdf

Unenlisting Orchestration using BTDF


I am working on a requirement where in we need to keep 2 out of 20 orchestrations in Unenlisted state. I am using BTDF for the deployment. Even if I keep state as Unenlisted in the binding file, at the end of the deployment BTDF will start the application, which would result in starting all the orchestrations. Could anyone please help me in achieving the same. Below is the snippet of my binding file:

<Service Name="ACE.Claims.HFC.Integration.Orchestrations.getStockInfo" State="Unenlisted" TrackingOption="ServiceStartEnd MessageSendReceive InboundMessageBody OutboundMessageBody OrchestrationEvents TrackPropertiesForIncomingMessages TrackPropertiesForOutgoingMessages" Description="">
          <Ports />
          <Roles />
          <Host Name="${Hosts.ClaimsHFCProcess}" NTGroupName="${Groups.BTSApplicationUsers}" Type="1" Trusted="${Hosts.IsTrusted}" />
</Service>

Solution

  • There are two way through which we can keep orchestration in unenlisted state

    1. Using BTDF PortBindingsMaster.xml file set the State="Unenlisted" for the Orchestration which you want to be.
    2. using the WMI script we can Unenlist the orchestration post the successful deployment using the BTDF.

    BTDF

    <Target Name="CustomDeployTarget">
             <Exec Command="my_command_to_execute" />
    </Target>
    

    Script

    cscript.exe "c:\Program Files (x86)\Microsoft BizTalk Server 2010\SDK\Samples\Admin\WMI\Stop Orchestration\VBScript\StopOrch.vbs" "myNameSpaceName.OrchestrationName" "myAppName" Unenlist