public void Publishes(string name, Action <PublishesExpression> configure) { var packagingDir = _solution.NugetSpecFolder; var specFile = Path.Combine(packagingDir, "{0}.nuspec".ToFormat(name)); var nuspec = GetType() .Assembly .GetManifestResourceStream(GetType(), "NuspecTemplate.txt") .ReadAllText(); _fileSystem.WriteStringToFile(specFile, nuspec.Replace("${Name}", name)); var document = new NuspecDocument(specFile); document.Name = name; var expression = new PublishesExpression(document); if (configure == null) { expression.Assembly("{0}.dll".ToFormat(name), "lib"); } else { configure(expression); } document.SaveChanges(); }
public void can_change_the_name() { theDocument.Name = "FubuCore-Edge"; theDocument.SaveChanges(); var document2 = new NuspecDocument(theFilename); document2.Name.ShouldEqual("FubuCore-Edge"); }
public void make_release() { theDocument.MakeEdge(); theDocument.MakeRelease(); theDocument.Name.ShouldEqual("FubuCore"); var document2 = new NuspecDocument(theFilename); document2.Name.ShouldEqual("FubuCore"); }
public void SetUp() { theFilename = "fubucore.nuspec"; var stream = GetType() .Assembly .GetManifestResourceStream(typeof(DataMother), "FubuCoreNuspecTemplate.txt"); new FileSystem().WriteStreamToFile(theFilename, stream); theDocument = new NuspecDocument(theFilename); }
private void generateNuspec(string targetFile) { var nuspec = new NuspecDocument(targetFile); _dependencies.Each(token => { var dependency = token.Create(); nuspec.AddDependency(dependency); }); nuspec.SaveChanges(); }
public void make_edge() { theDocument.MakeEdge(); var document2 = new NuspecDocument(theFilename); document2.Name.ShouldEqual("FubuCore-Edge"); document2.MakeEdge(); var document3 = new NuspecDocument(theFilename); document3.Name.ShouldEqual("FubuCore-Edge"); }
private void updateSpecification(CreatePackagesInput input, SpecGroup group, IEnumerable <SpecGroup> groups) { var spec = group.Spec; var local = Solution.LocalDependencies(); var nuspec = new NuspecDocument(spec.Filename); group .DetermineDependencies() .Each(dependency => { var localDependency = local.Get(dependency); var constraint = Solution.ConstraintFor(dependency); var version = constraint.SpecFor(localDependency.Version); var nuspecDep = new NuspecDependency(dependency.Name, version); RippleLog.Info("Adding dependency: " + nuspecDep); nuspec.AddDependency(nuspecDep); }); group .Projects .SelectMany(project => project.References) .Each(projectRef => { var target = groups.FirstOrDefault(x => x.Projects.Contains(projectRef)); if (target == null) { return; } // TODO -- Do we need another setting for project references? var constraint = Solution.NuspecSettings.Float; var version = constraint.SpecFor(new SemanticVersion(input.VersionFlag)); var nuspecDep = new NuspecDependency(target.Spec.Name, version); RippleLog.Info("Adding dependency: " + nuspecDep); nuspec.AddDependency(nuspecDep); }); nuspec.SaveChanges(); }
public void Publishes(string name, Action<PublishesExpression> configure) { var packagingDir = _solution.NugetSpecFolder; var specFile = Path.Combine(packagingDir, "{0}.nuspec".ToFormat(name)); var nuspec = GetType() .Assembly .GetManifestResourceStream(GetType(), "NuspecTemplate.txt") .ReadAllText(); _fileSystem.WriteStringToFile(specFile, nuspec.Replace("${Name}", name)); var document = new NuspecDocument(specFile); document.Name = name; var expression = new PublishesExpression(document); if (configure == null) { expression.Assembly("{0}.dll".ToFormat(name), "lib"); } else { configure(expression); } document.SaveChanges(); }
public PublishesExpression(NuspecDocument spec) { _spec = spec; }
public PublishesExpression(NuspecDocument spec, Solution solution) { _spec = spec; _solution = solution; }