From fc070da76eae9c34142cdb72e2c731385baefaab Mon Sep 17 00:00:00 2001 From: Helge Jung <hej@c3pb.de> Date: Sat, 25 Nov 2023 18:16:33 +0100 Subject: [PATCH] housekeeping: allow skipping schedule and/or wiki imports --- src/core/management/commands/housekeeping.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/core/management/commands/housekeeping.py b/src/core/management/commands/housekeeping.py index 90e081ff6..a1645d065 100644 --- a/src/core/management/commands/housekeeping.py +++ b/src/core/management/commands/housekeeping.py @@ -15,13 +15,8 @@ class Command(BaseCommand): def add_arguments(self, parser): parser.add_argument('--forever', action='store_true', help='repeat the housekeeping forever (until Ctrl+C is pressed)') parser.add_argument('--forever-delay', type=int, default=300, help='seconds to wait between housekeeping runs') - - def _do_housekeeping(self): - self._housekeeping_directmessages() - self._housekeeping_vouchers() - self._housekeeping_scheduleimports() - self._housekeeping_exportcache() - self._housekeeping_wikimports() + parser.add_argument('--skip-schedule-imports', action='store_true', help='don\'t do schedule imports') + parser.add_argument('--skip-wiki-imports', action='store_true', help='don\'t import wiki namespaces from upstream') def _housekeeping_directmessages(self): # clear all direct messages which are after their expiry date @@ -120,7 +115,14 @@ class Command(BaseCommand): if forever: print(timezone.now().isoformat()) - self._do_housekeeping() + # call the individual housekeeping methods + self._housekeeping_directmessages() + self._housekeeping_vouchers() + if not options.get('skip_schedule_imports'): + self._housekeeping_scheduleimports() + self._housekeeping_exportcache() + if not options.get('skip_wiki_imports'): + self._housekeeping_wikimports() if forever: print() # empty line -- GitLab