private static void UpdateToolsetPackage( InsertionArtifacts artifacts, BuildVersion buildVersion, CancellationToken cancellationToken) { Console.WriteLine("Updating toolset compiler package"); var packagesDir = artifacts.GetPackagesDirectory(); var toolsetPackagePath = Directory.EnumerateFiles(packagesDir, $"{PackageInfo.RoslynToolsetPackageName}*.nupkg", SearchOption.AllDirectories).Single(); var fileName = Path.GetFileName(toolsetPackagePath); var package = PackageInfo.ParsePackageFileName(fileName); var coreXT = CoreXT.Load(GetAbsolutePathForEnlistment()); if (!coreXT.TryGetPackageVersion(package, out var previousPackageVersion)) { throw new Exception("Toolset package is not installed in this enlistment"); } UpdatePackage(previousPackageVersion, buildVersion, coreXT, package); // Update .corext/Configs/default.config cancellationToken.ThrowIfCancellationRequested(); Console.WriteLine("Updating CoreXT config file"); coreXT.SaveConfig(); }
private static void UpdateToolsetPackage( CoreXT coreXT, InsertionArtifacts artifacts, BuildVersion buildVersion) { Console.WriteLine("Updating toolset compiler package"); var packagesDir = artifacts.GetPackagesDirectory(); var toolsetPackagePath = Directory.EnumerateFiles(packagesDir, $"{PackageInfo.RoslynToolsetPackageName}*.nupkg", SearchOption.AllDirectories).Single(); var fileName = Path.GetFileName(toolsetPackagePath); var package = PackageInfo.ParsePackageFileName(fileName); if (!coreXT.TryGetPackageVersion(package, out var previousPackageVersion)) { throw new Exception("Toolset package is not installed in this enlistment"); } UpdatePackage(previousPackageVersion, buildVersion, coreXT, package); }