Exemple #1
0
        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);
            }
        }
Exemple #2
0
        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;
            }
        }