private SitecoreEnvironment CreateSitecoreEnvironment(Tasker tasker, string sqlDbPrefix, string uninstallDataPath) { SitecoreEnvironment sitecoreEnvironment = new SitecoreEnvironment(sqlDbPrefix); sitecoreEnvironment.UnInstallDataPath = uninstallDataPath; sitecoreEnvironment.Members = new List <SitecoreEnvironmentMember>(); foreach (Task powerShellTask in tasker.Tasks) { InstallParam installParam = powerShellTask.LocalParams.FirstOrDefault(x => x.Name == SiteName); if (installParam != null && !string.IsNullOrEmpty(installParam.Value)) { Hashtable evaluatedLocalParams = tasker.GetEvaluatedLocalParams(powerShellTask.LocalParams, tasker.GlobalParams); if (evaluatedLocalParams != null && evaluatedLocalParams[SiteName] != null) { sitecoreEnvironment.Members.Add(new SitecoreEnvironmentMember(evaluatedLocalParams[SiteName].ToString(), SitecoreEnvironmentMember.Types.Site.ToString())); } } } sitecoreEnvironment.Members = sitecoreEnvironment.Members.Distinct(new SitecoreEnvironmentMemberComparer()).ToList(); return(sitecoreEnvironment); }
private SitecoreEnvironment CreateEnvironment(string environmentName, string destinationFolder) { SitecoreEnvironment environment = new SitecoreEnvironment(environmentName, SitecoreEnvironment.EnvironmentType.Container); environment.UnInstallDataPath = destinationFolder; environment.Members = GetEnvironmentMembers(environmentName, destinationFolder).ToList(); return(environment); }
private void AddEnvironment(SitecoreEnvironment environment) { foreach (SitecoreEnvironment se in SitecoreEnvironmentHelper.SitecoreEnvironments) { if (se.Name == environment.Name) { return; } } SitecoreEnvironmentHelper.SitecoreEnvironments.Add(environment); SitecoreEnvironmentHelper.SaveSitecoreEnvironmentData(SitecoreEnvironmentHelper.SitecoreEnvironments); }
private void AddSitecoreEnvironment(SitecoreEnvironment sitecoreEnvironment) { // Do not add new Sitecore environment if its name already exists in the Environments.json file foreach (SitecoreEnvironment se in SitecoreEnvironmentHelper.SitecoreEnvironments) { if (se.Name == sitecoreEnvironment.Name) { return; } } SitecoreEnvironmentHelper.SitecoreEnvironments.Add(sitecoreEnvironment); SitecoreEnvironmentHelper.SaveSitecoreEnvironmentData(SitecoreEnvironmentHelper.SitecoreEnvironments); }
public void OnClick(Window mainWindow, Instance instance) { if (instance != null) { var connectionString = ProfileManager.GetConnectionString(); var args = new DeleteArgs(instance, connectionString); args.OnCompleted += () => mainWindow.Dispatcher.Invoke(() => OnPipelineCompleted(args)); var index = MainWindowHelper.GetListItemID(instance.ID); int version; if (int.TryParse(instance.Product.ShortVersion, out version) && version < 90) { WizardPipelineManager.Start("delete", mainWindow, args, null, (ignore) => OnWizardCompleted(index, args.HasInstallationBeenCompleted), () => null); } else { string uninstallPath = string.Empty; SitecoreEnvironment env = SitecoreEnvironmentHelper.GetExistingSitecoreEnvironment(instance.Name); if (!string.IsNullOrEmpty(env?.UnInstallDataPath)) { uninstallPath = env.UnInstallDataPath; } else { foreach (string installName in Directory.GetDirectories(ApplicationManager.UnInstallParamsFolder).OrderByDescending(s => s.Length)) { if (instance.Name.StartsWith(Path.GetFileName(installName))) { uninstallPath = installName; break; } } } if (string.IsNullOrEmpty(uninstallPath)) { WindowHelper.ShowMessage("UnInstall files not found."); return; } Delete9WizardArgs delete9WizardArgsargs = new Delete9WizardArgs(instance, connectionString, uninstallPath); WizardPipelineManager.Start("delete9", mainWindow, null, null, (ignore) => OnWizardCompleted(index, delete9WizardArgsargs.HasInstallationBeenCompleted), () => delete9WizardArgsargs); } } }
public void InitializeStep(WizardArgs wizardArgs) { var args = wizardArgs as ReinstallWizardArgs; string uninstallPath = string.Empty; SitecoreEnvironment env = SitecoreEnvironmentHelper.GetExistingSitecoreEnvironment(args.Instance.Name); if (!string.IsNullOrEmpty(env?.UnInstallDataPath)) { uninstallPath = env.UnInstallDataPath; } else { foreach (string installName in Directory.GetDirectories(ApplicationManager.UnInstallParamsFolder).OrderByDescending(s => s.Length)) { if (args.Instance.Name.StartsWith(Path.GetFileName(installName))) { uninstallPath = installName; break; } } } if (string.IsNullOrEmpty(uninstallPath)) { WindowHelper.ShowMessage("UnInstall files not found."); wizardArgs.WizardWindow.Close(); } Tasker tasker = new Tasker(uninstallPath); InstallParam sqlServer = tasker.GlobalParams.FirstOrDefault(p => p.Name == "SqlServer"); if (sqlServer != null) { sqlServer.Value = args.ConnectionString.DataSource; } InstallParam sqlAdminUser = tasker.GlobalParams.FirstOrDefault(p => p.Name == "SqlAdminUser"); if (sqlAdminUser != null) { sqlAdminUser.Value = args.ConnectionString.UserID; } InstallParam sqlAdminPass = tasker.GlobalParams.FirstOrDefault(p => p.Name == "SqlAdminPassword"); if (sqlAdminPass != null) { sqlAdminPass.Value = args.ConnectionString.Password; } tasker.UnInstall = true; args.Tasker = tasker; StringBuilder displayText = new StringBuilder(); displayText.AppendLine("Reinstall:"); foreach (var task in tasker.Tasks.Where(t => t.SupportsUninstall())) { displayText.AppendLine(string.Format(" -{0}", task.Name)); } this.TextBlock.Text = displayText.ToString(); args.InstanceName = args.Tasker.GlobalParams.First(p => p.Name == "SqlDbPrefix").Value; }