public void OutputVariables(VersionVariables variables, Action <string> writter) { var arguments = options.Value; if (arguments.Output.Contains(OutputType.BuildServer)) { buildServer?.WriteIntegration(writter, variables); } if (arguments.Output.Contains(OutputType.Json)) { switch (arguments.ShowVariable) { case null: console.WriteLine(variables.ToString()); break; default: if (!variables.TryGetValue(arguments.ShowVariable, out var part)) { throw new WarningException($"'{arguments.ShowVariable}' variable does not exist"); } console.WriteLine(part); break; } } }
public void Execute(VersionVariables variables) { log.Info($"Running on {(RunningOnUnix ? "Unix" : "Windows")}."); var arguments = options.Value; if (arguments.Output.Contains(OutputType.BuildServer)) { var buildServer = buildServerResolver.Resolve(); buildServer?.WriteIntegration(Console.WriteLine, variables); } if (arguments.Output.Contains(OutputType.Json)) { switch (arguments.ShowVariable) { case null: Console.WriteLine(variables.ToString()); break; default: if (!variables.TryGetValue(arguments.ShowVariable, out var part)) { throw new WarningException($"'{arguments.ShowVariable}' variable does not exist"); } Console.WriteLine(part); break; } } if (arguments.UpdateWixVersionFile) { using var wixVersionFileUpdater = new WixVersionFileUpdater(arguments.TargetPath, variables, fileSystem, log); wixVersionFileUpdater.Update(); } using var assemblyInfoUpdater = new AssemblyInfoFileUpdater(arguments.UpdateAssemblyInfoFileName, arguments.TargetPath, variables, fileSystem, log, arguments.EnsureAssemblyInfo); if (arguments.UpdateAssemblyInfo) { assemblyInfoUpdater.Update(); assemblyInfoUpdater.CommitChanges(); } RunExecCommandIfNeeded(arguments, arguments.TargetPath, variables, log); RunMsBuildIfNeeded(arguments, arguments.TargetPath, variables, log); }