Exemple #1
0
        public virtual async Task <bool> AddAsync(
            NuspecMetadata metadata, Stream package,
            CancellationToken cancellationToken
            = default(CancellationToken))
        {
            var id      = metadata.Id;
            var version = metadata.Version;

            var fileName = CombineToFilePath(id, version);
            var result   = await AddPackageAsync(
                fileName, package, cancellationToken);


            if (result.Item1)
            {
                await NugetServerOptions
                ?.InvokeAddPackageCompletedAsync(this,
                                                 new AddPackageCompletedEventArgs(
                                                     id, version, fileName
                                                     ));
            }
            else
            {
                await NugetServerOptions
                ?.InvokeAddPackageFailedAsync(this,
                                              new AddPackageFailedEventArgs(
                                                  id, version, fileName, result.Item2
                                                  ));
            }


            return(result.Item1);
        }
        static void Main(string[] args)
        {
            var options = new Options();

            if (CommandLine.Parser.Default.ParseArguments(args, options))
            {
                var nuspceMetadata = new NuspecMetadata
                {
                    Authors       = options.Authors,
                    Description   = options.Description,
                    Id            = options.Id,
                    Version       = options.Version,
                    ReferenceList = new List <string>()
                };

                if (!string.IsNullOrEmpty(options.ReferenceList))
                {
                    nuspceMetadata.ReferenceList = options.ReferenceList.Split(',').ToList();
                }

                Core.CreateNuspecFile(options.NuspecFileName, options.SitecoreDllDir, nuspceMetadata);
                Core.Pack(options.NuspecFileName, options.OutputDir);

                Console.WriteLine("Package generated.");
            }
        }
        public NuspecMetadata GetMetadata()
        {
            try
            {
                var nuspec = _nupkg.Entries
                             .FirstOrDefault(x => x.Name == x.FullName && x.Name.EndsWith(".nuspec", StringComparison.InvariantCultureIgnoreCase))
                             ?? throw new FileNotFoundException("Unable to find the nuspec file.");
                var document = XDocument.Load(nuspec.Open());

                return(NuspecMetadata.Parse(document));
            }
            catch (Exception e)
            {
                this.Log().Error("Failed to read metadata", e);
                return(null);
            }
        }