public static async Task Main(string[] args) { if (args.Length < 1 || string.IsNullOrWhiteSpace(args[0])) { Console.Error.WriteLine("error: You must specify the solution directory. Exiting."); return; } _solutionDirectory = args[0]; _baseXunitPath = Path.Combine( _solutionDirectory, "test", "Datadog.Trace.ClrProfiler.IntegrationTests"); _latestMinors = new PackageGroup("LatestMinors"); _comprehensive = new PackageGroup("Comprehensive"); _strategyGenerator = new XunitStrategyFileGenerator( Path.Combine( _baseXunitPath, "PackageVersions.g.cs")); var definitionsFilename = Path.Combine(args[0], "PackageVersionsGeneratorDefinitions.json"); if (!File.Exists(definitionsFilename)) { Console.Error.WriteLine($"error: Definitions file {definitionsFilename} does not exist. Exiting."); return; } var entries = JsonConvert.DeserializeObject <PackageVersionEntry[]>(File.ReadAllText(definitionsFilename)); await RunFileGeneratorWithPackageEntries(entries); }
public PackageVersionGenerator( AbsolutePath tracerDirectory, AbsolutePath testProjectDirectory) { var propsDirectory = tracerDirectory / "build"; _definitionsFilePath = tracerDirectory / "build" / "PackageVersionsGeneratorDefinitions.json"; _latestMinors = new PackageGroup(propsDirectory, testProjectDirectory, "LatestMinors"); _latestMajors = new PackageGroup(propsDirectory, testProjectDirectory, "LatestMajors"); _strategyGenerator = new XunitStrategyFileGenerator(testProjectDirectory / "PackageVersions.g.cs"); if (!File.Exists(_definitionsFilePath)) { throw new Exception($"Definitions file {_definitionsFilePath} does not exist. Exiting."); } }