Beispiel #1
0
    public virtual async Task <string> Pack()
    {
        var version = (await Git.GetVersion()).NuGetVersionV2;

        await Build();

        await(await Dotnet.Tool()).Run("pack",
                                       LibDir,
                                       "--configuration", Configuration,
                                       "--no-build",
                                       "--include-source",
                                       "--include-symbols",
                                       "--output", PackagesDir.EnsureDirectoryExists()
                                       );

        return(PackagesDir.Combine($"{name}.{version}.nupkg"));
    }
Beispiel #2
0
        private void MakePackage(DirRef packageDir)
        {
            var units = new List <Tree.Unit>();

            foreach (var unitFile in EnumerateJokes(packageDir).Skip(0))
            {
                var name = "pack:" + unitFile.ToString().Substring(PackagesDir.ToString().Length + 1);

                Console.WriteLine($"{name}");
                var(errors, unit) = Compile(unitFile, name);
                if (!errors.NoError() || unit == null)
                {
                    errors.Describe(Console.Out);
                    return;
                }
                units.Add(unit);
            }

            var package = new Package(null, units);

            package.Build();

            foreach (var unit in package.Units)
            {
                foreach (var unitMember in unit.Members)
                {
                    Console.WriteLine($"{unitMember.Name}");
                    foreach (var classMember in unitMember.Items)
                    {
                        Console.WriteLine($"  {classMember}");
                    }
                }
            }

            package.Errors.Describe(Console.Out);
        }
Beispiel #3
0
        public DirRef FindPackageDir(string packageName)
        {
            var packageDir = PackagesDir.Dir(packageName);

            return(packageDir);
        }