我正在使用BizTalk Deployment Framework来部署我的应用程序。它在本地机器上工作。我想在测试环境中部署它应该使用Visual Studio而不是MSI。我不知道在哪里更改HostInstance名称。
答案 0 :(得分:3)
首先,如果DEV和所有其他环境中的主机名相同,那就更好了。它使事情变得更容易。
但是,如果你真的需要它们不同,你只需要使用Settings文件将主机名配置为Settings,这样BTDF就可以在Deploy time动态设置它们。
为清楚起见,您应该使用.msi部署到TEST,而不是Visual Studio。
答案 1 :(得分:1)
为了进一步说明,下面是一个在PortBindingsMaster中设置主机名的示例 - 请注意,它是每个工件配置(即每个业务流程,发送端口和接收位置都指定了自己的主机)。我完全同意Johns-305,所有环境中的主机名都应该是相同的 - 它使生活变得更容易,更容易混淆(并且你不太可能引入一些部署问题,因为你忘了配置正确的主机名TEST vs DEV)。只需配置您的开发环境以镜像TESt / PROD。您应该首先导出绑定,以确保获得正确的Capabilities
和ConfigurationClsid
值。
对于业务流程:
<Service Name="OrchestrationName" State="Started" TrackingOption="ServiceStartEnd MessageSendReceive OrchestrationEvents" Description="">
<Ports>
...
</Ports>
<Roles />
<Host Name="OrchHost" NTGroupName="${SsoAppUserGroup}" Type="1" Trusted="false" />
</Service>
您可以使用主机变量名替换Name
的{{1}}属性值,例如Host
(假设您的SettingsFileGenerator.xml中有一行,第一列名称为${OrchHostName}
)。
对于ReceiveLocation:
OrchHostName
您可以使用主机变量名替换<ReceiveLocation Name="rlocBlahBlah_FILE">
...
<ReceiveHandler Name="ReceiveHost" HostTrusted="false">
<TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" />
</ReceiveHandler>
</ReceiveLocation>
的{{1}}属性值,例如Name
。
对于SendPort:
ReceiveHandler
不需要辅助传输,默认情况下不配置辅助传输,但如果您正在使用它,则应将其考虑在内。您可以使用${ReceiveHostName}
之类的内容替换<SendPort ...>
...
<PrimaryTransport>
...
<SendHandler Name="SendHost" HostTrusted="false">
<TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" />
</SendHandler>
</PrimaryTransport>
<SecondaryTransport> <!-- if configured -->
<SendHandler Name="SendHost" HostTrusted="false">
<TransportType Name="FILE" Capabilities="11" ConfigurationClsid="5e49e3a6-b4fc-4077-b44c-22f34a242fdb" />
</SendHandler>
</SecondaryTransport>
...
</SendPort>
s的Name
属性。