@@ -55,6 +55,18 @@ class JobInterval(BaseModel):
5555 modrinth_tags : int = 60 * 60 * 24 # 24 hours
5656 global_statistics : int = 60 * 60 * 24 # 24 hours
5757
58+ class CronTrigger (BaseModel ):
59+ curseforge_refresh : str = "0 */2 * * *" # Every 2 hours
60+ modrinth_refresh : str = "0 */2 * * *" # Every 2 hours
61+ curseforge_refresh_full : str = "0 2 * * *" # Every day at 02:00
62+ modrinth_refresh_full : str = "0 4 * * *" # Every day at 04:00
63+ sync_curseforge_by_queue : str = "*/20 * * * *" # Every 20 minutes
64+ sync_modrinth_by_queue : str = "10,30,50 * * * *" # Every 10, 30, 50 minutes
65+ sync_modrinth_by_search : str = "30 */2 * * *" # Every 2 hours at 30 minutes past the hour
66+ sync_curseforge_by_search : str = "0 */2 * * *" # Every 2 hours at 30 minutes past odd hours
67+ curseforge_categories : str = "0 0 * * *" # Daily at 00:00
68+ modrinth_tags : str = "0 0 * * *" # Daily at 00:00
69+ global_statistics : str = "0 0 * * *" # Daily at 00:00
5870
5971class DomainRateLimitModel (BaseModel ):
6072 """域名限速配置 - 令牌桶算法"""
@@ -72,6 +84,8 @@ class ConfigModel(BaseModel):
7284
7385 job_config : JobConfigModel = JobConfigModel ()
7486 interval : JobInterval = JobInterval ()
87+ use_cron : bool = True # 是否使用 CronTrigger,如果为 False 则使用 IntervalTrigger
88+ cron_trigger : CronTrigger = CronTrigger ()
7589
7690 max_workers : int = 8
7791 curseforge_chunk_size : int = 1000
0 commit comments