private void GenerateFilesystemScript()
        {
            // TODO: re-work progress calculation
            //string progressCalculation = _model.ProcessDatabases ? "60" : "90";

            executionScript += _serviceScriptGenerator.StopDependentServices();

            executionScript += _iisScriptGenerator.Stop(18);

            if (_model.WebsiteChecked)
            {
                executionScript += _filesScriptGenerator.Backup(Settings.Parameters.Webroot, 20);
            }

            if (_model.XConnectChecked)
            {
                executionScript += _filesScriptGenerator.Backup(Settings.Parameters.XConnectFolder, 30);
            }

            if (_model.IdentityChecked)
            {
                executionScript += _filesScriptGenerator.Backup(Settings.Parameters.IdentityServerFolder, 40);
            }

            if (_model.PublishingChecked)
            {
                executionScript += _filesScriptGenerator.Backup(Settings.Parameters.HorizonFolder, 45);
            }
            if (_model.HorizonChecked)
            {
                executionScript += _filesScriptGenerator.Backup(Settings.Parameters.PublishingServiceFolder, 50);
            }

            if (_model.CommerceChecked)
            {
                for (int i = 0; i < _model.CommerceSites.Count; i++)
                {
                    var folderName = CommerceSitesParameters.ElementAt(i).Key;
                    executionScript += _filesScriptGenerator.Backup(folderName, 50 + i);
                }
            }

            executionScript += _iisScriptGenerator.Start(55);

            executionScript += _serviceScriptGenerator.StartService(Settings.Services.IndexWorker, 56);
            executionScript += _serviceScriptGenerator.StartService(Settings.Services.ProcessingEngineService, 57);
            executionScript += _serviceScriptGenerator.StartService(Settings.Services.MarketingAutomation, 58);

            if (_model.PublishingChecked)
            {
                //TODO: Own starting script from plugin
                //Start-Process -FilePath $exe  -NoNewWindow
                //executionScript += _serviceScriptGenerator.StartService(Settings.Process.PublishingHost, 59);
            }

            if (!_model.ProcessDatabases)
            {
                executionScript += "Write-Progress -Activity $activity -CurrentOperation 'backup complete.' -PercentComplete 100";
            }
        }
예제 #2
0
        private void GenerateFilesystemScript()
        {
            try
            {
                int progressCalculation = _model.ProcessDatabases ? 60 : 90;

                executionScript += _serviceScriptGenerator.StopDependentServices();

                executionScript += _iisScriptGenerator.Stop(30);

                if (_model.WebsiteChecked)
                {
                    executionScript += _filesScriptGenerator.Remove(Settings.Parameters.Webroot, 40);
                }

                if (_model.IdentityChecked)
                {
                    executionScript += _filesScriptGenerator.Remove(Settings.Parameters.IdentityServerFolder, 43);
                }

                if (_model.XConnectChecked)
                {
                    executionScript += $@"{Environment.NewLine}Start-Sleep -Seconds 2";
                    executionScript += _filesScriptGenerator.Remove(Settings.Parameters.XConnectFolder, 45);
                }

                if (_model.HorizonChecked)
                {
                    executionScript += _filesScriptGenerator.Remove(Settings.Parameters.HorizonFolder, 47);
                }

                if (_model.PublishingChecked)
                {
                    executionScript += _filesScriptGenerator.Remove(Settings.Parameters.PublishingServiceFolder, 50);
                }

                if (_model.CommerceChecked)
                {
                    for (int i = 0; i < _model.CommerceSites.Count; i++)
                    {
                        var key = CommerceSitesParameters.ElementAt(i).Key;
                        executionScript += _filesScriptGenerator.Remove(key, 55 + 1);
                    }
                }

                executionScript += _iisScriptGenerator.Start(progressCalculation);

                if (!_model.ProcessDatabases)
                {
                    executionScript += "Write-Progress -Activity $activity -CurrentOperation 'instance clean-up complete.' -PercentComplete 100";
                }
            }
            catch (Exception e)
            {
                throw;
            }
        }