internal override void Run() { var cc = new ConsoleCapture("dotnet.exe", "build2") .OnOutput(line => Console.WriteLine($"==> {line}")) .OnError(line => { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine($"==> {line}"); Console.ResetColor(); }); int exitCode = cc.Start(); Console.WriteLine(exitCode); ConsoleEx.WaitForAnyKey(); }
protected override void HandleRepo(string relativeDir, RepositoryDefinition repoDef, string dir) { string currentDir = Directory.GetCurrentDirectory(); Directory.SetCurrentDirectory(dir); try { PrintLine($"{Cyan}{relativeDir}"); string program = ExecArgs.First(); string args = string.Join(" ", ExecArgs.Skip(1).ToArray()); var cc = new ConsoleCapture(program, args) .OnOutput(line => PrintLine(line)) .OnError(line => PrintLine($"{Red}{line}")); cc.Start(); PrintBlank(); } finally { Directory.SetCurrentDirectory(currentDir); } }