🔧 Copied self hosted docker apps
This commit is contained in:
parent
36943e27da
commit
abc55d8ed5
209 changed files with 58596 additions and 0 deletions
25
self_host/LibreTranslate/libretranslate/scheduler.py
Normal file
25
self_host/LibreTranslate/libretranslate/scheduler.py
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
import atexit
|
||||
|
||||
from apscheduler.schedulers.background import BackgroundScheduler
|
||||
|
||||
scheduler = None
|
||||
|
||||
def setup(args):
|
||||
from libretranslate.flood import forgive_banned
|
||||
from libretranslate.secret import rotate_secrets
|
||||
|
||||
global scheduler
|
||||
|
||||
if scheduler is None:
|
||||
scheduler = BackgroundScheduler()
|
||||
|
||||
if not args.secondary and args.req_flood_threshold > 0:
|
||||
scheduler.add_job(func=forgive_banned, trigger="interval", minutes=10)
|
||||
|
||||
if not args.secondary and args.api_keys and args.require_api_key_secret:
|
||||
scheduler.add_job(func=rotate_secrets, trigger="interval", minutes=30)
|
||||
|
||||
scheduler.start()
|
||||
|
||||
# Shut down the scheduler when exiting the app
|
||||
atexit.register(lambda: scheduler.shutdown())
|
||||
Loading…
Add table
Add a link
Reference in a new issue