public void CalculatePackage(bool useProjectReferences) { string logFile = QQnPath.Combine(LoggerPath, "QQn.TurtleMSBuild.tbLog"); if (!File.Exists(logFile)) { BuildInternal(); } TBLogCache logCollection = new TBLogCache(LoggerPath); logCollection.LoadAll(); PackageArgs args = new PackageArgs(); args.LogCache = logCollection; args.BuildRoot = Path.GetDirectoryName(Solution); args.UseProjectDependencies = useProjectReferences; args.ProjectsToPackage.AddRange(logCollection.KeysAsFullPaths); PackageList newPackages; Assert.That(Packager.TryCreatePackages(args, out newPackages), "Created packages"); Assert.That(newPackages.Count, Is.EqualTo(args.ProjectsToPackage.Count), "All projects packaged"); if (Directory.Exists("f:\\extractor")) { Directory.Delete("f:\\extractor", true); } if (Directory.Exists("f:\\extractor2")) { Directory.Delete("f:\\extractor2", true); } if (!Directory.Exists("f:\\extractor")) { Directory.CreateDirectory("f:\\extractor"); } if (!Directory.Exists("f:\\extractor2")) { Directory.CreateDirectory("f:\\extractor2"); } foreach (TPack p in newPackages) { p.ExtractTo("f:\\extractor"); } foreach (TPack p in newPackages) { p.ExtractTo("f:\\extractor2", true); } }
public PackageState(PackageArgs args) { if (args == null) { throw new ArgumentNullException("args"); } _logCache = args.LogCache; foreach (string file in args.ProjectsToPackage.KeysAsFullPaths) { Logs.Add(LogCache.Get(file)); } _buildRoot = args.BuildRoot; _dontUseProjectDependencies = !args.UseProjectDependencies; if (!string.IsNullOrEmpty(BuildRoot)) { Files.BaseDirectory = args.BuildRoot; } }