public static string GetEffectiveConfigAsString(string workingDirectory, IFileSystem fileSystem, ConfigFileLocator configFileLocator)
        {
            var config        = Provide(workingDirectory, fileSystem, configFileLocator);
            var stringBuilder = new StringBuilder();

            using (var stream = new StringWriter(stringBuilder))
            {
                ConfigSerialiser.Write(config, stream);
                stream.Flush();
            }
            return(stringBuilder.ToString());
        }
Exemplo n.º 2
0
        public Config ReadConfig(string workingDirectory)
        {
            var configFilePath = GetConfigFilePath(workingDirectory);

            if (FileSystem.Exists(configFilePath))
            {
                var readAllText = FileSystem.ReadAllText(configFilePath);
                LegacyConfigNotifier.Notify(new StringReader(readAllText));
                return(ConfigSerialiser.Read(new StringReader(readAllText)));
            }

            return(new Config());
        }
Exemplo n.º 3
0
        public void Init(string workingDirectory)
        {
            var configFilePath       = configFileLocator.GetConfigFilePath(workingDirectory);
            var currentConfiguration = Provide(workingDirectory, false);

            var config = configInitWizard.Run(currentConfiguration, workingDirectory);

            if (config == null)
            {
                return;
            }

            using var stream = fileSystem.OpenWrite(configFilePath);
            using var writer = new StreamWriter(stream);
            log.Info("Saving config file");
            ConfigSerialiser.Write(config, writer);
            stream.Flush();
        }
        public static void Init(string workingDirectory, IFileSystem fileSystem, IConsole console, ConfigFileLocator configFileLocator)
        {
            var configFilePath       = configFileLocator.GetConfigFilePath(workingDirectory, fileSystem);
            var currentConfiguration = Provide(workingDirectory, fileSystem, applyDefaults: false, configFileLocator: configFileLocator);
            var config = new ConfigInitWizard(console, fileSystem).Run(currentConfiguration, workingDirectory);

            if (config == null)
            {
                return;
            }

            using (var stream = fileSystem.OpenWrite(configFilePath))
                using (var writer = new StreamWriter(stream))
                {
                    Logger.WriteInfo("Saving config file");
                    ConfigSerialiser.Write(config, writer);
                    stream.Flush();
                }
        }