From f3ed5e9501030ba6a92a86b7bba441596f5bdab8 Mon Sep 17 00:00:00 2001 From: Ricardo Arenas Date: Fri, 1 Mar 2019 12:14:18 -0800 Subject: [PATCH] add 5 hour expiration when checking if file is up to date --- .../JobSender/Payloads/DirectoryPayload.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Microsoft.DotNet.Helix/JobSender/Payloads/DirectoryPayload.cs b/src/Microsoft.DotNet.Helix/JobSender/Payloads/DirectoryPayload.cs index 04727fb23e3..a91b7c95da6 100644 --- a/src/Microsoft.DotNet.Helix/JobSender/Payloads/DirectoryPayload.cs +++ b/src/Microsoft.DotNet.Helix/JobSender/Payloads/DirectoryPayload.cs @@ -21,6 +21,7 @@ public DirectoryPayload(string directory, string archiveEntryPrefix) } } + private const int CacheExpiryHours = 5; public DirectoryInfo DirectoryInfo { get; } public string NormalizedDirectoryPath => Helpers.RemoveTrailingSlash(DirectoryInfo.FullName); @@ -104,6 +105,11 @@ private async Task DoUploadAsync(IBlobContainer payloadContainer, Action private bool IsUpToDate(FileInfo alreadyUploadedFile) { + if (alreadyUploadedFile.LastWriteTimeUtc.AddHours(CacheExpiryHours) < DateTime.UtcNow) + { + return false; + } + var newestFileWriteTime = DirectoryInfo.EnumerateFiles("*", SearchOption.AllDirectories) .Select(file => file.LastWriteTimeUtc) .Max();