public Task PreprocessPackageAsync(IDotNetLocalPackage package) { AddSourceLinkPackage(package.FolderPath); AddSourceLinkProjectProperties(package); return(Task.CompletedTask); }
private async Task UpdateProjectFileAsync( IDotNetLocalPackage nugetPackage, IRemoteSourceControlRepository repository) { var projectFileXml = XDocument.Load(nugetPackage.ProjectFilePath); await PrepareProjectFileForPushingAsync( nugetPackage, repository, projectFileXml); Console.WriteLine("Final project output:\n" + projectFileXml); await using var stream = File.OpenWrite(nugetPackage.ProjectFilePath); projectFileXml.Save(stream); }
private void AddSourceLinkProjectProperties(IDotNetLocalPackage package) { var projectFileXml = XDocument.Load(package.ProjectFilePath); var publishRepositoryUrlProperty = _projectFileParser.GetOrCreatePropertyGroupElement(projectFileXml, "PublishRepositoryUrl"); publishRepositoryUrlProperty.Value = "true"; var embedUntrackedSourcesProperty = _projectFileParser.GetOrCreatePropertyGroupElement(projectFileXml, "EmbedUntrackedSources"); embedUntrackedSourcesProperty.Value = "true"; var includeSymbolsProperty = _projectFileParser.GetOrCreatePropertyGroupElement(projectFileXml, "IncludeSymbols"); includeSymbolsProperty.Value = "true"; var symbolPackageFormatProperty = _projectFileParser.GetOrCreatePropertyGroupElement(projectFileXml, "SymbolPackageFormat"); symbolPackageFormatProperty.Value = "snupkg"; using var stream = File.OpenWrite(package.ProjectFilePath); projectFileXml.Save(stream); }