private void StartDeployment(SourceCode.Workflow.Authoring.Process process) { DeploymentResults results = WorkflowDeploymentSamples.DeployProcess(process); StringBuilder sbOutput = new StringBuilder(); if (results.Successful) { sbOutput.AppendLine("Deployment succeeded"); sbOutput.AppendLine("===================="); sbOutput.AppendLine(); foreach (string output in results.Output) { sbOutput.AppendLine(output); } } else { sbOutput.AppendLine("Deployment failed"); sbOutput.AppendLine("================="); sbOutput.AppendLine(); for (int i = 0; i < results.Errors.Count; i++) { sbOutput.AppendLine(results.Errors[i].ToString()); } } txtDeploymentResults.Text = sbOutput.ToString(); }
public DeploymentResults Deploy(Project project) { DeploymentPackage package = null; DeploymentEnvironment environment = null; try { // Compile the project first before we attempt to deploy it. DeploymentResults compileResults = project.Compile(); if (!compileResults.Successful) { // Is the compile was unsuccesfull, return the results return(compileResults); } // Create a logger that is required by the deployment package ProjectLogger logger = new ProjectLogger(); logger.Verbosity = Microsoft.Build.Framework.LoggerVerbosity.Diagnostic; project.SetOutputLogger(logger); // Create a new deployment package package = project.CreateDeploymentPackage(); // The deployment package requires at least one environment, so add a default one. // When deployment is done via VisualStudio, the environments are automatically set // up from the ones available in the Environment Library. environment = package.AddEnvironment("Default"); package.SelectedEnvironment = environment.Name; package.SmartObjectConnectionString = _smartObjectConnectionString; package.WorkflowManagementConnectionString = _workflowManagementConnectionString; // Start the deployment return(project.Deploy(package)); } finally { if (package != null) { package.Dispose(); package = null; } if (environment != null) { environment.Dispose(); environment = null; } } }