Skip to content

Instantly share code, notes, and snippets.

@michael-newton-15below
Created November 20, 2012 15:07
Show Gist options
  • Save michael-newton-15below/4118468 to your computer and use it in GitHub Desktop.
Save michael-newton-15below/4118468 to your computer and use it in GitHub Desktop.
Nuget.Core example
#r "Nuget.Core"
#r "System.Xml.Linq"
open NuGet
open System
open System.Linq
let repoFac = new PackageRepositoryFactory()
let repo = repoFac.CreateRepository("http://btn-tc01:8083")
let FiveFiveVersion = new SemanticVersion("5.5.0")
let packages = repo.FindPackages("Database.PASNGR", new VersionSpec(), false, false)
let latestEachBranch =
packages
|> Seq.groupBy (fun p -> p.Version.Version.Minor)
|> Seq.map (fun (minor, packages) -> packages.OrderByDescending(fun p -> p.Version).First())
// repo.GetPackages().Where(fun (p : IPackage) -> p.Version.Version.Minor = 5 && p.Id = "Database.PASNGR") |> printfn "%A"
let manager = new PackageManager(repo, @"D:\tempRubbish")
latestEachBranch
|> Seq.iter (fun p -> manager.InstallPackage(p, true, false))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment