public void Execute(VersionVariables variables, OutputContext context) { var gitVersionOptions = options.Value; if (gitVersionOptions.Output.Contains(OutputType.BuildServer)) { buildAgent?.WriteIntegration(console.WriteLine, variables); } if (gitVersionOptions.Output.Contains(OutputType.Json)) { switch (gitVersionOptions.ShowVariable) { case null: console.WriteLine(variables.ToString()); break; default: if (!variables.TryGetValue(gitVersionOptions.ShowVariable, out var part)) { throw new WarningException($"'{gitVersionOptions.ShowVariable}' variable does not exist"); } console.WriteLine(part); break; } } }
public void Execute(VersionVariables variables, OutputContext context) { var gitVersionOptions = options.Value; if (gitVersionOptions.Output.Contains(OutputType.BuildServer)) { buildAgent?.WriteIntegration(console.WriteLine, variables, context.UpdateBuildNumber ?? true); } if (gitVersionOptions.Output.Contains(OutputType.File)) { var retryOperation = new OperationWithExponentialBackoff <IOException>(new ThreadSleep(), log, () => fileSystem.WriteAllText(context.OutputFile, variables.ToString())); retryOperation.ExecuteAsync().Wait(); } if (gitVersionOptions.Output.Contains(OutputType.Json)) { switch (gitVersionOptions.ShowVariable) { case null: console.WriteLine(variables.ToString()); break; default: if (!variables.TryGetValue(gitVersionOptions.ShowVariable, out var part)) { throw new WarningException($"'{gitVersionOptions.ShowVariable}' variable does not exist"); } console.WriteLine(part); break; } } }