Esempio n. 1
0
        public EnvironmentSettings GetEnvironment(EnvironmentOptions options)
        {
            var result             = new EnvironmentSettings();
            var settingsRepository = new SettingsRepository();
            var _settings          = settingsRepository.FindEnvironment(options.Environment);

            result.Uri                  = string.IsNullOrEmpty(options.Uri) ? _settings.Uri : options.Uri;
            result.IsNetCore            = options.IsNetCore ?? _settings.IsNetCore;
            result.DeveloperModeEnabled = options.DeveloperModeEnabled ?? _settings.DeveloperModeEnabled;
            result.Login                = string.IsNullOrEmpty(options.Login) ? _settings.Login : options.Login;
            result.Password             = string.IsNullOrEmpty(options.Password) ? _settings.Password : options.Password;
            result.Maintainer           =
                string.IsNullOrEmpty(options.Maintainer) ? _settings.Maintainer : options.Maintainer;
            if (_settings.Safe.HasValue && _settings.Safe.Value)
            {
                Console.WriteLine($"You try to apply the action on the production site {_settings.Uri}");
                Console.Write($"Do you want to continue? [Y/N]:");
                var answer = Console.ReadKey();
                Console.WriteLine();
                if (answer.KeyChar != 'y' && answer.KeyChar != 'Y')
                {
                    Console.WriteLine("Operation was canceled by user");
                    System.Environment.Exit(1);
                }
            }
            return(result);
        }