public override async Task LoadConfigAsync(CancellationToken ct) { var tempFolder = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); var sourceUrl = $"{_cdnUrl}/config.json"; var fileTarget = Path.Combine(tempFolder, "config.json"); Fs.EnsureFolderExists(tempFolder); await DownloadContentAsync(sourceUrl, fileTarget, ct); Config = TemplatesSourceConfig.LoadFromFile(fileTarget); Fs.SafeDeleteDirectory(tempFolder); }
public override async Task AcquireAsync(TemplatesPackageInfo packageInfo, CancellationToken ct) { if (string.IsNullOrEmpty(packageInfo.LocalPath) || !File.Exists(packageInfo.LocalPath)) { _version = packageInfo.Version; var tempFolder = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); var sourceUrl = $"{_cdnUrl}/{packageInfo.Name}"; var fileTarget = Path.Combine(tempFolder, packageInfo.Name); Fs.EnsureFolderExists(tempFolder); await DownloadContentAsync(sourceUrl, fileTarget, ct); packageInfo.LocalPath = fileTarget; } }