From fe3e4b2566e2d5ad6692909e2c04719539850706 Mon Sep 17 00:00:00 2001 From: vincent porte Date: Wed, 5 Mar 2025 11:16:02 +0100 Subject: [PATCH] =?UTF-8?q?add=20sorting=20cronified=20tasks=20order=20tes?= =?UTF-8?q?t=20on=20frequency=20(nb=20of=20occurs=20in=20a=20year)=20>=20h?= =?UTF-8?q?our=20>=20minute,=20PLUS=C2=A0reorder=20tasks=20in=20cron.json"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- clevercloud/cron.json | 14 +++++++------- lacommunaute/utils/tests/tests_consistency.py | 17 +++++++++++++++++ 2 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 lacommunaute/utils/tests/tests_consistency.py diff --git a/clevercloud/cron.json b/clevercloud/cron.json index 0c825014..160b9ba7 100644 --- a/clevercloud/cron.json +++ b/clevercloud/cron.json @@ -1,15 +1,15 @@ [ "*/10 * * * * $ROOT/clevercloud/rebuild_index.sh", + "*/15 7-21 * * * $ROOT/clevercloud/run_management_command.sh send_messages_notifications asap", + "10 6-22 * * * $ROOT/clevercloud/run_management_command.sh add_user_to_list_when_register", + "55 8-18 * * 1-5 $ROOT/clevercloud/run_management_command.sh add_missyou_notifications", "0 3 * * * $ROOT/clevercloud/run_management_command.sh clearsessions", + "20 6 * * * $ROOT/clevercloud/run_management_command.sh send_messages_notifications day", "0 11 * * * $ROOT/clevercloud/run_management_command.sh collect_matomo_stats", "5 11 * * * $ROOT/clevercloud/run_management_command.sh collect_django_stats", - "10 11 1 * * $ROOT/clevercloud/run_management_command.sh collect_matomo_stats --period month", + "2 12 * * * $ROOT/clevercloud/run_management_command.sh datas_anonymisation", + "30 13 * * 1-5 $ROOT/clevercloud/run_management_command.sh send_notifs_on_unanswered_topics", "15 11 * * 1 $ROOT/clevercloud/run_management_command.sh collect_matomo_forum_stats", - "*/15 7-21 * * * $ROOT/clevercloud/run_management_command.sh send_messages_notifications asap", - "55 8-18 * * 1-5 $ROOT/clevercloud/run_management_command.sh add_missyou_notifications", - "20 6 * * * $ROOT/clevercloud/run_management_command.sh send_messages_notifications day", - "10 6-22 * * * $ROOT/clevercloud/run_management_command.sh add_user_to_list_when_register", "0 12 * * 1 $ROOT/clevercloud/run_management_command.sh delete_old_email_sent_tracks", - "2 12 * * * $ROOT/clevercloud/run_management_command.sh datas_anonymisation", - "30 13 * * 1-5 $ROOT/clevercloud/run_management_command.sh send_notifs_on_unanswered_topics" + "10 11 1 * * $ROOT/clevercloud/run_management_command.sh collect_matomo_stats --period month" ] diff --git a/lacommunaute/utils/tests/tests_consistency.py b/lacommunaute/utils/tests/tests_consistency.py new file mode 100644 index 00000000..d8576ceb --- /dev/null +++ b/lacommunaute/utils/tests/tests_consistency.py @@ -0,0 +1,17 @@ +import json +import pathlib + +from crontab import CronTab + + +def test_crontab_order(settings): + current_jobs = list( + CronTab( + tab="\n".join( + json.loads(pathlib.Path(settings.ROOT_DIR).joinpath("clevercloud", "cron.json").read_bytes()) + ) + ) + ) + ordered_jobs = sorted(current_jobs, key=lambda j: (-j.frequency(), j.hour.parts, j.minute.parts)) + + assert ordered_jobs == current_jobs