Share via


Deploying a DCS Service by Using the DCS Software Factory

The DCS Software Factory provides the Deploy Assembly recipe that automates service deployment. Deploying a DCS service involves several steps, including the following:

  • Copying the binaries for the service to a folder that corresponds to an Internet Information Services (IIS) application
  • Registering the service in the DCS Discovery database
  • Advertising the service with an appropriate scope
  • Ensuring that the appropriate tasks are configured for each operation

Although the DCS Software Factory can automate much of this process, there are some initial steps that you must perform, and certain information that you must provide, before you execute this recipe.

Create Your Deployment Location and Configure It in IIS

The most common platform for hosting DCS services is Internet Information Services (IIS). You can create a Web application with the appropriate settings and security privileges. You then deploy your service to the physical location of the Web application and provide a configuration file to enable IIS to host the service correctly. For more information about hosting DCS services in IIS, see the CCF 2009 SP1 Deployment Guide.

Although IIS hosting is the most common option for DCS services, you can also host your service in a custom hosting application.

Configure the DCS Software Factory Deployment Tool

After you create the physical location that you will deploy the service to, you can configure the DCS Software Factory to deploy to this location and register the service correctly. For more information, see Configuring Deployment Settings in the DCS Software Factory.

Run the DCS Software Factory Deploy Assembly Recipe

After you create the deployment location and configure the DCS Software Factory, you can deploy your service implementation. Note that category workflow operations require you to deploy projects in the correct sequence to enable DCS to establish the correct dependencies between specific and category task implementations.

To run the DCS Software Factory Deploy Assembly recipe

  1. Build the DCS Service and verify that there are no compilation errors.
  2. In Visual Studio, in Solution Explorer, right-click the project for the service that you want to deploy, and then click Deploy Assembly.
  3. The Deploy Assembly recipe opens a console window and executes commands deploy and configure the service. You can also see status messages from each of the commands and any error messages that occur.

When the recipe is complete, the following message appears.

ProxyBuilder call was successful

Trying to load [DCS project output directory].[project primary assembly].dll
Assembly loaded
Press Enter to exit...

Note

When you deploy an assembly for a transparent workflow, you may receive an error message similar to the following example:
Error: There was an error exporting the contract loaded from the type: ServiceNamespace.IServiceContractInferface, ServiceName, version=1.0.0.0, Culture=neutral, PublicKeyToken=null
An exception was thrown in a call to a WSDL export extension: System.ServiceModel.Description.DataContractSerializerOperationBehavior contract: http://ProductServiceNamespace:ProductServiceTransparentService
Type 'Microsoft.ConnectedIndustry.ProcessExecution.Common.TransparentProcessRequestMessage' does not have DataContractAttribute attribute and therefore cannot support IExtensibleDataObject.
Error: Action terminated with errors.
This error message appears because of the type of message that the transparent workflow implementation requires for request and response messages. You can safely ignore this error; although the tool is reporting a valid issue with the messages, this issue does not affect the deployment of the service implementation.

For more information on configuring transparent processes, see Configuring a Transparent Process.

See Also

Configuring Deployment Settings in the DCS Software Factory

Configuring a Transparent Process