static void ReplaceVersionPlaceholders(BuildToolsParameters parameters) { if (string.IsNullOrEmpty(parameters.TemplateFile)) { Console.WriteLine("BuildTool ERROR: No template file specified."); return; } if (!File.Exists(parameters.TemplateFile)) { Console.WriteLine("BuildTool ERROR: Template file '{0}' does not exist.", parameters.TemplateFile); return; } int version = parameters.IsDebug ? new Random().Next(65534) + 1 : 0; File.WriteAllText(parameters.TargetFile, File.ReadAllText(parameters.TemplateFile) .Replace("%%nuget_version%%", parameters.NuGetVersion ?? "%%nuget_version%%") .Replace("%%full_version%%", parameters.FullVersion ?? "%%full_version%%") .Replace("%%shorter_version%%", ExtractShorterVersion(parameters.FullVersion) ?? "%%shorter_version%%") .Replace("%%debug_version%%", version.ToString())); }
static BuildToolsParameters ReadParameters(string[] args) { BuildToolsParameters parameters = new BuildToolsParameters(); if (args != null) { foreach (string arg in args) { string[] argParts = arg.Split(new char[] { ':' }, 2); switch (argParts[0]) { case "-version": parameters.Mode = BuildToolsMode.VersionPlaceholders; break; case "-Debug": case "-debug": parameters.IsDebug = true; break; case "-settings": if (argParts.Length > 1) { parameters.SettingsFile = argParts[1]; } break; case "-template": if (argParts.Length > 1) { parameters.TemplateFile = argParts[1]; } break; case "-target": if (argParts.Length > 1) { parameters.TargetFile = argParts[1]; } break; } } } if (parameters.Mode != BuildToolsMode.None) { // Read settings file if (File.Exists(parameters.SettingsFile)) { try { string[] settings = File.ReadAllLines(parameters.SettingsFile); foreach (string setting in settings) { string[] settingParts = setting.Split(new char[] { '=' }, 2); switch (settingParts[0]) { case "nuget_version": if (settingParts.Length > 1) { parameters.NuGetVersion = settingParts[1]; } break; case "full_version": if (settingParts.Length > 1) { parameters.FullVersion = settingParts[1]; } break; } } } catch (Exception ex) { Console.WriteLine("BuildTool ERROR: Couldn't read '{0}'. Reason:{1}{1}{2}", parameters.SettingsFile, Environment.NewLine, ex.Message); } } } return parameters; }
static void ReplaceVersionPlaceholders(BuildToolsParameters parameters) { if (string.IsNullOrEmpty(parameters.TemplateFile)) { Console.WriteLine("BuildTool ERROR: No template file specified."); return; } if (!File.Exists(parameters.TemplateFile)) { Console.WriteLine("BuildTool ERROR: Template file '{0}' does not exist.", parameters.TemplateFile); return; } int version = parameters.IsDebug ? new Random().Next(65534) + 1 : 0; File.WriteAllText(parameters.TargetFile, File.ReadAllText(parameters.TemplateFile) .Replace("%%nuget_version%%", parameters.NuGetVersion ?? "%%nuget_version%%") .Replace("%%full_version%%", parameters.FullVersion ?? "%%full_version%%") .Replace("%%shorter_version%%", ExtractShorterVersion(parameters.FullVersion) ?? "%%shorter_version%%") .Replace("%%debug_version%%", version.ToString())); }
static BuildToolsParameters ReadParameters(string[] args) { BuildToolsParameters parameters = new BuildToolsParameters(); if (args != null) { foreach (string arg in args) { string[] argParts = arg.Split(new char[] { ':' }, 2); switch (argParts[0]) { case "-version": parameters.Mode = BuildToolsMode.VersionPlaceholders; break; case "-Debug": case "-debug": parameters.IsDebug = true; break; case "-settings": if (argParts.Length > 1) { parameters.SettingsFile = argParts[1]; } break; case "-template": if (argParts.Length > 1) { parameters.TemplateFile = argParts[1]; } break; case "-target": if (argParts.Length > 1) { parameters.TargetFile = argParts[1]; } break; } } } if (parameters.Mode != BuildToolsMode.None) { // Read settings file if (File.Exists(parameters.SettingsFile)) { try { string[] settings = File.ReadAllLines(parameters.SettingsFile); foreach (string setting in settings) { string[] settingParts = setting.Split(new char[] { '=' }, 2); switch (settingParts[0]) { case "nuget_version": if (settingParts.Length > 1) { parameters.NuGetVersion = settingParts[1]; } break; case "full_version": if (settingParts.Length > 1) { parameters.FullVersion = settingParts[1]; } break; } } } catch (Exception ex) { Console.WriteLine("BuildTool ERROR: Couldn't read '{0}'. Reason:{1}{1}{2}", parameters.SettingsFile, Environment.NewLine, ex.Message); } } } return(parameters); }