public override bool Execute(PublishInput input) { var report = new PublishReport(); input.EachSolution(solution => { RippleLog.Info("Building nuget files for " + solution.Name); var artifactDirectory = solution.Directory.AppendPath(input.ArtifactsFlag); RippleLog.Info("Cleaning out any existing nuget files before continuing"); new FileSystem().CleanDirectory(artifactDirectory); solution.Specifications.Each(nuget => { RippleLog.Info("Creating and publishing Nuget for " + nuget.Name); var packageFile = solution.Package(new PackageParams(nuget, SemanticVersion.Parse(input.Version), artifactDirectory, input.CreateSymbolsFlag)); var detail = solution.Publisher.PublishPackage(input.ServerFlag, packageFile, input.ApiKey); report.Add(detail); }); }); RippleLog.InfoMessage(report); if (!report.IsSuccessful()) { RippleAssert.Fail("Failure publishing packages"); } return(true); }
public override bool Execute(BatchPublishInput input) { RippleLog.Info("Looking for *.nupkg files in " + input.Directory); var files = new FileSystem() .FindFiles(input.Directory, new FileSet { Include = "*.nupkg" }) .ToArray(); _index = 0; _count = files.Count(); var publisher = PublishingService.Basic(); var report = new PublishReport(); files.Each(file => { _index++; RippleLog.Info("Trying to publish {0}, {1} or {2}".ToFormat(file, _index, _count)); var detail = publisher.PublishPackage(input.ServerFlag, file, input.ApiKeyFlag); report.Add(detail); }); RippleLog.InfoMessage(report); if (!report.IsSuccessful()) { RippleAssert.Fail("Failure publishing packages"); } return(true); }