From cee379cf9f8933da51c8905a085d7eb8bd35103b Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Sat, 19 Sep 2020 09:23:08 -0500 Subject: [PATCH] =?UTF-8?q?feat(archival):=20=E2=9C=A8=20in=20DEBUG,=20arc?= =?UTF-8?q?hive=20only=2025=20lists=20and=20on=20startup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Commands/EnqueueArchiveAllLists.cs | 13 +++++++++++-- .../ConfigurationExtensions.cs | 5 +++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/services/Archival/FilterLists.Archival.Application/Commands/EnqueueArchiveAllLists.cs b/services/Archival/FilterLists.Archival.Application/Commands/EnqueueArchiveAllLists.cs index 69e906b78..7bea02033 100644 --- a/services/Archival/FilterLists.Archival.Application/Commands/EnqueueArchiveAllLists.cs +++ b/services/Archival/FilterLists.Archival.Application/Commands/EnqueueArchiveAllLists.cs @@ -26,9 +26,18 @@ public Handler(IDirectoryApi directory) public async Task Handle(Command request, CancellationToken cancellationToken) { var r = new Random(); - foreach (var list in (await _directory.GetListsAsync(cancellationToken)).OrderBy(_ => r.Next())) + var lists = (await _directory.GetListsAsync(cancellationToken)).OrderBy(_ => r.Next()).ToList(); + + int numToArchive; +#if DEBUG + numToArchive = 25; +#else + numToArchive = lists.Count; +#endif + + for (var i = 0; i < numToArchive; i++) { - new ArchiveList.Command(list.Id).EnqueueBackgroundJob(); + new ArchiveList.Command(lists[i].Id).EnqueueBackgroundJob(); } return Unit.Value; diff --git a/services/Archival/FilterLists.Archival.Application/ConfigurationExtensions.cs b/services/Archival/FilterLists.Archival.Application/ConfigurationExtensions.cs index d4dfeaeb5..48fb89935 100644 --- a/services/Archival/FilterLists.Archival.Application/ConfigurationExtensions.cs +++ b/services/Archival/FilterLists.Archival.Application/ConfigurationExtensions.cs @@ -33,7 +33,12 @@ public static void UseApplication(this IApplicationBuilder app) private static void ScheduleArchival(this IApplicationBuilder app) { _ = app ?? throw new ArgumentNullException(nameof(app)); + +#if DEBUG + new EnqueueArchiveAllLists.Command().EnqueueBackgroundJob(); +#else new EnqueueArchiveAllLists.Command().AddOrUpdateRecurringJob(Cron.Daily); +#endif } } }