protected override void ProcessRecord() { base.ProcessRecord(); Logger.LogVerbose("Entering XrmSolutionPatches"); XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); IOrganizationService pollingOrganizationService = xrmConnection.Connect( ConnectionString, 120); SolutionManager solutionManager = new SolutionManager( Logger, OrganizationService, pollingOrganizationService); List <Solution> patches = solutionManager.GetSolutionPatches(UniqueSolutionName); Logger.LogInformation("{0} patches found for solution {1}", patches.Count, UniqueSolutionName); base.WriteObject(patches); Logger.LogVerbose("Entering XrmSolutionPatches"); }
public IOrganizationService CreateConnection() { string name = "CrmConnection"; string connectionString = GetConnectionString(name); XrmConnectionManager con = new XrmConnectionManager(new Logging.TestLogger()); return(con.Connect(connectionString, 0)); }
protected override void BeginProcessing() { base.BeginProcessing(); XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); OrganizationService = xrmConnection.Connect( ConnectionString, Timeout); }
protected override void ProcessRecord() { base.ProcessRecord(); Logger.LogVerbose("Entering XrmExportSolution"); XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); SolutionManager solutionManager = new SolutionManager( Logger, OrganizationService, null); SolutionExportOptions options = new SolutionExportOptions { Managed = Managed, SolutionName = UniqueSolutionName, ExportAutoNumberingSettings = ExportAutoNumberingSettings, ExportCalendarSettings = ExportCalendarSettings, ExportCustomizationSettings = ExportCustomizationSettings, ExportEmailTrackingSettings = ExportEmailTrackingSettings, ExportGeneralSettings = ExportGeneralSettings, ExportIsvConfig = ExportIsvConfig, ExportMarketingSettings = ExportMarketingSettings, ExportOutlookSynchronizationSettings = ExportOutlookSynchronizationSettings, ExportRelationshipRoles = ExportRelationshipRoles, ExportSales = ExportSales, TargetVersion = TargetVersion, ExportExternalApplications = ExportExternalApplications, IncludeVersionInName = IncludeVersionInName, ExportAsync = ExportAsync, AsyncWaitTimeout = AsyncWaitTimeout, SleepInterval = SleepInterval }; string solutionFile = solutionManager.ExportSolution( OutputFolder, options); base.WriteObject(solutionFile); Logger.LogVerbose("Leaving XrmExportSolution"); }
protected override void ProcessRecord() { base.ProcessRecord(); Logger.LogVerbose("Entering XrmImportSolutions"); Logger.LogVerbose("Creating Polling Service"); XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); IOrganizationService pollingOrganizationService = xrmConnection.Connect( ConnectionString, 120); Logger.LogVerbose("Finished Creating Polling Service"); SolutionManager solutionManager = new SolutionManager( Logger, OrganizationService, pollingOrganizationService); Logger.LogVerbose("Starting to proccess solutions"); List <SolutionImportResult> results = solutionManager.ImportSolutions( LogsDirectory, ConfigFilePath); base.WriteObject(results); Logger.LogVerbose("All solutions processed"); List <SolutionImportResult> failed = results.FindAll(r => r.Success.Equals(false)); Logger.LogVerbose("Failed results count: {0}", failed.Count); if (failed.Count > 0) { throw new Exception(string.Format("Solution import Failed")); } Logger.LogVerbose("Leaving XrmImportSolutions"); }
protected override void ProcessRecord() { base.ProcessRecord(); Logger.LogVerbose("Entering XrmImportSolution"); XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); IOrganizationService pollingOrganizationService = xrmConnection.Connect( ConnectionString, 120); SolutionManager solutionManager = new SolutionManager( Logger, OrganizationService, pollingOrganizationService); SolutionImportResult result = solutionManager.ImportSolution( SolutionFilePath, PublishWorkflows, ConvertToManaged, OverwriteUnmanagedCustomizations, SkipProductUpdateDependencies, HoldingSolution, OverrideSameVersion, ImportAsync, SleepInterval, AsyncWaitTimeout, ImportJobId, DownloadFormattedLog, LogsDirectory, LogFileName); if (!result.Success) { throw new Exception(string.Format("Solution import Failed. Error: {0}", result.ErrorMessage)); } Logger.LogVerbose("Leaving XrmImportSolution"); }
protected override void ProcessRecord() { base.ProcessRecord(); Logger.LogVerbose("Entering XrmExportSolutions"); XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); SolutionManager solutionManager = new SolutionManager( Logger, OrganizationService, null); List<string> solutions = solutionManager.ExportSolutions( OutputFolder, ConfigFilePath); base.WriteObject(solutions); Logger.LogVerbose("Leaving XrmExportSolutions"); }
protected override void ProcessRecord() { base.ProcessRecord(); Logger.LogVerbose("Entering MergeXrmSolution"); if (AsyncWaitTimeout == 0) { AsyncWaitTimeout = 15 * 60; base.WriteVerbose(string.Format("Setting Default AsyncWaitTimeout: {0}", AsyncWaitTimeout)); } if (SleepInterval == 0) { SleepInterval = 15; base.WriteVerbose(string.Format("Setting Default SleepInterval: {0}", SleepInterval)); } XrmConnectionManager xrmConnection = new XrmConnectionManager( Logger); IOrganizationService pollingOrganizationService = xrmConnection.Connect( ConnectionString, 120); SolutionManager solutionManager = new SolutionManager( Logger, OrganizationService, pollingOrganizationService); SolutionApplyResult result = solutionManager.ApplySolution( UniqueSolutionName, ImportAsync, SleepInterval, AsyncWaitTimeout); if (!result.Success) { throw new Exception(string.Format("Solution upgrade Failed. Error: {0}", result.ErrorMessage)); } Logger.LogVerbose("Leaving MergeXrmSolution"); //base.ProcessRecord(); //base.WriteVerbose(string.Format("Upgrading Solution: {0}", UniqueSolutionName)); //if (AsyncWaitTimeout == 0) //{ // AsyncWaitTimeout = 15 * 60; // base.WriteVerbose(string.Format("Setting Default AsyncWaitTimeout: {0}", AsyncWaitTimeout)); //} //if (SleepInterval == 0) //{ // SleepInterval = 15; // base.WriteVerbose(string.Format("Setting Default SleepInterval: {0}", SleepInterval)); //} //var upgradeSolutionRequest = new DeleteAndPromoteRequest //{ // UniqueName = UniqueSolutionName //}; //if (ImportAsync) //{ // var asyncRequest = new ExecuteAsyncRequest // { // Request = upgradeSolutionRequest // }; // base.WriteVerbose("Applying using Async Mode"); // var asyncResponse = OrganizationService.Execute(asyncRequest) as ExecuteAsyncResponse; // Guid asyncJobId = asyncResponse.AsyncJobId; // base.WriteVerbose(string.Format("Async JobId: {0}", asyncJobId)); // WriteObject(asyncJobId); // if (WaitForCompletion) // { // base.WriteVerbose("Waiting for completion"); // AwaitCompletion(asyncJobId); // } //} //else //{ // OrganizationService.Execute(upgradeSolutionRequest); //} //base.WriteVerbose(string.Format("{0} Upgrade Completed", UniqueSolutionName)); //VerifyUpgrade(); }