private void SaveExternalXRefSpec() { CurrentBuildVersionInfo.ExternalXRefSpecFile = IncrementalUtility.CreateRandomFileName(CurrentBuildVersionInfo.BaseDir); using (var writer = File.CreateText(Path.Combine(CurrentBuildVersionInfo.BaseDir, CurrentBuildVersionInfo.ExternalXRefSpecFile))) { Context.SaveExternalXRefSpec(writer); } }
public Stream SaveContextInfo() { if (!_increContext.ShouldTraceIncrementalInfo) { Logger.LogVerbose("Could not save current context info since should not trace incremental information."); return(null); } var currentPostProcessorInfo = FindPostProcessorInfo(_increContext.CurrentInfo, _postProcessorName); currentPostProcessorInfo.ContextInfoFile = IncrementalUtility.CreateRandomFileName(_increContext.CurrentBaseDir); return(EnvironmentContext.FileAbstractLayer.Create(Path.Combine(_increContext.CurrentBaseDir, currentPostProcessorInfo.ContextInfoFile))); }
private static void PrepareCachedOutput( string intermediateFolder, BuildInfo lastBuildInfo, string appendContent, List <ManifestItem> manifestItems, string additionalFileExtension, params string[] fileNames) { var baseFolder = Path.Combine(intermediateFolder, lastBuildInfo.DirectoryName); var postProcessOutputs = lastBuildInfo.PostProcessInfo.PostProcessOutputs; foreach (var fileName in fileNames) { var cachedHtmlName = IncrementalUtility.CreateRandomFileName(baseFolder); var htmlContent = $"{fileName}{appendContent}"; CreateFile($"{cachedHtmlName}", htmlContent, baseFolder); postProcessOutputs.Add($"{fileName}.html", cachedHtmlName); var cachedMetaName = IncrementalUtility.CreateRandomFileName(baseFolder); CreateFile($"{cachedMetaName}", $"{fileName}{MetaAppendContent}", baseFolder); postProcessOutputs.Add($"{fileName}.mta.json", cachedMetaName); if (!string.IsNullOrEmpty(additionalFileExtension)) { var relativePath = $"{fileName}{additionalFileExtension}"; var cachedManifestItemsFileName = IncrementalUtility.CreateRandomFileName(baseFolder); CreateFile($"{cachedManifestItemsFileName}", htmlContent, baseFolder); postProcessOutputs.Add(relativePath, cachedManifestItemsFileName); var item = manifestItems.FirstOrDefault(i => Path.ChangeExtension(i.SourceRelativePath, null) == fileName); if (item != null) { item.OutputFiles.Add($"{additionalFileExtension}", new OutputFileInfo { RelativePath = relativePath }); lastBuildInfo.PostProcessInfo.ManifestItems.Add(item); } } } }