public static int Main(string[] args) { string argsString = string.Join(" ", args); try { DeployerTrace.WriteInfo("Deployer called with {0}", argsString); DeploymentParameters parameters = CommandLineInfo.Parse(args); DeploymentOperation.ExecuteOperation(parameters, false); return(Constants.ErrorCode_Success); } catch (FabricHostRestartRequiredException e) { DeployerTrace.WriteInfo(e.ToString()); return(Constants.ErrorCode_RestartRequired); } catch (FabricHostRestartNotRequiredException e) { DeployerTrace.WriteInfo(e.ToString()); return(Constants.ErrorCode_RestartNotRequired); } catch (Exception e) { DeployerTrace.WriteError("Deployer failed with args: {0}", argsString); DeployerTrace.WriteError(e.ToString()); return(Constants.ErrorCode_Failure); } }
private static void RemoveNodeConfigurationInner(bool deleteLog, FabricPackageType fabricPackageType, string machineName) { var parameters = new Dictionary <string, dynamic> { { DeploymentParameters.MachineNameString, machineName } }; // Create DeploymentParameters object with conditional retrieval of FabricBinRoot (to work around infinite recursion due to invalid reflection) bool setBinRoot = fabricPackageType != FabricPackageType.XCopyPackage; var deploymentParameters = new DeploymentParameters(setBinRoot); deploymentParameters.DeleteLog = deleteLog; deploymentParameters.DeploymentPackageType = fabricPackageType; deploymentParameters.SetParameters(parameters, DeploymentOperations.RemoveNodeConfig); try { DeploymentOperation.ExecuteOperation(deploymentParameters); } catch (Exception e) { DeployerTrace.WriteError("{0}", e.ToString()); throw; } }
private void ValidateClusterManifest(string clusterManifestFilePath, bool exceptionExcpected) { bool exceptionFound = false; try { DeploymentParameters parameters = new DeploymentParameters(); parameters.SetParameters(new Dictionary <string, dynamic>() { { DeploymentParameters.ClusterManifestString, clusterManifestFilePath }, { DeploymentParameters.FabricDataRootString, "TestFabricDataRoot" } }, DeploymentOperations.ValidateClusterManifest); DeploymentOperation.ExecuteOperation(parameters); } catch (Exception e) { DeployerTrace.WriteInfo("Test", "ValidateClusterManifest failed with exception {0}", e); exceptionFound = true; } Verify.AreEqual(exceptionExcpected, exceptionFound); }
public static void ExecuteOperation(DeploymentParameters parameters) { DeploymentOperation.ExecuteOperation(parameters, true); }
private static void NewNodeConfigurationInner( string clusterManifestPath, string infrastructureManifestPath, string jsonClusterConfigPath, string fabricDataRoot, string fabricLogRoot, string fabricHostCredentialUser, SecureString fabricHostCredentialPassword, bool runFabricHostServiceAsManual, bool removeExistingConfiguration, FabricPackageType fabricPackageType, string fabricPackageRoot, string machineName, string bootstrapPackagePath) { if (!string.IsNullOrEmpty(machineName)) { if (!string.IsNullOrEmpty(fabricHostCredentialUser) || fabricHostCredentialPassword != null) { throw new InvalidOperationException(StringResources.Error_RemoteNodeConfigNotSupportedWithCredential); } } // Delete the registry value used for RemoveNodeConfiguration if it is present if (fabricPackageType == FabricPackageType.MSI) { RemoveNodeConfigOperation.DeleteRemoveNodeConfigurationRegistryValue(machineName); } if (removeExistingConfiguration) { RemoveNodeConfigurationInner(true, fabricPackageType, machineName); } var parameters = new Dictionary <string, dynamic> { { DeploymentParameters.ClusterManifestString, clusterManifestPath }, { DeploymentParameters.InfrastructureManifestString, infrastructureManifestPath }, { DeploymentParameters.FabricDataRootString, fabricDataRoot }, { DeploymentParameters.FabricLogRootString, fabricLogRoot } }; if (fabricHostCredentialUser != null) { parameters.Add(DeploymentParameters.RunAsUserNameString, fabricHostCredentialUser); } if (jsonClusterConfigPath != null) { parameters.Add(DeploymentParameters.JsonClusterConfigLocationString, jsonClusterConfigPath); } if (fabricHostCredentialPassword != null) { parameters.Add(DeploymentParameters.RunAsPaswordString, fabricHostCredentialPassword); } if (machineName != null) { parameters.Add(DeploymentParameters.MachineNameString, machineName); } if (fabricPackageRoot != null) { parameters.Add(DeploymentParameters.FabricPackageRootString, fabricPackageRoot); } if (runFabricHostServiceAsManual) { parameters.Add(DeploymentParameters.ServiceStartupTypeString, FabricDeployerServiceController.ServiceStartupType.Manual.ToString()); } if (bootstrapPackagePath != null) { parameters.Add(DeploymentParameters.BootstrapMSIPathString, bootstrapPackagePath); } // Create DeploymentParameters object with conditional retrieval of FabricBinRoot (to work around infinite recursion due to invalid reflection) bool setBinRoot = fabricPackageType != FabricPackageType.XCopyPackage; var deploymentParameters = new DeploymentParameters(setBinRoot); deploymentParameters.DeploymentPackageType = fabricPackageType; try { deploymentParameters.SetParameters(parameters, DeploymentOperations.Configure); DeploymentOperation.ExecuteOperation(deploymentParameters); } catch (Exception e) { DeployerTrace.WriteError("{0}", e.ToString()); throw; } }